transfer-agent-protocol / tap-cap-table

Transfer agent protocol that's used for minting a cap table onchain.
https://transferagentprotocol.xyz
MIT License
17 stars 3 forks source link

CapTable Interface #76

Closed apfong closed 1 year ago

apfong commented 1 year ago

What?

Create ICapTable interface to expose public methods of the CapTable contract

Why?

We don't always want to import the whole CapTable contract when we call cap table functions from other contracts.

Fixes issue where importing the CapTable contract in other protocols will cause builds to fail with the following error:

$ forge build --via-ir

[⠒] Compiling...
[⠘] Compiling 131 files with 0.8.20
[⠊] Solc 0.8.20 finished in 337.76s
Error:
Compiler run failed:
Error: Yul exception:Variable _12 is 1 too deep in the stack [ _12 _9 RET _8 _5 _4 _10 var_amount var_spender _2 _1 _3 var_from var_to _7 _13 _14 ]
memoryguard was present.
memoryguard was present.
victormimo commented 1 year ago

Awesome.