# Tokens-Contract **Repository Path**: lang_junnan_admin/Tokens-Contract ## Basic Information - **Project Name**: Tokens-Contract - **Description**: 1、ERC721 是以太坊上的一种智能合约标准, 用于创建不可替代代币(Non-Fungible Tokens,NFTs)。 每个 ERC721 代币都是独一无二的,可以代表数字化资产的唯一性 2、基于ERC721标准 研发的代币 支持 空投转移 销毁 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-04-05 - **Last Updated**: 2024-04-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Insurance-contract #### 介绍 1、ERC721 是以太坊上的一种智能合约标准, 用于创建不可替代代币(Non-Fungible Tokens,NFTs)。 每个 ERC721 代币都是独一无二的,可以代表数字化资产的唯一性 2、基于ERC721标准 研发的代币 支持 空投转移 销毁 #### 软件架构 contracts/:存放Solidity智能合约的目录。内容是代币 tests/:存放测试文件的目录, migrations/:存放部署脚本的目录, scripts/:存放其他辅助脚本的目录 build/:自动生成的目录,包含编译后的合约文件(如.json和.abi文件)。 node_modules/:包含项目依赖的Node.js模块。 #### 使用说明 1. 发布智能合约需要有一定的gas费,就是交易手续费,所以需要有钱包哦。 2. 钱包可以使用谷歌的小狐狸 metamask #### contracts目录文件描述 1、AbstractRoyalties.sol: 用于处理货币交易中的版税(royalties)相关逻辑。 2、AddressUpgradeable.sol: 一个库(library)文件,提供了对地址的操作函数,如判断地址是否为合约、发送以太币等。 3、ContextUpgradeable.sol: 一个上下文合约,提供了当前合约执行的上下文信息,如消息发送者、合约地址等。 4、ECDSAUpgradeable.sol: 包含了 ECDSA 相关的函数,用于以太坊上的签名验证等操作。 5、EIP712Upgradeable.sol: 提供了 EIP712 相关的功能,用于以太坊上的消息签名验证。 6、EnumerableMapUpgradeable.sol: 提供了一个可枚举的映射数据结构。 7、EnumerableSetUpgradeable.sol: 提供了一个可枚举的集合数据结构。 8、ERC165Upgradeable.sol: 实现了 ERC165 标准,用于检查合约是否支持特定的接口。 9、ERC721Base.sol: ERC721 标准的基础实现。 10、ERC721BurnableUpgradeable.sol: ERC721 标准的可燃烧(burnable)实现。 11、ERC721DefaultApproval.sol: ERC721 标准的默认批准(approval)实现。 12、ERC721Lazy.sol: ERC721 标准的延迟加载(lazy minting)实现。 13、ERC721Lyrra.sol: ERC721 标准的 Lyrra 实现,ERC721 扩展。 14、ERC721Upgradeable.sol: ERC721 标准的升级版实现。 15、ERC1271.sol: ERC1271 标准的实现,用于以太坊上的签名验证。 16、ERC1271Validator.sol: ERC1271 标准的验证器实现。 17、HasContractURI.sol: 提供了合约 URI 的功能,用于指定合约的元数据信息。 18、IERC20.sol: ERC20 标准的接口定义。 19、IERC165Upgradeable.sol: ERC165 标准的接口定义。 20、IERC721EnumerableUpgradeable.sol: ERC721 可枚举接口的定义。 21、IERC721LazyMint.sol: ERC721 延迟加载接口的定义。 22、IERC721MetadataUpgradeable.sol: ERC721 元数据接口的定义。 23、IERC721ReceiverUpgradeable.sol: ERC721 接收器接口的定义。 24、IERC721Upgradeable.sol: ERC721 标准的接口定义。 25、Initializable.sol: 用于实现合约初始化的逻辑。 26、LibERC721LazyMint.sol: ERC721延迟加载的库文件,包含了一些相关的函数实现。 27、LibPart.sol: ERC2981 标准中的部分(part)结构定义。 28、LibRoyaltiesV2.sol: ERC2981 标准中的版税(royalties)相关的库文件。 29、Mint721Validator.sol: 用于验证 ERC721 智能合约的 Mint 操作的合约。 30、OwnableUpgradeable.sol: ERC721 标准的拥有者权限实现。 31、Roles.sol: 实现了角色授权的功能。 32、RoyaltiesV2.sol: ERC2981 标准的版税(royalties)实现。 33、RoyaltiesV2Impl.sol: ERC2981 标准的版税(royalties)实现的具体实现。 34、RoyaltiesV2Upgradeable.sol: ERC2981 标准的版税(royalties)实现的升级版。 35、SafeMathUpgradeable.sol: 安全的数学操作库文件,用于避免整数溢出等问题。 36、SignerRole.sol: 实现了签名者角色授权的功能。 37、Sku.sol: SKU(库存单位)的实现,用于标识和管理商品。 38、StringsUpgradeable.sol: 字符串操作的升级版实现。