Kernel Instance Instantiation
Latrasis opened this issue · 2 comments
Latrasis commented
Based on previous work in beaker-evm we need to:
- Update documentation on how a kernel instance is deployed and instantiated. Documentation of the spec has been moved to cap9 repo in docs.
- Introduce a
Kernel#new
method
kernel#new
Should initialize a new kernel instance with new entry procedure
Parameters
entry_id
: uint192, the entry procedure id, must not be0
address
: uint192, the entry procedure contract address
Returns
Nothing
Trap conditions
- Entry Id of
0
results in revert - Address of
0
results in revert - A contract address that contains no code results in revert
- A contract address that does not contain a protection header results in revert
- A contract address that contains illegal calls results in revert
Latrasis commented
Currently the kernel has a constructor that acts as #new
, the only thing left to implement is validation and documentation.