logo
pub struct CallFlags { /* private fields */ }
Expand description

The flags used to change the behavior of a contract call.

Implementations

Forwards the input for the current function to the callee.

Note

A forwarding call will consume the current contracts input. Any attempt to access the input after this call returns (e.g. by trying another forwarding call) will lead to a contract revert. Consider using Self::set_clone_input in order to preserve the input.

Identical to Self::set_forward_input but without consuming the input.

This adds some additional weight costs to the call.

Note

This implies Self::set_forward_input and takes precedence when both are set.

Do not return from the call but rather return the result of the callee to the callers caller.

Note

This makes the current contract completely transparent to its caller by replacing this contracts potential output with the callee ones. Any code after the contract calls has been invoked can be safely considered unreachable.

Allow the callee to reenter into the current contract.

Without this flag any reentrancy into the current contract that originates from the callee (or any of its callees) is denied. This includes the first callee: You cannot call into yourself with this flag set.

Returns true if input forwarding is set.

Note

See Self::set_forward_input for more information.

Returns true if input cloning is set.

Note

See Self::set_clone_input for more information.

Returns true if the tail call property is set.

Note

See Self::set_tail_call for more information.

Returns true if call reentry is allowed.

Note

See Self::set_allow_reentry for more information.

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Returns the “default value” for a type. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.