Multicall库提供了一个multicall(bytes[] calldata data)
方法,通过该方法可以由调用者在一笔交易中自由组合调用本合约的各个可外部调用的方法。
Context库是合约开发中最常见的库,同时也是最让人迷惑的库。合约代码里面只将msg.sender和msg.data封装成了函数,感觉多此一举。实际上,本库不提供任何context环境切换的细节功能,而是需要目标合约中重写这两个函数起到了可编辑msg.sender和msg.data的目的。
从foundry工程化的角度详细解读Openzeppelin中的Timers库及对应测试。
从foundry工程化的角度详细解读Openzeppelin中的Strings库及对应测试。
从foundry工程化的角度详细解读Openzeppelin中的Counters库及对应测试。
从foundry工程化的角度详细解读Openzeppelin中的Base64库及对应测试。
从foundry工程化的角度详细解读Openzeppelin中的Arrays库及对应测试。
从foundry工程化的角度详细解读Openzeppelin中的StorageSlot库及对应测试。
从foundry工程化的角度详细解读Openzeppelin中的Address库及对应测试。
一段Solidity汇编代码逻辑整理
本文使用create2创建合约、预测合约地址
Truffle:Truffle是一个流行的开发框架,专门用于构建以太坊(Ethereum)区块链应用程序。它提供了一组工具和库,以简化智能合约的开发、测试和部署过程。下面是Truffle框架的主要功能:智能合约开发:Truffle提供了一个简洁的开发环境,可以编写Solidity智能合约。它
编写我们的第一个合约。
/*可见性修饰符:publicexternalinternalprivatepublic:作用域:状态变量、函数状态变量:可以在合约内外被读取,自动生成一个公共的getter函数。函数:可以从合约内外部调用,自
从第一个 Counter 智能合约看合约代码结构
理解智能合约字节码末尾的元数据
本文从通过钱包发起交易开始,解析钱包如何构建交易数据,如何设定 Gas,如何签名及序列化交易。以及当节点接收到交易后,如何验证、EVM 如何执行对应的 Solidity 字节码,如何退还 GAS 等。
值得所有开发者们仔细阅读。
RemixChina简介总所周知,世界上最好用的智能合约IDE就是以太坊基金会支持研发并开源的RemixIDE。但是国内因为有GFW的存在,使用Remix非常不方便。就算有的小伙伴会科学上网,那他面对的还是一个全英文的环境。不管是操作界面,还是使用文档,还是交流社区等等,这些
DApp是DecentralizedApplication的缩写,中文直译为去中心化应用,也可以理解为分布式应用。去中心化应用是基于区块链底层开发平台建立的。比如以太坊和EOS,DApp与底层平台的关系就好比APP与ios和安卓系统。一个真正的DApp应用需要同时满足以下几个条件:应用必须完全开
0xSplits 是一个收入拆分协议,为低 Gas 实现收入拆分提供了很好的实现思路。