Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: removed external dependencies from miden-objects #1186

Merged
merged 2 commits into from
Mar 3, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions crates/miden-objects/src/account/account_id/account_type.rs
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
use core::{fmt, str::FromStr};

use vm_core::utils::{ByteReader, Deserializable, Serializable};
use vm_processor::DeserializationError;

use crate::errors::AccountIdError;
use crate::{
errors::AccountIdError,
utils::serde::{ByteReader, Deserializable, DeserializationError, Serializable},
};

// ACCOUNT TYPE
// ================================================================================================
Expand Down
9 changes: 2 additions & 7 deletions crates/miden-objects/src/account/account_id/id_prefix.rs
Original file line number Diff line number Diff line change
@@ -1,20 +1,15 @@
use alloc::string::{String, ToString};
use core::fmt;

use miden_crypto::utils::ByteWriter;
use vm_core::{
utils::{ByteReader, Deserializable, Serializable},
Felt,
};
use vm_processor::DeserializationError;

use super::v0;
use crate::{
account::{
account_id::AccountIdPrefixV0, AccountIdV0, AccountIdVersion, AccountStorageMode,
AccountType,
},
errors::AccountIdError,
utils::serde::{ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable},
Felt,
};

// ACCOUNT ID PREFIX
Expand Down
5 changes: 1 addition & 4 deletions crates/miden-objects/src/account/account_id/seed.rs
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
use alloc::vec::Vec;

use vm_core::{Felt, Word};
use vm_processor::Digest;

use crate::{
account::{
account_id::{
Expand All @@ -11,7 +8,7 @@ use crate::{
},
AccountStorageMode, AccountType,
},
AccountError,
AccountError, Digest, Felt, Word,
};

/// Finds and returns a seed suitable for creating an account ID for the specified account type
Expand Down
6 changes: 4 additions & 2 deletions crates/miden-objects/src/account/auth.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,10 @@
// ================================================================================================

use miden_crypto::dsa::rpo_falcon512::{self, SecretKey};
use vm_core::utils::{ByteReader, ByteWriter, Deserializable, Serializable};
use vm_processor::DeserializationError;

use crate::utils::serde::{
ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable,
};

/// Types of secret keys used for signing messages
#[derive(Clone, Debug)]
Expand Down
11 changes: 4 additions & 7 deletions crates/miden-objects/src/account/code/procedure.rs
Original file line number Diff line number Diff line change
@@ -1,13 +1,10 @@
use alloc::string::ToString;

use vm_core::{
utils::{ByteReader, ByteWriter, Deserializable, Serializable},
FieldElement,
};
use vm_processor::DeserializationError;

use super::{Digest, Felt};
use crate::AccountError;
use crate::{
utils::serde::{ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable},
AccountError, FieldElement,
};

// ACCOUNT PROCEDURE INFO
// ================================================================================================
Expand Down
5 changes: 2 additions & 3 deletions crates/miden-objects/src/account/delta/storage.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,14 @@ use alloc::{
vec::Vec,
};

use miden_crypto::{merkle::SmtLeaf, EMPTY_WORD};

use super::{
AccountDeltaError, ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable,
Word,
};
use crate::{
account::{AccountStorage, StorageMap, StorageSlot},
Digest,
crypto::merkle::SmtLeaf,
Digest, EMPTY_WORD,
};
// ACCOUNT STORAGE DELTA
// ================================================================================================
Expand Down
3 changes: 1 addition & 2 deletions crates/miden-objects/src/account/header.rs
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
use alloc::vec::Vec;

use vm_core::utils::{Deserializable, Serializable};

use super::{hash_account, Account, AccountId, Digest, Felt, ZERO};
use crate::utils::serde::{Deserializable, Serializable};

// ACCOUNT HEADER
// ================================================================================================
Expand Down
11 changes: 4 additions & 7 deletions crates/miden-objects/src/account/storage/header.rs
Original file line number Diff line number Diff line change
@@ -1,13 +1,10 @@
use alloc::vec::Vec;

use vm_core::{
utils::{ByteReader, ByteWriter, Deserializable, Serializable},
ZERO,
};
use vm_processor::DeserializationError;

use super::{AccountStorage, Felt, StorageSlot, StorageSlotType, Word};
use crate::AccountError;
use crate::{
utils::serde::{ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable},
AccountError, ZERO,
};

// ACCOUNT STORAGE HEADER
// ================================================================================================
Expand Down
5 changes: 2 additions & 3 deletions crates/miden-objects/src/account/storage/slot/type.rs
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
use alloc::string::{String, ToString};

use vm_core::{
utils::{ByteReader, ByteWriter, Deserializable, Serializable},
use crate::{
utils::serde::{ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable},
Felt, Word, ONE, ZERO,
};
use vm_processor::DeserializationError;

// STORAGE SLOT TYPE
// ================================================================================================
Expand Down
8 changes: 4 additions & 4 deletions crates/miden-objects/src/asset/fungible.rs
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
use alloc::{boxed::Box, string::ToString};
use core::fmt;

use vm_core::utils::{ByteReader, ByteWriter, Deserializable, Serializable};
use vm_processor::DeserializationError;

use super::{is_not_a_non_fungible_asset, AccountType, Asset, AssetError, Felt, Word, ZERO};
use crate::account::{AccountId, AccountIdPrefix};
use crate::{
account::{AccountId, AccountIdPrefix},
utils::serde::{ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable},
};

// FUNGIBLE ASSET
// ================================================================================================
Expand Down
4 changes: 1 addition & 3 deletions crates/miden-objects/src/asset/nonfungible.rs
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
use alloc::{boxed::Box, string::ToString, vec::Vec};
use core::fmt;

use vm_core::{FieldElement, WORD_SIZE};

use super::{AccountIdPrefix, AccountType, Asset, AssetError, Felt, Hasher, Word};
use crate::{
utils::{ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable},
Digest,
Digest, FieldElement, WORD_SIZE,
};

/// Position of the faucet_id inside the [`NonFungibleAsset`] word.
Expand Down
5 changes: 2 additions & 3 deletions crates/miden-objects/src/batch/account_update.rs
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
use alloc::vec::Vec;

use vm_core::utils::{ByteReader, ByteWriter, Deserializable, Serializable};
use vm_processor::{DeserializationError, Digest};

use crate::{
account::{delta::AccountUpdateDetails, AccountId},
errors::BatchAccountUpdateError,
transaction::{ProvenTransaction, TransactionId},
utils::serde::{ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable},
Digest,
};

// BATCH ACCOUNT UPDATE
Expand Down
6 changes: 2 additions & 4 deletions crates/miden-objects/src/batch/input_output_note_tracker.rs
Original file line number Diff line number Diff line change
@@ -1,15 +1,13 @@
use alloc::{collections::BTreeMap, vec::Vec};

use miden_crypto::merkle::MerkleError;
use vm_processor::Digest;

use crate::{
batch::{BatchId, ProvenBatch},
block::{BlockHeader, BlockNumber},
crypto::merkle::MerkleError,
errors::ProposedBatchError,
note::{NoteHeader, NoteId, NoteInclusionProof, Nullifier},
transaction::{ChainMmr, InputNoteCommitment, OutputNote, ProvenTransaction, TransactionId},
ProposedBlockError,
Digest, ProposedBlockError,
};

type BatchInputNotes = Vec<InputNoteCommitment>;
Expand Down
9 changes: 4 additions & 5 deletions crates/miden-objects/src/batch/note_tree.rs
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
use alloc::vec::Vec;

use miden_crypto::{
hash::rpo::RpoDigest,
merkle::{LeafIndex, MerkleError, SimpleSmt},
};

use crate::{
crypto::{
hash::rpo::RpoDigest,
merkle::{LeafIndex, MerkleError, SimpleSmt},
},
note::{compute_note_hash, NoteId, NoteMetadata},
utils::{ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable},
BATCH_NOTE_TREE_DEPTH, EMPTY_WORD,
Expand Down
12 changes: 7 additions & 5 deletions crates/miden-objects/src/block/account_update_witness.rs
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
use alloc::vec::Vec;

use miden_crypto::merkle::MerklePath;
use vm_core::utils::{ByteReader, ByteWriter, Deserializable, Serializable};
use vm_processor::{DeserializationError, Digest};

use crate::{account::delta::AccountUpdateDetails, transaction::TransactionId};
use crate::{
account::delta::AccountUpdateDetails,
crypto::merkle::MerklePath,
transaction::TransactionId,
utils::serde::{ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable},
Digest,
};

/// This type encapsulates essentially three components:
/// - The witness is a merkle path of the initial state commitment of the account before the block
Expand Down
3 changes: 1 addition & 2 deletions crates/miden-objects/src/block/account_witness.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
use miden_crypto::merkle::MerklePath;
use vm_processor::Digest;
use crate::{crypto::merkle::MerklePath, Digest};

// ACCOUNT WITNESS
// ================================================================================================
Expand Down
9 changes: 4 additions & 5 deletions crates/miden-objects/src/block/note_tree.rs
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
use alloc::string::ToString;

use miden_crypto::{
hash::rpo::RpoDigest,
merkle::{LeafIndex, MerkleError, MerklePath, SimpleSmt},
};

use crate::{
batch::BatchNoteTree,
crypto::{
hash::rpo::RpoDigest,
merkle::{LeafIndex, MerkleError, MerklePath, SimpleSmt},
},
note::{compute_note_hash, NoteId, NoteMetadata},
utils::{ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable},
BLOCK_NOTE_TREE_DEPTH, MAX_BATCHES_PER_BLOCK, MAX_OUTPUT_NOTES_PER_BATCH,
Expand Down
7 changes: 4 additions & 3 deletions crates/miden-objects/src/block/nullifier_witness.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
use miden_crypto::merkle::SmtProof;
use vm_core::utils::{ByteReader, ByteWriter, Deserializable, Serializable};
use vm_processor::DeserializationError;
use crate::{
crypto::merkle::SmtProof,
utils::serde::{ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable},
};

// NULLIFIER WITNESS
// ================================================================================================
Expand Down
6 changes: 2 additions & 4 deletions crates/miden-objects/src/block/partial_nullifier_tree.rs
Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
use miden_crypto::merkle::PartialSmt;
use vm_core::{Felt, FieldElement, Word, EMPTY_WORD};
use vm_processor::Digest;

use crate::{
block::{BlockNumber, NullifierWitness},
crypto::merkle::PartialSmt,
errors::NullifierTreeError,
note::Nullifier,
Digest, Felt, FieldElement, Word, EMPTY_WORD,
};

/// The partial sparse merkle tree containing the nullifiers of consumed notes.
Expand Down
9 changes: 2 additions & 7 deletions crates/miden-objects/src/block/proposed_block.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,6 @@ use alloc::{
vec::Vec,
};

use vm_core::{
utils::{ByteReader, ByteWriter, Deserializable, Serializable},
EMPTY_WORD,
};
use vm_processor::{DeserializationError, Digest};

use crate::{
account::{delta::AccountUpdateDetails, AccountId},
batch::{BatchAccountUpdate, BatchId, InputOutputNoteTracker, ProvenBatch},
Expand All @@ -19,7 +13,8 @@ use crate::{
errors::ProposedBlockError,
note::{NoteId, Nullifier},
transaction::{ChainMmr, InputNoteCommitment, OutputNote, TransactionId},
MAX_BATCHES_PER_BLOCK,
utils::serde::{ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable},
Digest, EMPTY_WORD, MAX_BATCHES_PER_BLOCK,
};

// PROPOSED BLOCK
Expand Down
8 changes: 6 additions & 2 deletions crates/miden-objects/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,15 @@ pub use errors::{
TransactionScriptError,
};
pub use miden_crypto::hash::rpo::{Rpo256 as Hasher, RpoDigest as Digest};
pub use vm_core::{Felt, FieldElement, StarkField, Word, EMPTY_WORD, ONE, WORD_SIZE, ZERO};
pub use vm_core::{
mast::{MastForest, MastNodeId},
prettier::PrettyPrint,
Felt, FieldElement, StarkField, Word, EMPTY_WORD, ONE, WORD_SIZE, ZERO,
};

pub mod assembly {
pub use assembly::{
mast, Assembler, AssemblyError, DefaultSourceManager, KernelLibrary, Library,
mast, Assembler, AssemblyError, Compile, DefaultSourceManager, KernelLibrary, Library,
LibraryNamespace, LibraryPath, SourceManager, Version,
};
}
Expand Down
9 changes: 5 additions & 4 deletions crates/miden-objects/src/note/assets.rs
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
use alloc::vec::Vec;

use super::{
Asset, ByteReader, ByteWriter, Deserializable, DeserializationError, Digest, Felt, Hasher,
NoteError, Serializable, Word, WORD_SIZE, ZERO,
use crate::{
asset::Asset,
errors::NoteError,
utils::serde::{ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable},
Digest, Felt, Hasher, Word, MAX_ASSETS_PER_NOTE, WORD_SIZE, ZERO,
};
use crate::MAX_ASSETS_PER_NOTE;

// NOTE ASSETS
// ================================================================================================
Expand Down
8 changes: 4 additions & 4 deletions crates/miden-objects/src/note/details.rs
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
use miden_crypto::{
utils::{ByteReader, ByteWriter, Deserializable, Serializable},
Word,
};
use vm_processor::DeserializationError;

use super::{NoteAssets, NoteId, NoteInputs, NoteRecipient, NoteScript, Nullifier};
use crate::{
utils::serde::{ByteReader, ByteWriter, Deserializable, Serializable},
Word,
};

// NOTE DETAILS
// ================================================================================================
Expand Down
4 changes: 1 addition & 3 deletions crates/miden-objects/src/note/execution_hint.rs
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
// NOTE EXECUTION HINT
// ================================================================================================

use vm_core::Felt;

use crate::{block::BlockNumber, NoteError};
use crate::{block::BlockNumber, Felt, NoteError};

/// Specifies the conditions under which a note is ready to be consumed.
/// These conditions are meant to be encoded in the note script as well.
Expand Down
8 changes: 4 additions & 4 deletions crates/miden-objects/src/note/inputs.rs
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
use alloc::vec::Vec;

use super::{
ByteReader, ByteWriter, Deserializable, DeserializationError, Digest, Felt, Hasher, NoteError,
Serializable, WORD_SIZE, ZERO,
use crate::{
errors::NoteError,
utils::serde::{ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable},
Digest, Felt, Hasher, MAX_INPUTS_PER_NOTE, WORD_SIZE, ZERO,
};
use crate::MAX_INPUTS_PER_NOTE;

// NOTE INPUTS
// ================================================================================================
Expand Down
2 changes: 1 addition & 1 deletion crates/miden-objects/src/note/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ use miden_crypto::{
};
use vm_processor::DeserializationError;

use crate::{account::AccountId, asset::Asset, Digest, Felt, Hasher, NoteError, WORD_SIZE, ZERO};
use crate::{account::AccountId, Digest, Felt, Hasher, NoteError, WORD_SIZE, ZERO};

mod assets;
pub use assets::NoteAssets;
Expand Down
Loading
Loading