使用 \\! 时记录 Substrate Pallet Storagemap 项时出错
Error documenting Substrate Pallet Storagemap tems when using `\\!`
我在我的托盘实现中添加了一些关于 lib.rs
的文档,如下所示
//! ## Genomes
//! * Key 1 -> AccountId + GenomeHash
//! * Value -> Genome structure
//!
//! ```
//! use frame_support::pallet_prelude::StorageMap;
//! use frame_support::Blake2_128Concat;
//! use pallet_genomes::Config;
//!
//! #[pallet::storage]
//! #[pallet::getter(fn get_genomes)]
//! pub(super) type Genomes<T: Config> =
//! StorageMap<_, Blake2_128Concat, (Vec<u8>, T::AccountId), Vec<Genes<T>>>;
//! ```
虽然这会在我执行时抛出错误 cargo run test
它会抛出以下错误
#[pallet::storage]
| ^^^^^^ use of undeclared crate or module `pallet`
StorageMap<_, Blake2_128Concat, (Vec<u8>, T::AccountId), Vec<Genes<T>>>;
| ^ not allowed in type signatures
pub(super) type Genomes<T: Config>
^^^^^ there are too many leading `super` keywords
如何解决这个错误?
正如评论所建议的那样,您需要导入您在文档评论中使用的内容(它不使用文件中已有的 use
语句)。
use pallet::*;
(如果您不希望它出现在文档中,可以在前面加上 #
前缀)。
我在我的托盘实现中添加了一些关于 lib.rs
的文档,如下所示
//! ## Genomes
//! * Key 1 -> AccountId + GenomeHash
//! * Value -> Genome structure
//!
//! ```
//! use frame_support::pallet_prelude::StorageMap;
//! use frame_support::Blake2_128Concat;
//! use pallet_genomes::Config;
//!
//! #[pallet::storage]
//! #[pallet::getter(fn get_genomes)]
//! pub(super) type Genomes<T: Config> =
//! StorageMap<_, Blake2_128Concat, (Vec<u8>, T::AccountId), Vec<Genes<T>>>;
//! ```
虽然这会在我执行时抛出错误 cargo run test
它会抛出以下错误
#[pallet::storage]
| ^^^^^^ use of undeclared crate or module `pallet`
StorageMap<_, Blake2_128Concat, (Vec<u8>, T::AccountId), Vec<Genes<T>>>;
| ^ not allowed in type signatures
pub(super) type Genomes<T: Config>
^^^^^ there are too many leading `super` keywords
如何解决这个错误?
正如评论所建议的那样,您需要导入您在文档评论中使用的内容(它不使用文件中已有的 use
语句)。
use pallet::*;
(如果您不希望它出现在文档中,可以在前面加上 #
前缀)。