• EIP-3664合约研究笔记06--text功能分析


    在 ERC3664.sol 中,存在着_texts数据,本文分析来龙去脉和用途。
    // attrId => tokenId => text
    mapping(uint256 => mapping(uint256 => bytes)) public _texts;
    在claim铸造NFT时,内部会添加属性,会设置属性的text:
    在 Metacore.sol  claim( name)    输入参数name=“metacore"
         attach(_curTokenId, METANAME, 1, bytes(name), true);
             if (text.length > 0) {
                _texts[attrId][tokenId] = text;    // 实际上_texts[1][1] = "metacore"
             }
    读取text
    function textOf(uint256 tokenId, uint256 attrId) public view virtual override  
    returns (bytes memory) {
            return _texts[attrId][tokenId];
    }
    这个textof函数是 IERC3664.sol接口规定的方法,必须予以实现。
    在读取属性时会调用textof,得到属性的text信息
    getAttributes()
        data = abi.encodePacked(
                    '{"trait_type":"',
                    symbol(id),
                    '","value":"',
                    textOf(tokenId, id),
                    '"}'
                );
    Metacore.sol 示例:
    "attributes":[
            {
                "trait_type":"Metaname",
                "value":"metacore"
            },
            {
                "trait_type":"Legoot V2",
                "value":"1"
            },
            {
                "trait_type":"SYNTHETIC",
                "value":"true"
            }
        ]
    Legoot.sol合约示例:
    "attributes":[
            {
                "trait_type":"WEAPON NAME",
                "value":"Quarterstaff"
            },
            {
                "trait_type":"WEAPON ID",
                "value":"8001"
            },
            {
                "trait_type":"CHEST NAME",
                "value":"Silk Robe"
            },
            {
                "trait_type":"CHEST ID",
                "value":"8002"
            },
    【总结】
    感觉是为属性设置了一个名称字符串,用于输出属性信息。
  • 相关阅读:
    连续波多普勒2维fft仿真代码
    块设备调用逻辑(linux 5.4)
    【2】c++设计模式——>UML表示类之间的继承关系
    linux系统nginx常用命令
    Yocto创建自己的分区(基于STM32MP1)
    基于mysql关系型数据库实现分布式锁以及存在的问题
    一文了解多模态数字人
    【博客483】prometheus-----告警处理源码剖析
    Nvidia GPU 入门教程之 02 ubuntu 安装A100显卡驱动 (含8步快速浓缩教程)
    新版TCGA的突变数据SNP下载和整理
  • 原文地址:https://blog.csdn.net/u012084827/article/details/127119193