From ec1de03ce7e6417e901e71d1aab390e0a59848c9 Mon Sep 17 00:00:00 2001 From: Emirhan-Cavusoglu-sftw Date: Wed, 22 Jan 2025 13:42:09 +0300 Subject: [PATCH 1/4] [Feature]: Normalize Contract struct Docs --- contracts/src/token/erc20/mod.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/src/token/erc20/mod.rs b/contracts/src/token/erc20/mod.rs index cf20cfa7d..fbe17bec3 100644 --- a/contracts/src/token/erc20/mod.rs +++ b/contracts/src/token/erc20/mod.rs @@ -124,7 +124,7 @@ impl MethodError for Error { } } -/// State of an `Erc20` token. +/// State of an [`Erc20`] token. #[storage] pub struct Erc20 { /// Maps users to balances. From adc4fb051edec2537245d60bdb6a6a5cdc5cece3 Mon Sep 17 00:00:00 2001 From: Emirhan-Cavusoglu-sftw Date: Wed, 22 Jan 2025 16:22:39 +0300 Subject: [PATCH 2/4] [Feature]: Normalize Contract struct Docs --- contracts/src/access/control.rs | 2 +- contracts/src/access/ownable.rs | 2 +- contracts/src/access/ownable_two_step.rs | 2 +- contracts/src/token/erc20/extensions/capped.rs | 2 +- contracts/src/utils/nonces.rs | 2 +- contracts/src/utils/pausable.rs | 2 +- contracts/src/utils/structs/bitmap.rs | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/contracts/src/access/control.rs b/contracts/src/access/control.rs index 6942a1d7a..f1141ee77 100644 --- a/contracts/src/access/control.rs +++ b/contracts/src/access/control.rs @@ -114,7 +114,7 @@ pub struct RoleData { pub admin_role: StorageFixedBytes<32>, } -/// State of an `AccessControl` contract. +/// State of an [`AccessControl`] contract. #[storage] pub struct AccessControl { /// Role identifier -> Role information. diff --git a/contracts/src/access/ownable.rs b/contracts/src/access/ownable.rs index 2ad282c53..0d60144c8 100644 --- a/contracts/src/access/ownable.rs +++ b/contracts/src/access/ownable.rs @@ -65,7 +65,7 @@ impl MethodError for Error { } } -/// State of an `Ownable` contract. +/// State of an [`Ownable`] contract. #[storage] pub struct Ownable { /// The current owner of this contract. diff --git a/contracts/src/access/ownable_two_step.rs b/contracts/src/access/ownable_two_step.rs index 8dca87d9f..e6e780e58 100644 --- a/contracts/src/access/ownable_two_step.rs +++ b/contracts/src/access/ownable_two_step.rs @@ -57,7 +57,7 @@ pub enum Error { Ownable(OwnableError), } -/// State of an `Ownable2Step` contract. +/// State of an [`Ownable2Step`] contract. #[storage] pub struct Ownable2Step { /// [`Ownable`] contract. diff --git a/contracts/src/token/erc20/extensions/capped.rs b/contracts/src/token/erc20/extensions/capped.rs index 6b8a23c96..52557c9e3 100644 --- a/contracts/src/token/erc20/extensions/capped.rs +++ b/contracts/src/token/erc20/extensions/capped.rs @@ -45,7 +45,7 @@ pub enum Error { InvalidCap(ERC20InvalidCap), } -/// State of a Capped Contract. +/// State of a [`Capped`] Contract. #[storage] pub struct Capped { /// A cap to the supply of tokens. diff --git a/contracts/src/utils/nonces.rs b/contracts/src/utils/nonces.rs index 4a588af5f..3a6063f50 100644 --- a/contracts/src/utils/nonces.rs +++ b/contracts/src/utils/nonces.rs @@ -35,7 +35,7 @@ pub enum Error { InvalidAccountNonce(InvalidAccountNonce), } -/// State of a Nonces Contract. +/// State of a [`Nonces`] Contract. #[storage] pub struct Nonces { /// Mapping from address to its nonce. diff --git a/contracts/src/utils/pausable.rs b/contracts/src/utils/pausable.rs index 60e369628..3777edef3 100644 --- a/contracts/src/utils/pausable.rs +++ b/contracts/src/utils/pausable.rs @@ -64,7 +64,7 @@ pub enum Error { ExpectedPause(ExpectedPause), } -/// State of a Pausable Contract. +/// State of a [`Pausable`] Contract. #[storage] pub struct Pausable { /// Indicates whether the contract is `Paused`. diff --git a/contracts/src/utils/structs/bitmap.rs b/contracts/src/utils/structs/bitmap.rs index 40f808a18..7bf418961 100644 --- a/contracts/src/utils/structs/bitmap.rs +++ b/contracts/src/utils/structs/bitmap.rs @@ -22,7 +22,7 @@ use stylus_sdk::{ const ONE: U256 = uint!(0x1_U256); const HEX_FF: U256 = uint!(0xff_U256); -/// State of bit map. +/// State of [`BitMap`]. #[storage] pub struct BitMap { /// Inner laying mapping. From e9a32d2f22eea86a3d8459465d220003fdfb02d8 Mon Sep 17 00:00:00 2001 From: Emirhan-Cavusoglu-sftw Date: Wed, 22 Jan 2025 23:02:54 +0300 Subject: [PATCH 3/4] [Feature]: Normalize Contract struct Docs --- contracts/src/access/control.rs | 2 +- contracts/src/token/erc1155/extensions/uri_storage.rs | 2 +- contracts/src/token/erc20/extensions/metadata.rs | 2 +- contracts/src/token/erc20/extensions/permit.rs | 2 +- contracts/src/token/erc721/extensions/enumerable.rs | 2 +- contracts/src/token/erc721/extensions/metadata.rs | 2 +- contracts/src/token/erc721/extensions/uri_storage.rs | 2 +- contracts/src/utils/metadata.rs | 2 +- contracts/src/utils/structs/checkpoints/mod.rs | 4 ++-- 9 files changed, 10 insertions(+), 10 deletions(-) diff --git a/contracts/src/access/control.rs b/contracts/src/access/control.rs index f1141ee77..3b97a0a22 100644 --- a/contracts/src/access/control.rs +++ b/contracts/src/access/control.rs @@ -105,7 +105,7 @@ pub enum Error { BadConfirmation(AccessControlBadConfirmation), } -/// Information about a specific role. +/// Information about a specific [`RoleData`]. #[storage] pub struct RoleData { /// Whether an account is member of a certain role. diff --git a/contracts/src/token/erc1155/extensions/uri_storage.rs b/contracts/src/token/erc1155/extensions/uri_storage.rs index 0c62d875d..41c59528a 100644 --- a/contracts/src/token/erc1155/extensions/uri_storage.rs +++ b/contracts/src/token/erc1155/extensions/uri_storage.rs @@ -12,7 +12,7 @@ use stylus_sdk::{ use super::metadata_uri::{IErc1155MetadataUri, URI}; -/// Uri Storage. +/// [`Erc1155UriStorage`] Storage. #[storage] pub struct Erc1155UriStorage { /// Optional base URI. diff --git a/contracts/src/token/erc20/extensions/metadata.rs b/contracts/src/token/erc20/extensions/metadata.rs index 3e7d0db99..a80cd5231 100644 --- a/contracts/src/token/erc20/extensions/metadata.rs +++ b/contracts/src/token/erc20/extensions/metadata.rs @@ -15,7 +15,7 @@ use alloc::vec::Vec; use crate::utils::Metadata; -/// Metadata of the [`super::super::Erc20`] token. +/// [`Erc20Metadata`] of the [`super::super::Erc20`] token. /// /// It has hardcoded `decimals` to [`DEFAULT_DECIMALS`]. #[storage] diff --git a/contracts/src/token/erc20/extensions/permit.rs b/contracts/src/token/erc20/extensions/permit.rs index d46dd8f4d..32e6c8fc5 100644 --- a/contracts/src/token/erc20/extensions/permit.rs +++ b/contracts/src/token/erc20/extensions/permit.rs @@ -73,7 +73,7 @@ pub enum Error { ECDSA(ecdsa::Error), } -/// State of a Permit Contract. +/// State of a [`Erc20Permit`] Contract. #[storage] pub struct Erc20Permit { /// ERC-20 contract. diff --git a/contracts/src/token/erc721/extensions/enumerable.rs b/contracts/src/token/erc721/extensions/enumerable.rs index 34e3dc901..6ca90cd2b 100644 --- a/contracts/src/token/erc721/extensions/enumerable.rs +++ b/contracts/src/token/erc721/extensions/enumerable.rs @@ -60,7 +60,7 @@ pub enum Error { EnumerableForbiddenBatchMint(ERC721EnumerableForbiddenBatchMint), } -/// State of an Enumerable extension. +/// State of an [`Enumerable`] extension. #[storage] pub struct Erc721Enumerable { /// Maps owners to a mapping of indices to tokens ids. diff --git a/contracts/src/token/erc721/extensions/metadata.rs b/contracts/src/token/erc721/extensions/metadata.rs index cc417c674..91d7ecf01 100644 --- a/contracts/src/token/erc721/extensions/metadata.rs +++ b/contracts/src/token/erc721/extensions/metadata.rs @@ -16,7 +16,7 @@ use crate::{ utils::{introspection::erc165::IErc165, Metadata}, }; -/// Metadata of an [`crate::token::erc721::Erc721`] token. +/// [`Erc721Metadata`] of an [`crate::token::erc721::Erc721`] token. #[storage] pub struct Erc721Metadata { /// Common Metadata. diff --git a/contracts/src/token/erc721/extensions/uri_storage.rs b/contracts/src/token/erc721/extensions/uri_storage.rs index 96fdc33a4..14024cfca 100644 --- a/contracts/src/token/erc721/extensions/uri_storage.rs +++ b/contracts/src/token/erc721/extensions/uri_storage.rs @@ -33,7 +33,7 @@ mod sol { } } -/// Uri Storage. +/// [`Erc721UriStorage`] Storage. #[storage] pub struct Erc721UriStorage { /// Optional mapping for token URIs. diff --git a/contracts/src/utils/metadata.rs b/contracts/src/utils/metadata.rs index 0365bf5a7..c54bac527 100644 --- a/contracts/src/utils/metadata.rs +++ b/contracts/src/utils/metadata.rs @@ -5,7 +5,7 @@ use stylus_sdk::{ prelude::storage, storage::StorageString, stylus_proc::public, }; -/// Metadata of the token. +/// [`Metadata`] of the token. #[storage] pub struct Metadata { /// Token name. diff --git a/contracts/src/utils/structs/checkpoints/mod.rs b/contracts/src/utils/structs/checkpoints/mod.rs index 81d522f58..14cb713a8 100644 --- a/contracts/src/utils/structs/checkpoints/mod.rs +++ b/contracts/src/utils/structs/checkpoints/mod.rs @@ -47,7 +47,7 @@ impl MethodError for Error { } } -/// State of the checkpoint library contract. +/// State of the [`Checkpoint`] library contract. #[storage] pub struct Trace { /// Stores checkpoints in a dynamic array sorted by key. @@ -55,7 +55,7 @@ pub struct Trace { pub _checkpoints: StorageVec>, } -/// State of a single checkpoint. +/// State of a single [`Checkpoint`]. #[storage] pub struct Checkpoint { /// The key of the checkpoint. Used as a sorting key. From ca77b421624aa0a6f6201cf69b631d50db4e9bc3 Mon Sep 17 00:00:00 2001 From: Daniel Bigos Date: Wed, 5 Feb 2025 07:48:26 +0100 Subject: [PATCH 4/4] docs: polish struct docs --- contracts/src/access/control.rs | 4 +++- contracts/src/finance/vesting_wallet.rs | 2 +- contracts/src/token/erc1155/extensions/metadata_uri.rs | 2 +- contracts/src/token/erc1155/extensions/supply.rs | 4 ++-- contracts/src/token/erc1155/extensions/uri_storage.rs | 2 +- contracts/src/token/erc20/extensions/flash_mint.rs | 2 +- contracts/src/token/erc20/extensions/metadata.rs | 6 ++---- contracts/src/token/erc20/extensions/permit.rs | 8 ++++---- contracts/src/token/erc20/utils/safe_erc20.rs | 2 +- contracts/src/token/erc721/extensions/consecutive.rs | 6 +++--- contracts/src/token/erc721/extensions/enumerable.rs | 2 +- contracts/src/token/erc721/extensions/metadata.rs | 4 ++-- contracts/src/token/erc721/extensions/uri_storage.rs | 2 +- contracts/src/utils/metadata.rs | 2 +- contracts/src/utils/structs/bitmap.rs | 2 +- contracts/src/utils/structs/checkpoints/mod.rs | 4 ++-- lib/crypto/src/arithmetic/uint.rs | 2 +- 17 files changed, 28 insertions(+), 28 deletions(-) diff --git a/contracts/src/access/control.rs b/contracts/src/access/control.rs index e18758438..9694ae722 100644 --- a/contracts/src/access/control.rs +++ b/contracts/src/access/control.rs @@ -105,7 +105,9 @@ pub enum Error { BadConfirmation(AccessControlBadConfirmation), } -/// Information about a specific [`RoleData`]. +/// State of a [`RoleData`] contract. +/// +/// Stores information about a specific role. #[storage] pub struct RoleData { /// Whether an account is member of a certain role. diff --git a/contracts/src/finance/vesting_wallet.rs b/contracts/src/finance/vesting_wallet.rs index 3d6635ee9..318c8c762 100644 --- a/contracts/src/finance/vesting_wallet.rs +++ b/contracts/src/finance/vesting_wallet.rs @@ -95,7 +95,7 @@ pub enum Error { InvalidToken(InvalidToken), } -/// State of the [`VestingWallet`] Contract. +/// State of a [`VestingWallet`] Contract. #[storage] pub struct VestingWallet { /// [`Ownable`] contract. diff --git a/contracts/src/token/erc1155/extensions/metadata_uri.rs b/contracts/src/token/erc1155/extensions/metadata_uri.rs index e61d5ff35..e9bdb4b51 100644 --- a/contracts/src/token/erc1155/extensions/metadata_uri.rs +++ b/contracts/src/token/erc1155/extensions/metadata_uri.rs @@ -31,7 +31,7 @@ mod sol { } } -/// URI Metadata of an [`crate::token::erc1155::Erc1155`] token. +/// State of an [`Erc1155MetadataUri`] contract. #[storage] pub struct Erc1155MetadataUri { /// Used as the URI for all token types by relying on ID substitution, diff --git a/contracts/src/token/erc1155/extensions/supply.rs b/contracts/src/token/erc1155/extensions/supply.rs index 61e90d9cc..d85ff7d49 100644 --- a/contracts/src/token/erc1155/extensions/supply.rs +++ b/contracts/src/token/erc1155/extensions/supply.rs @@ -27,10 +27,10 @@ use crate::{ utils::math::storage::{AddAssignChecked, SubAssignUnchecked}, }; -/// State of an [`Erc1155Supply`] token. +/// State of an [`Erc1155Supply`] contract. #[storage] pub struct Erc1155Supply { - /// ERC-1155 contract storage. + /// [`Erc1155`] contract. pub erc1155: Erc1155, /// Mapping from token id to total supply. #[allow(clippy::used_underscore_binding)] diff --git a/contracts/src/token/erc1155/extensions/uri_storage.rs b/contracts/src/token/erc1155/extensions/uri_storage.rs index cf2b0d65d..d2370f3aa 100644 --- a/contracts/src/token/erc1155/extensions/uri_storage.rs +++ b/contracts/src/token/erc1155/extensions/uri_storage.rs @@ -12,7 +12,7 @@ use stylus_sdk::{ use super::metadata_uri::{IErc1155MetadataUri, URI}; -/// [`Erc1155UriStorage`] Storage. +/// State of an [`Erc1155UriStorage`] contract. #[storage] pub struct Erc1155UriStorage { /// Optional base URI. diff --git a/contracts/src/token/erc20/extensions/flash_mint.rs b/contracts/src/token/erc20/extensions/flash_mint.rs index 9ae9d4555..81700c740 100644 --- a/contracts/src/token/erc20/extensions/flash_mint.rs +++ b/contracts/src/token/erc20/extensions/flash_mint.rs @@ -113,7 +113,7 @@ mod borrower { } } -/// State of the [`Erc20FlashMint`] Contract. +/// State of an [`Erc20FlashMint`] Contract. #[storage] pub struct Erc20FlashMint { /// Fee applied when doing flash loans. diff --git a/contracts/src/token/erc20/extensions/metadata.rs b/contracts/src/token/erc20/extensions/metadata.rs index 97fe7b0af..b0c46c37d 100644 --- a/contracts/src/token/erc20/extensions/metadata.rs +++ b/contracts/src/token/erc20/extensions/metadata.rs @@ -15,12 +15,10 @@ use alloc::vec::Vec; use crate::utils::Metadata; -/// [`Erc20Metadata`] of the [`super::super::Erc20`] token. -/// -/// It has hardcoded `decimals` to [`DEFAULT_DECIMALS`]. +/// State of an [`Erc20Metadata`] contract. #[storage] pub struct Erc20Metadata { - /// Common Metadata. + /// [`Metadata`] contract. #[allow(clippy::used_underscore_binding)] pub _metadata: Metadata, } diff --git a/contracts/src/token/erc20/extensions/permit.rs b/contracts/src/token/erc20/extensions/permit.rs index 96a553084..800a29734 100644 --- a/contracts/src/token/erc20/extensions/permit.rs +++ b/contracts/src/token/erc20/extensions/permit.rs @@ -73,14 +73,14 @@ pub enum Error { ECDSA(ecdsa::Error), } -/// State of a [`Erc20Permit`] Contract. +/// State of an [`Erc20Permit`] Contract. #[storage] pub struct Erc20Permit { - /// ERC-20 contract. + /// [`Erc20`] contract. pub erc20: Erc20, - /// Nonces contract. + /// [`Nonces`] contract. pub nonces: Nonces, - /// EIP-712 contract. Must implement [`IEip712`] trait. + /// Contract implementing [`IEip712`] trait. pub eip712: T, } diff --git a/contracts/src/token/erc20/utils/safe_erc20.rs b/contracts/src/token/erc20/utils/safe_erc20.rs index 63a52bb0e..1594dbd9d 100644 --- a/contracts/src/token/erc20/utils/safe_erc20.rs +++ b/contracts/src/token/erc20/utils/safe_erc20.rs @@ -85,7 +85,7 @@ mod token { } } -/// State of the [`SafeErc20`] Contract. +/// State of a [`SafeErc20`] Contract. #[storage] pub struct SafeErc20 {} diff --git a/contracts/src/token/erc721/extensions/consecutive.rs b/contracts/src/token/erc721/extensions/consecutive.rs index a77ed5317..1dd99bc59 100644 --- a/contracts/src/token/erc721/extensions/consecutive.rs +++ b/contracts/src/token/erc721/extensions/consecutive.rs @@ -56,12 +56,12 @@ type StorageU96 = ::KeyStorage; /// State of an [`Erc721Consecutive`] token. #[storage] pub struct Erc721Consecutive { - /// Erc721 contract storage. + /// [`Erc721`] contract. pub erc721: Erc721, - /// Checkpoint library contract for sequential ownership. + /// [`Trace`] contract for sequential ownership. #[allow(clippy::used_underscore_binding)] pub _sequential_ownership: Trace, - /// BitMap library contract for sequential burn of tokens. + /// [`BitMap`] contract for sequential burn of tokens. #[allow(clippy::used_underscore_binding)] pub _sequential_burn: BitMap, /// Used to offset the first token id in `next_consecutive_id` calculation. diff --git a/contracts/src/token/erc721/extensions/enumerable.rs b/contracts/src/token/erc721/extensions/enumerable.rs index 9419571fa..1a62273e1 100644 --- a/contracts/src/token/erc721/extensions/enumerable.rs +++ b/contracts/src/token/erc721/extensions/enumerable.rs @@ -60,7 +60,7 @@ pub enum Error { EnumerableForbiddenBatchMint(ERC721EnumerableForbiddenBatchMint), } -/// State of an [`Enumerable`] extension. +/// State of an [`Erc721Enumerable`] contract. #[storage] pub struct Erc721Enumerable { /// Maps owners to a mapping of indices to tokens ids. diff --git a/contracts/src/token/erc721/extensions/metadata.rs b/contracts/src/token/erc721/extensions/metadata.rs index e914785bc..862c44e51 100644 --- a/contracts/src/token/erc721/extensions/metadata.rs +++ b/contracts/src/token/erc721/extensions/metadata.rs @@ -16,10 +16,10 @@ use crate::{ utils::{introspection::erc165::IErc165, Metadata}, }; -/// [`Erc721Metadata`] of an [`crate::token::erc721::Erc721`] token. +/// State of an [`Erc721Metadata`] contract. #[storage] pub struct Erc721Metadata { - /// Common Metadata. + /// [`Metadata`] contract. #[allow(clippy::used_underscore_binding)] pub _metadata: Metadata, /// Base URI for tokens. diff --git a/contracts/src/token/erc721/extensions/uri_storage.rs b/contracts/src/token/erc721/extensions/uri_storage.rs index 2c2a80c89..8b3b6618f 100644 --- a/contracts/src/token/erc721/extensions/uri_storage.rs +++ b/contracts/src/token/erc721/extensions/uri_storage.rs @@ -33,7 +33,7 @@ mod sol { } } -/// [`Erc721UriStorage`] Storage. +/// State of an [`Erc721UriStorage`] contract. #[storage] pub struct Erc721UriStorage { /// Optional mapping for token URIs. diff --git a/contracts/src/utils/metadata.rs b/contracts/src/utils/metadata.rs index c54bac527..6389ccfcc 100644 --- a/contracts/src/utils/metadata.rs +++ b/contracts/src/utils/metadata.rs @@ -5,7 +5,7 @@ use stylus_sdk::{ prelude::storage, storage::StorageString, stylus_proc::public, }; -/// [`Metadata`] of the token. +/// State of a [`Metadata`] contract. #[storage] pub struct Metadata { /// Token name. diff --git a/contracts/src/utils/structs/bitmap.rs b/contracts/src/utils/structs/bitmap.rs index 7bf418961..23cf3654d 100644 --- a/contracts/src/utils/structs/bitmap.rs +++ b/contracts/src/utils/structs/bitmap.rs @@ -22,7 +22,7 @@ use stylus_sdk::{ const ONE: U256 = uint!(0x1_U256); const HEX_FF: U256 = uint!(0xff_U256); -/// State of [`BitMap`]. +/// State of a [`BitMap`] contract. #[storage] pub struct BitMap { /// Inner laying mapping. diff --git a/contracts/src/utils/structs/checkpoints/mod.rs b/contracts/src/utils/structs/checkpoints/mod.rs index 57bb489ae..d902db859 100644 --- a/contracts/src/utils/structs/checkpoints/mod.rs +++ b/contracts/src/utils/structs/checkpoints/mod.rs @@ -47,7 +47,7 @@ impl MethodError for Error { } } -/// State of the [`Checkpoint`] library contract. +/// State of a [`Trace`] contract. #[storage] pub struct Trace { /// Stores checkpoints in a dynamic array sorted by key. @@ -55,7 +55,7 @@ pub struct Trace { pub _checkpoints: StorageVec>, } -/// State of a single [`Checkpoint`]. +/// State of a [`Checkpoint`] contract. #[storage] pub struct Checkpoint { /// The key of the checkpoint. Used as a sorting key. diff --git a/lib/crypto/src/arithmetic/uint.rs b/lib/crypto/src/arithmetic/uint.rs index 726ccfef3..29bd73fc3 100644 --- a/lib/crypto/src/arithmetic/uint.rs +++ b/lib/crypto/src/arithmetic/uint.rs @@ -27,7 +27,7 @@ use crate::{ /// Stack-allocated big unsigned integer. /// -/// Generic over number [`N`] of [`Limb`]s. +/// Generic over number `N` of [`Limb`]s. #[derive(Copy, Clone, PartialEq, Eq, Hash, Zeroize)] pub struct Uint { pub(crate) limbs: Limbs,