Skip to content

Commit

Permalink
traded large arrays for maps
Browse files Browse the repository at this point in the history
  • Loading branch information
jacobcreech committed Jan 17, 2025
1 parent e5e2d96 commit 1573fce
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions src/spl20.sol
Original file line number Diff line number Diff line change
Expand Up @@ -19,16 +19,16 @@ struct TokenAccount {
contract Spl20 {
mapping(address => Mint) public mints;
mapping(address => TokenAccount) public tokenAccounts;
address[] public mintAddresses;
address[] public tokenAddresses;
mapping(address => bool) public mintAddresses;
mapping(address => bool) public tokenAddresses;

function initializeMint(uint8 decimals, address mintAuthority, address freezeAuthority, address mintAddress)
public
returns (Mint memory)
{
require(mints[mintAddress].mintAuthority == address(0), "Mint already exists");
require(mintAddresses[mintAddress] == false, "Mint already exists");
mints[mintAddress] = Mint(decimals, 0, mintAuthority, freezeAuthority, mintAddress);
mintAddresses.push(mintAddress);
mintAddresses[mintAddress] = true;
return Mint(decimals, 0, mintAuthority, freezeAuthority, mintAddress);
}

Expand All @@ -43,7 +43,7 @@ contract Spl20 {

if (tokenAccounts[tokenAddress].mintAddress == address(0)) {
tokenAccounts[tokenAddress] = TokenAccount(mintAddress, toMintTokens, 0, false);
tokenAddresses.push(tokenAddress);
tokenAddresses[tokenAddress] = true;
}
tokenAccounts[tokenAddress].balance += amount;
tokenAccounts[tokenAddress].owner = toMintTokens;
Expand All @@ -60,7 +60,7 @@ contract Spl20 {

if (tokenAccounts[toTokenAddress].mintAddress == address(0)) {
tokenAccounts[toTokenAddress] = TokenAccount(mintAddress, to, 0, false);
tokenAddresses.push(toTokenAddress);
tokenAddresses[toTokenAddress] = true;
}

tokenAccounts[fromTokenAddress].balance -= amount;
Expand Down

0 comments on commit 1573fce

Please sign in to comment.