Skip to main content
Version: dev

UnaryOp and BinaryOp

std::meta::op contains the UnaryOp and BinaryOp types as well as methods on them. These types are used to represent a unary or binary operator respectively in Noir source code.

Types​

UnaryOp​

Represents a unary operator. One of -, !, &mut, or *.

Methods​

is_minus​

is_minus
pub fn is_minus(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L53-L55

Returns true if this operator is -.

is_not​

is_not
pub fn is_not(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L72-L74

true if this operator is !

is_mutable_reference​

is_mutable_reference
pub fn is_mutable_reference(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L91-L93

true if this operator is &mut

is_dereference​

is_dereference
pub fn is_dereference(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L110-L112

true if this operator is *

quoted​

unary_quoted
pub comptime fn quoted(self) -> Quoted {

Source code: noir_stdlib/src/meta/op.nr#L130-L132

Returns this operator as a Quoted value.

Trait Implementations​

impl Eq for UnaryOp
impl Hash for UnaryOp

BinaryOp​

Represents a binary operator. One of +, -, *, /, %, ==, !=, <, <=, >, >=, &, |, ^, >>, or <<.

Methods​

is_add​

is_add
pub fn is_add(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L195-L197

true if this operator is +

is_subtract​

is_subtract
pub fn is_subtract(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L214-L216

true if this operator is -

is_multiply​

is_multiply
pub fn is_multiply(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L233-L235

true if this operator is *

is_divide​

is_divide
pub fn is_divide(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L252-L254

true if this operator is /

is_modulo​

is_modulo
pub fn is_modulo(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L480-L482

true if this operator is %

is_equal​

is_equal
pub fn is_equal(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L271-L273

true if this operator is ==

is_not_equal​

is_not_equal
pub fn is_not_equal(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L290-L292

true if this operator is !=

is_less_than​

is_less_than
pub fn is_less_than(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L309-L311

true if this operator is <

is_less_than_or_equal​

is_less_than_or_equal
pub fn is_less_than_or_equal(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L328-L330

true if this operator is <=

is_greater_than​

is_greater_than
pub fn is_greater_than(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L347-L349

true if this operator is >

is_greater_than_or_equal​

is_greater_than_or_equal
pub fn is_greater_than_or_equal(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L366-L368

true if this operator is >=

is_and​

is_and
pub fn is_and(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L385-L387

true if this operator is &

is_or​

is_or
pub fn is_or(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L404-L406

true if this operator is |

is_shift_right​

is_shift_right
pub fn is_shift_right(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L442-L444

true if this operator is >>

is_shift_left​

is_shift_left
pub fn is_shift_left(self) -> bool {

Source code: noir_stdlib/src/meta/op.nr#L461-L463

true if this operator is <<

quoted​

binary_quoted
pub comptime fn quoted(self) -> Quoted {

Source code: noir_stdlib/src/meta/op.nr#L500-L502

Returns this operator as a Quoted value.

Trait Implementations​

impl Eq for BinaryOp
impl Hash for BinaryOp