The library scans EVM bytecode for ops present (scanEVMOpcodesPresentInBytecode) and reachable (scanEVMOpcodesReachableInBytecode).
Add an analogous scanner for rain interpreter bytecode (the format the rain interpreter executes, not EVM bytecode).
Use case: a contract that delegates to a rain expression can be audited statically for which rain ops the expression uses, in the same way that EVM op scanning is used to audit deployed implementations.
The library scans EVM bytecode for ops present (
scanEVMOpcodesPresentInBytecode) and reachable (scanEVMOpcodesReachableInBytecode).Add an analogous scanner for rain interpreter bytecode (the format the rain interpreter executes, not EVM bytecode).
Use case: a contract that delegates to a rain expression can be audited statically for which rain ops the expression uses, in the same way that EVM op scanning is used to audit deployed implementations.