NAC_Blockchain/nac-cli/test-contract/contracts/main.charter

24 lines
604 B
Plaintext

// NAC智能合约
contract Token {
storage {
balances: map<Address, u128>,
total_supply: u128,
}
constructor(initial_supply: u128) {
self.total_supply = initial_supply;
self.balances[msg.sender] = initial_supply;
}
pub fn transfer(to: Address, amount: u128) -> bool {
require(self.balances[msg.sender] >= amount, "Insufficient balance");
self.balances[msg.sender] -= amount;
self.balances[to] += amount;
true
}
pub fn balance_of(account: Address) -> u128 {
self.balances[account]
}
}