cairo_lang_casm

Macro casm_build_extend

Source
macro_rules! casm_build_extend {
    ($builder:ident,) => { ... };
    ($builder:ident, tempvar $var:ident; $($tok:tt)*) => { ... };
    ($builder:ident, localvar $var:ident; $($tok:tt)*) => { ... };
    ($builder:ident, ap += $value:expr; $($tok:tt)*) => { ... };
    ($builder:ident, const $imm:ident = $value:expr; $($tok:tt)*) => { ... };
    ($builder:ident, assert $dst:ident = $res:ident; $($tok:tt)*) => { ... };
    ($builder:ident, assert $dst:ident = $a:ident + $b:ident; $($tok:tt)*) => { ... };
    ($builder:ident, assert $dst:ident = $a:ident * $b:ident; $($tok:tt)*) => { ... };
    ($builder:ident, assert $dst:ident = $a:ident - $b:ident; $($tok:tt)*) => { ... };
    ($builder:ident, assert $dst:ident = $a:ident / $b:ident; $($tok:tt)*) => { ... };
    ($builder:ident, assert $dst:ident = $buffer:ident [ $offset:expr ] ; $($tok:tt)*) => { ... };
    ($builder:ident, assert $dst:ident = * $buffer:ident; $($tok:tt)*) => { ... };
    ($builder:ident, assert $value:ident = * ( $buffer:ident ++ ); $($tok:tt)*) => { ... };
    ($builder:ident, tempvar $var:ident = $value:ident; $($tok:tt)*) => { ... };
    ($builder:ident, tempvar $var:ident = $lhs:ident + $rhs:ident; $($tok:tt)*) => { ... };
    ($builder:ident, tempvar $var:ident = $lhs:ident * $rhs:ident; $($tok:tt)*) => { ... };
    ($builder:ident, tempvar $var:ident = $lhs:ident - $rhs:ident; $($tok:tt)*) => { ... };
    ($builder:ident, tempvar $var:ident = $lhs:ident / $rhs:ident; $($tok:tt)*) => { ... };
    ($builder:ident, tempvar $var:ident = * ( $buffer:ident ++ ); $($tok:tt)*) => { ... };
    ($builder:ident, tempvar $var:ident = $buffer:ident [ $offset:expr ]; $($tok:tt)*) => { ... };
    ($builder:ident, tempvar $var:ident = * $buffer:ident ; $($tok:tt)*) => { ... };
    ($builder:ident, maybe_tempvar $var:ident = $value:ident; $($tok:tt)*) => { ... };
    ($builder:ident, maybe_tempvar $var:ident = $lhs:ident + $rhs:ident; $($tok:tt)*) => { ... };
    ($builder:ident, maybe_tempvar $var:ident = $lhs:ident * $rhs:ident; $($tok:tt)*) => { ... };
    ($builder:ident, maybe_tempvar $var:ident = $lhs:ident - $rhs:ident; $($tok:tt)*) => { ... };
    ($builder:ident, maybe_tempvar $var:ident = $lhs:ident / $rhs:ident; $($tok:tt)*) => { ... };
    ($builder:ident, localvar $var:ident = $value:ident; $($tok:tt)*) => { ... };
    ($builder:ident, localvar $var:ident = $lhs:ident + $rhs:ident; $($tok:tt)*) => { ... };
    ($builder:ident, localvar $var:ident = $lhs:ident * $rhs:ident; $($tok:tt)*) => { ... };
    ($builder:ident, localvar $var:ident = $lhs:ident - $rhs:ident; $($tok:tt)*) => { ... };
    ($builder:ident, localvar $var:ident = $lhs:ident / $rhs:ident; $($tok:tt)*) => { ... };
    ($builder:ident, localvar $var:ident = * ( $buffer:ident ++ ); $($tok:tt)*) => { ... };
    ($builder:ident, localvar $var:ident = $buffer:ident [ $offset:expr ]; $($tok:tt)*) => { ... };
    ($builder:ident, localvar $var:ident = * $buffer:ident ; $($tok:tt)*) => { ... };
    ($builder:ident, let $dst:ident = $a:ident + $b:ident; $($tok:tt)*) => { ... };
    ($builder:ident, let $dst:ident = $a:ident * $b:ident; $($tok:tt)*) => { ... };
    ($builder:ident, let $dst:ident = $a:ident - $b:ident; $($tok:tt)*) => { ... };
    ($builder:ident, let $dst:ident = $a:ident / $b:ident; $($tok:tt)*) => { ... };
    ($builder:ident, let $dst:ident = * ( $buffer:ident ++ ); $($tok:tt)*) => { ... };
    ($builder:ident, let $dst:ident = $buffer:ident [ $offset:expr ] ; $($tok:tt)*) => { ... };
    ($builder:ident, let $dst:ident = *$buffer:ident; $($tok:tt)*) => { ... };
    ($builder:ident, let $dst:ident = $src:ident; $($tok:tt)*) => { ... };
    ($builder:ident, jump $target:ident; $($tok:tt)*) => { ... };
    ($builder:ident, jump $target:ident if $condition:ident != 0; $($tok:tt)*) => { ... };
    ($builder:ident, let ($($var_name:ident),*) = call $target:ident; $($tok:tt)*) => { ... };
    ($builder:ident, ret; $($tok:tt)*) => { ... };
    ($builder:ident, $label:ident: $($tok:tt)*) => { ... };
    ($builder:ident, fail; $($tok:tt)*) => { ... };
    ($builder:ident, unsatisfiable_assert $dst:ident = $res:ident; $($tok:tt)*) => { ... };
    ($builder:ident, hint $hint_head:ident$(::$hint_tail:ident)+ {
            $($input_name:ident : $input_value:ident),*
        } into {
            $($output_name:ident : $output_value:ident),*
        }; $($tok:tt)*) => { ... };
    ($builder:ident, hint $hint_name:ident {
            $($input_name:ident : $input_value:ident),*
        } into {
            $($output_name:ident : $output_value:ident),*
        }; $($tok:tt)*) => { ... };
    ($builder:ident, hint $hint_head:ident$(::$hint_tail:ident)* {
        $($arg_name:ident : $arg_value:ident),*
    }; $($tok:tt)*) => { ... };
    ($builder:ident, rescope { $($new_var:ident = $value_var:ident),* }; $($tok:tt)*) => { ... };
    ($builder:ident, #{ validate steps == $count:expr; } $($tok:tt)*) => { ... };
    ($builder:ident, #{ steps = 0; } $($tok:tt)*) => { ... };
    ($builder:ident, #{ $counter:ident += steps; steps = 0; } $($tok:tt)*) => { ... };
}