@@ -15,6 +15,126 @@ web2转型web3,希望学习测试与开发
1515## Notes
1616
1717<!-- Content_START -->
18+ # 2025-08-21
19+
20+ ### ** ` totalSupply() → uint256 ` public**
21+
22+ 请参见 [ ` IERC20.totalSupply ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#IERC20-totalSupply-- ) 。
23+
24+ ### ** ` balanceOf(address account) → uint256 ` public**
25+
26+ 请参见 [ ` IERC20.balanceOf ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#IERC20-balanceOf-address- ) 。
27+
28+ ### ** ` transfer(address recipient, uint256 amount) → bool ` public**
29+
30+ 请参见 [ ` IERC20.Transfer ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#IERC20-Transfer-address-address-uint256- ) 。
31+
32+ 要求:
33+
34+ - ` recipient ` 不能是零地址。
35+ - 调用者必须至少具有 ` amount ` 的余额。
36+
37+ ### ** ` allowance(address owner, address spender) → uint256 ` public**
38+
39+ 请参见 [ ` IERC20.allowance ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#IERC20-allowance-address-address- ) 。
40+
41+ ### ** ` approve(address spender, uint256 amount) → bool ` public**
42+
43+ 请参见 [ ` IERC20.approve ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#IERC20-approve-address-uint256- ) 。
44+
45+ 要求:
46+
47+ - ` spender ` 不能是零地址。
48+
49+ ### ** ` transferFrom(address sender, address recipient, uint256 amount) → bool ` public**
50+
51+ 请参见 [ ` IERC20.transferFrom ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#IERC20-transferFrom-address-address-uint256- ) 。
52+
53+ 发出 [ ` Approval ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#IERC20-Approval-address-address-uint256- ) 事件,指示已更新的津贴。 EIP 中没有对此要求。 请参见 [ ` ERC20 ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#ERC20 ) 开头的注释。
54+
55+ 要求:
56+
57+ - ` sender ` 和 ` recipient ` 不能为零地址。
58+ - ` sender ` 必须至少具有 ` amount ` 的余额。
59+ - 调用者必须至少具有 ` sender ` 的 ` amount ` token 的津贴。
60+
61+ ### ** ` increaseAllowance(address spender, uint256 addedValue) → bool ` public**
62+
63+ 以原子方式将授予 ` spender ` 的津贴增加调用者。
64+
65+ 这是 [ ` approve ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#ERC20-approve-address-uint256- ) 的替代方法,可以用作 [ ` IERC20.approve ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#IERC20-approve-address-uint256- ) 中描述的问题的缓解措施。
66+
67+ 发出 [ ` Approval ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#IERC20-Approval-address-address-uint256- ) 事件,指示已更新的津贴。
68+
69+ 要求:
70+
71+ - ` spender ` 不能是零地址。
72+
73+ ### ** ` decreaseAllowance(address spender, uint256 subtractedValue) → bool ` public**
74+
75+ 以原子方式将授予 ` spender ` 的津贴减少调用者。
76+
77+ 这是 [ ` approve ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#ERC20-approve-address-uint256- ) 的替代方法,可以用作 [ ` IERC20.approve ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#IERC20-approve-address-uint256- ) 中描述的问题的缓解措施。
78+
79+ 发出 [ ` Approval ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#IERC20-Approval-address-address-uint256- ) 事件,指示已更新的津贴。
80+
81+ 要求:
82+
83+ - ` spender ` 不能是零地址。
84+ - ` spender ` 必须至少具有 ` subtractedValue ` 的调用者的津贴。
85+
86+ ### ** ` _transfer(address sender, address recipient, uint256 amount) ` internal**
87+
88+ 将 ` amount ` 个 token 从 ` sender ` 转移到 ` recipient ` 。
89+
90+ 此内部函数等效于 [ ` transfer ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#ERC20-transfer-address-uint256- ) ,可用于例如实施自动 token 费用、削减机制等。
91+
92+ 发出一个 [ ` transfer ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#ERC20-transfer-address-uint256- ) 事件。
93+
94+ 要求:
95+
96+ - ` sender ` 不能是零地址。
97+ - ` recipient ` 不能是零地址。
98+ - ` sender ` 必须至少具有 ` amount ` 的余额。
99+
100+ ### ** ` _mint(address account, uint256 amount) ` internal**
101+
102+ 创建 ` amount ` 个 token 并将它们分配给 ` account ` ,从而增加总供应量。
103+
104+ 发出一个 [ ` transfer ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#ERC20-transfer-address-uint256- ) 事件,其中将 ` from ` 设置为零地址。
105+
106+ 要求:
107+
108+ - ` to ` 不能是零地址。
109+
110+ ### ** ` _burn(address account, uint256 amount) ` internal**
111+
112+ 从 ` account ` 销毁 ` amount ` 个 token,从而减少总供应量。
113+
114+ 发出一个 [ ` transfer ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#ERC20-transfer-address-uint256- ) 事件,其中将 ` to ` 设置为零地址。
115+
116+ 要求:
117+
118+ - ` account ` 不能是零地址。
119+ - ` account ` 必须至少具有 ` amount ` 个 token。
120+
121+ ### ** ` _approve(address owner, address spender, uint256 amount) ` internal**
122+
123+ 设置 ` amount ` 作为 ` spender ` 对 ` owner ` 的 token 的津贴。
124+
125+ 此内部函数等效于 ` approve ` ,可用于例如为某些子系统设置自动津贴等。
126+
127+ 发出一个 [ ` Approval ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#IERC20-Approval-address-address-uint256- ) 事件。
128+
129+ 要求:
130+
131+ - ` owner ` 不能是零地址。
132+ - ` spender ` 不能是零地址。
133+
134+ ### ** ` _setupDecimals(uint8 decimals_) ` internal**
135+
136+ 将 [ ` decimals ` ] ( https://docs.openzeppelin.com/contracts/3.x/api/token/erc20#ERC20-decimals-- ) 设置为默认值 18 以外的值。
137+
18138# 2025-08-20
19139
20140### ** ` IERC20Metadata ` **
0 commit comments