Skip to main content

ParamTmpRef

Struct ParamTmpRef 

Source
pub struct ParamTmpRef<'a> { /* private fields */ }
Expand description

This type defines a temporary memory reference. It is used as a Operation parameter when the corresponding parameter type is one of MemrefTempInput, MemrefTempOutput, or MemrefTempInout.

Implementations§

Source§

impl<'a> ParamTmpRef<'a>

Source

pub fn new_input(buffer: &'a [u8]) -> Self

Creates a temporary input only memory reference. buffer is a region of memory which needs to be temporarily registered for the duration of the Operation.

Source

pub fn new_output(buffer: &'a mut [u8]) -> Self

Creates a temporary memory reference. buffer is a region of memory which needs to be temporarily registered for the duration of the Operation.

Source

pub fn new_inout(buffer: &'a mut [u8]) -> Self

Creates a temporary input/output memory reference.

buffer is a region of memory which needs to be temporarily registered for the duration of the Operation and can be both read and written by the Trusted Application (TA).

This is useful when you need to pass data to a TA that will modify it and return the modified data in the same buffer.

Source

pub fn updated_size(&self) -> usize

Trait Implementations§

Source§

impl<'a> Param for ParamTmpRef<'a>

Source§

fn to_raw(&mut self) -> TEEC_Parameter

Source§

fn param_type(&self) -> ParamType

Source§

fn from_raw(raw: TEEC_Parameter, param_type: ParamType) -> Self

Auto Trait Implementations§

§

impl<'a> !Send for ParamTmpRef<'a>

§

impl<'a> !Sync for ParamTmpRef<'a>

§

impl<'a> !UnwindSafe for ParamTmpRef<'a>

§

impl<'a> Freeze for ParamTmpRef<'a>

§

impl<'a> RefUnwindSafe for ParamTmpRef<'a>

§

impl<'a> Unpin for ParamTmpRef<'a>

§

impl<'a> UnsafeUnpin for ParamTmpRef<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.