Expand description
Canonical intermediate representation for Neo Solidity.
Structsยง
- Basic
Block - Event
- Function
- IR function representation
- Hazards ๐
- IrDiagnostic
- Structured diagnostic emitted during IR lowering.
- Loop
Labels ๐ - Lowering
Context ๐ - Mapping
Access ๐ - Module
- IR module representing a compiled contract
- Native
Contract ๐Descriptor - State
Variable - Storage
Reference ๐ - Storage
Reference ๐Field - Struct
Field
Enumsยง
- Binary
Operator - Binary operators for IR instructions
- Builtin
Call - Convert
Target - Function
Kind - Instruction
- Literal
Value - Literal values in IR
- Manifest
Type ๐ - Native
Contract - Runtime
Value - Value
Type
Constantsยง
- NATIVE_
CONTRACTS ๐
Functionsยง
- address_
bytes_ ๐le_ from_ expression - bind_
catch_ ๐clause_ parameter - build_
call_ ๐graph - build_
defined_ ๐struct_ types - build_
deploy_ ๐function - build_
enum_ ๐variant_ map - build_
parameter_ ๐index_ map - builtin_
library_ ๐supported_ members - builtin_
struct_ ๐type - call_
flags_ ๐allow_ write_ or_ notify - catch_
clause_ ๐guard_ target - catch_
clause_ ๐param - catch_
clause_ ๐statement - coerce_
to_ ๐fixed_ bytes - compute_
transitive_ ๐hazard_ map - compute_
transitive_ ๐hazards - decode_
hex_ ๐bytes - decode_
hex_ ๐segments - direct_
hazards ๐ - emit_
is_ ๐native_ contract_ check - emit_
native_ ๐contract_ name - emit_
storage_ ๐load - emit_
storage_ ๐store - emit_
throw_ ๐with_ message - extract_
abi_ ๐encode_ args - extract_
encode_ ๐call_ arguments - extract_
signature_ ๐string - extract_
string_ ๐literal - find_
named_ ๐struct_ type - find_
struct_ ๐field - fixed_
len_ ๐bytes_ be_ from_ hex_ number - has_
ether_ ๐unit - infer_
array_ ๐element_ type - infer_
literal_ ๐array_ element_ type - infer_
type_ ๐from_ expression - is_
bare_ ๐catch_ clause - is_
contract_ ๐type_ reference - is_
ether_ ๐unit - is_
low_ ๐level_ evm_ member - is_
single_ ๐argument_ bytes_ or_ type_ wrapper - literal_
from_ ๐expression - load_
expression ๐ - lower_
array_ ๐literal_ expression - lower_
array_ ๐slice_ expression - lower_
array_ ๐store - lower_
array_ ๐subscript_ expression - lower_
assembly_ ๐statement - lower_
assert ๐ - lower_
assignment ๐ - lower_
binary_ ๐expr - lower_
block_ ๐statement - lower_
break_ ๐statement - lower_
bytes_ ๐eq_ hex_ number_ literal - lower_
compound_ ๐assignment - lower_
continue_ ๐statement - lower_
delete ๐ - lower_
do_ ๐while_ statement - lower_
emit ๐ - lower_
emit_ ๐statement - lower_
expression ๐ - lower_
expression_ ๐statement - lower_
extsload_ ๐range - lower_
extsload_ ๐single - lower_
extsload_ ๐slots - lower_
for_ ๐statement - lower_
function_ ๐call_ expression - lower_
generic_ ๐member_ access - lower_
if_ ๐statement - lower_
logical_ ๐and - lower_
logical_ ๐or - lower_
member_ ๐access_ expression - lower_
new_ ๐array_ allocation - lower_
new_ ๐expression - lower_
post_ ๐inc_ dec - lower_
power_ ๐expression - lower_
pre_ ๐inc_ dec - lower_
require ๐ - lower_
return_ ๐statement - lower_
revert_ ๐named_ args - lower_
revert_ ๐statement - lower_
special_ ๐assembly - lower_
state_ ๐array_ pop - lower_
state_ ๐array_ push - lower_
statement ๐ - lower_
storage_ ๐reference_ pop - lower_
storage_ ๐reference_ push - lower_
struct_ ๐constructor_ named - lower_
struct_ ๐constructor_ positional - lower_
try_ ๐statement - lower_
variable_ ๐definition_ statement - lower_
variable_ ๐expression - lower_
while_ ๐statement - manifest_
type_ ๐from_ solidity_ type - manifest_
type_ ๐name - native_
call_ ๐is_ mutating - parse_
decimal_ ๐bigint - parse_
hex_ ๐bigint - parse_
low_ ๐level_ call_ data - parse_
signed_ ๐decimal_ i32 - parse_
u8_ ๐literal - pow10 ๐
- push_
default_ ๐for_ storage_ value_ type - push_
default_ ๐for_ type - push_
default_ ๐for_ value_ type - resolve_
abi_ ๐member - resolve_
builtin_ ๐call - resolve_
call_ ๐data_ local - resolve_
encode_ ๐call_ method_ name - resolve_
mapping_ ๐access - resolve_
native_ ๐calls_ member - resolve_
neo_ ๐member - resolve_
runtime_ ๐member - resolve_
selector_ ๐method_ name - resolve_
signature_ ๐string - resolve_
storage_ ๐member - resolve_
storage_ ๐reference - resolve_
struct_ ๐type_ by_ name - resolve_
syscalls_ ๐member - sanitize_
numeric_ ๐token - string_
literal_ ๐bytes - try_
lower_ ๐address_ balance - try_
lower_ ๐builtin_ call - try_
lower_ ๐code_ property - try_
lower_ ๐current_ key - try_
lower_ ๐current_ value - try_
lower_ ๐expression_ assignments - try_
lower_ ๐expression_ binary_ ops - try_
lower_ ๐expression_ calls - try_
lower_ ๐expression_ comparisons - try_
lower_ ๐expression_ conditional - try_
lower_ ๐expression_ primary - try_
lower_ ๐expression_ tuple - try_
lower_ ๐expression_ unary - try_
lower_ ๐interface_ id - try_
lower_ ๐length_ property - try_
lower_ ๐low_ level_ address_ call - try_
lower_ ๐member_ builtin - try_
lower_ ๐member_ call - try_
lower_ ๐named_ function_ call - Reorder named function call arguments into positional order and delegate to the standard function call lowering path.
- try_
lower_ ๐native_ contract_ constant - try_
lower_ ๐nativecalls_ member_ builtin - try_
lower_ ๐neo_ member_ builtin - try_
lower_ ๐resolved_ builtin_ call - try_
lower_ ๐runtime_ member_ access - try_
lower_ ๐runtime_ member_ builtin - try_
lower_ ๐selector_ member_ access - try_
lower_ ๐state_ array_ helpers - try_
lower_ ๐storage_ array_ helpers - try_
lower_ ๐storage_ member_ builtin - try_
lower_ ๐storage_ reference_ array_ helpers - try_
lower_ ๐struct_ constructor_ call - try_
lower_ ๐struct_ constructor_ named_ call - try_
lower_ ๐syscalls_ member_ builtin - try_
lower_ ๐type_ bound_ max - try_
lower_ ๐type_ bound_ min - try_
lower_ ๐type_ concat - Handle
bytes.concat(a, b, ...)andstring.concat(a, b, ...). - try_
lower_ ๐type_ constructor_ call - try_
lower_ ๐type_ name - try_
lower_ ๐value_ transfer_ helpers - try_
lower_ ๐variable_ call - typeof_
argument ๐ - unit_
multiplier ๐ - validate_
pure_ ๐methods - validate_
runtime_ ๐notify_ call - validate_
safe_ ๐methods - value_
type_ ๐from_ ptype - value_
type_ ๐satisfies_ manifest_ type - value_
type_ ๐to_ catch_ guard