aztec-nr - noir_aztec::context::call_interfaces

Struct PrivateStaticCallInterface

pub struct PrivateStaticCallInterface<let M: u32, T>
{ /* private fields */ }

Implementations

impl<let M: u32, T> PrivateStaticCallInterface<M, T>

pub fn new( target_contract: AztecAddress, selector: FunctionSelector, name: str<M>, args: [Field], ) -> Self pub fn view(self, context: &mut PrivateContext) -> T
where T: Deserialize

Makes a read-only call to this private function.

This is similar to Solidity's staticcall. The called function cannot modify state, emit L2->L1 messages, nor emit events. Any nested calls are constrained to also be staticcalls.

Arguments

  • context - The PrivateContext -- made magically available to the body of every #[private] function as context, through the #[private] annotation's macro.

Trait implementations

impl<let M: u32, T> CallInterface<M> for PrivateStaticCallInterface<M, T>

pub fn get_args(self) -> [Field] pub fn get_selector(self) -> FunctionSelector pub fn get_name(self) -> str<M> pub fn get_contract_address(self) -> AztecAddress pub fn get_is_static(self) -> bool