The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
Asserts an operation on two operands.
Compares first
and second
and jumps to position
, if the condition is met.
Calls the operands into the declared type.
i.e. call transfer r0.owner 0u64 r1.amount into r1 r2;
Casts the operands into the declared type.
Commits the operand into the declared type.
A contains command, e.g. contains accounts[r0] into r1;
.
Contains is true
if a (key
, value
) entry exists in mapping
, stores the result in destination
.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
Finalizes an operation on the operands.
A get command, e.g. get accounts[r0] into r1;
.
Gets the value stored at operand
in mapping
and stores the result in destination
.
A get command that uses the provided default in case of failure, e.g. get.or_use accounts[r0] r1 into r2;
.
Gets the value stored at operand
in mapping
and stores the result in destination
.
If the key is not present, default
is stored in destination
.
The implementation of the binary operation.
The implementation of the binary operation.
Hashes the operand into the declared type.
An import statement defines an imported program, and is of the form import {name}.{network};
.
If no network
-level domain is specified, the default network is used.
The implementation of the binary operation.
Computes an equality operation on two operands, and stores the outcome in destination
.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
A position command, e.g. position exit
.
Indicates a position to which the program can branch to.
The implementation of the binary operation.
The implementation of the binary operation.
A random-number generator command, e.g. rand.chacha into r1 as field;
or
rand.chacha r0 into r1 as field;
, with the latter including an optional additional seed(s).
The implementation of the binary operation.
The implementation of the binary operation.
A remove command, e.g. remove mapping[r0];
Removes the (key
, value
) entry in mapping
.
A set command, e.g. set r1 into mapping[r0];
Sets the key
entry as value
in mapping
.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
The implementation of the binary operation.
Compute the absolute value of first
, checking for overflow/underflow, and storing the outcome in destination
.
Compute the absolute value of first
, wrapping around at the boundary of the type, and storing the outcome in destination
.
Adds first
with second
, storing the outcome in destination
.
Adds first
with second
, wrapping around at the boundary of the type, and storing the outcome in destination
.
Performs a bitwise and
on first
and second
, storing the outcome in destination
.
Asserts two operands are equal to each other.
Asserts two operands are not equal to each other.
A binary literal operation.
Jumps to position
, if first
equals second
.
Jumps to position
, if first
does not equal second
.
BHP256 is a collision-resistant function that processes inputs in 256-bit chunks.
BHP512 is a collision-resistant function that processes inputs in 512-bit chunks.
BHP768 is a collision-resistant function that processes inputs in 768-bit chunks.
BHP1024 is a collision-resistant function that processes inputs in 1024-bit chunks.
Pedersen64 is a collision-resistant function that processes inputs in 64-bit chunks.
Pedersen128 is a collision-resistant function that processes inputs in 128-bit chunks.
Divides first
by second
, storing the outcome in destination
.
Divides first
by second
, wrapping around at the boundary of the type, storing the outcome in destination
.
Doubles first
, storing the outcome in destination
.
Finalizes the operands on-chain.
Computes whether first
is greater than second
as a boolean, storing the outcome in destination
.
Computes whether first
is greater than or equal to second
as a boolean, storing the outcome in destination
.
BHP256 is a collision-resistant hash function that processes inputs in 256-bit chunks.
BHP512 is a collision-resistant hash function that processes inputs in 512-bit chunks.
BHP768 is a collision-resistant hash function that processes inputs in 768-bit chunks.
BHP1024 is a collision-resistant hash function that processes inputs in 1024-bit chunks.
Poseidon2 is a cryptographic hash function that processes inputs in 2-field chunks.
Poseidon4 is a cryptographic hash function that processes inputs in 4-field chunks.
Poseidon8 is a cryptographic hash function that processes inputs in 8-field chunks.
Pedersen64 is a collision-resistant hash function that processes inputs in 64-bit chunks.
Pedersen128 is a collision-resistant hash function that processes inputs in 128-bit chunks.
Poseidon2 is a cryptographic hash function that processes inputs in 2-field chunks.
Poseidon4 is a cryptographic hash function that processes inputs in 4-field chunks.
Poseidon8 is a cryptographic hash function that processes inputs in 8-field chunks.
Computes the multiplicative inverse of first
, storing the outcome in destination
.
Computes whether first
equals second
as a boolean, storing the outcome in destination
.
Computes whether first
does not equals second
as a boolean, storing the outcome in destination
.
Computes whether first
is less than second
as a boolean, storing the outcome in destination
.
Computes whether first
is less than or equal to second
as a boolean, storing the outcome in destination
.
Computes the result of first
mod second
, storing the outcome in the destination.
Multiplies first
and second
, storing the outcome in destination
.
Multiplies first
and second
, wrapping around at the boundary of the type, storing the outcome in destination
.
Returns false
if first
and second
are true
, storing the outcome in destination
.
Negates first
, storing the outcome in destination
.
Returns true
if neither first
nor second
is true
, storing the outcome in destination
.
Flips each bit in the representation of first
, storing the outcome in destination
.
Performs a bitwise or
on first
and second
, storing the outcome in destination
.
Raises first
to the power of second
, storing the outcome in destination
.
Raises first
to the power of second
, wrapping around at the boundary of the type, storing the outcome in destination
.
Divides first
by second
, storing the remainder in destination
.
Divides first
by second
, wrapping around at the boundary of the type, storing the remainder in destination
.
Shifts first
left by second
bits, storing the outcome in destination
.
Shifts first
left by second
bits, continuing past the boundary of the type, storing the outcome in destination
.
Shifts first
right by second
bits, storing the outcome in destination
.
Shifts first
right by second
bits, continuing past the boundary of the type, storing the outcome in destination
.
Squares first
, storing the outcome in destination
.
Computes the square root of first
, storing the outcome in destination
.
Computes first - second
, storing the outcome in destination
.
Computes first - second
, wrapping around at the boundary of the type, and storing the outcome in destination
.
Selects first
, if condition
is true, otherwise selects second
, storing the result in destination
.
A ternary literal operation.
A unary literal operation.
Performs a bitwise xor
on first
and second
, storing the outcome in destination
.