Skip to main content

PrnsNodeRecipe

Struct PrnsNodeRecipe 

Source
pub struct PrnsNodeRecipe<Destinations, AppState, RequestEndpoints, OnEvent, Interfaces, Storage, Persistence = NoPersistence>
where OnEvent: FnMut(PrnsEvent<'_>, &AppState),
{ pub transport_identity: Option<Zeroizing<[u8; 64]>>, pub pre_configured_destinations: Destinations, pub app_state: AppState, pub storage: Storage, pub request_endpoints: RequestEndpoints, pub interfaces: Interfaces, pub persistence: Persistence, pub on_event: OnEvent, }

Fields§

§transport_identity: Option<Zeroizing<[u8; 64]>>

The transport role takes a whole identity, never a bare address: a transport node signs (tunnel synthesis), and RNS 1.4.2 keeps a dedicated persisted transport identity.

§pre_configured_destinations: Destinations§app_state: AppState§storage: Storage

The storage layout the engine’s columns run on: GrowableHeap on a std host, Esp32S3 for the PSRAM-backed reference target, or a board-owned fixed layout for an SRAM-constrained application. A type-level choice carried as a value so the recipe owns it and PrnsNode::new no longer assumes one.

§request_endpoints: RequestEndpoints§interfaces: Interfaces§persistence: Persistence§on_event: OnEvent

Auto Trait Implementations§

§

impl<Destinations, AppState, RequestEndpoints, OnEvent, Interfaces, Storage, Persistence> Freeze for PrnsNodeRecipe<Destinations, AppState, RequestEndpoints, OnEvent, Interfaces, Storage, Persistence>
where Destinations: Freeze, AppState: Freeze, Storage: Freeze, RequestEndpoints: Freeze, Interfaces: Freeze, Persistence: Freeze, OnEvent: Freeze,

§

impl<Destinations, AppState, RequestEndpoints, OnEvent, Interfaces, Storage, Persistence> RefUnwindSafe for PrnsNodeRecipe<Destinations, AppState, RequestEndpoints, OnEvent, Interfaces, Storage, Persistence>
where Destinations: RefUnwindSafe, AppState: RefUnwindSafe, Storage: RefUnwindSafe, RequestEndpoints: RefUnwindSafe, Interfaces: RefUnwindSafe, Persistence: RefUnwindSafe, OnEvent: RefUnwindSafe,

§

impl<Destinations, AppState, RequestEndpoints, OnEvent, Interfaces, Storage, Persistence> Send for PrnsNodeRecipe<Destinations, AppState, RequestEndpoints, OnEvent, Interfaces, Storage, Persistence>
where Destinations: Send, AppState: Send, Storage: Send, RequestEndpoints: Send, Interfaces: Send, Persistence: Send, OnEvent: Send,

§

impl<Destinations, AppState, RequestEndpoints, OnEvent, Interfaces, Storage, Persistence> Sync for PrnsNodeRecipe<Destinations, AppState, RequestEndpoints, OnEvent, Interfaces, Storage, Persistence>
where Destinations: Sync, AppState: Sync, Storage: Sync, RequestEndpoints: Sync, Interfaces: Sync, Persistence: Sync, OnEvent: Sync,

§

impl<Destinations, AppState, RequestEndpoints, OnEvent, Interfaces, Storage, Persistence> Unpin for PrnsNodeRecipe<Destinations, AppState, RequestEndpoints, OnEvent, Interfaces, Storage, Persistence>
where Destinations: Unpin, AppState: Unpin, Storage: Unpin, RequestEndpoints: Unpin, Interfaces: Unpin, Persistence: Unpin, OnEvent: Unpin,

§

impl<Destinations, AppState, RequestEndpoints, OnEvent, Interfaces, Storage, Persistence> UnsafeUnpin for PrnsNodeRecipe<Destinations, AppState, RequestEndpoints, OnEvent, Interfaces, Storage, Persistence>
where Destinations: UnsafeUnpin, AppState: UnsafeUnpin, Storage: UnsafeUnpin, RequestEndpoints: UnsafeUnpin, Interfaces: UnsafeUnpin, Persistence: UnsafeUnpin, OnEvent: UnsafeUnpin,

§

impl<Destinations, AppState, RequestEndpoints, OnEvent, Interfaces, Storage, Persistence> UnwindSafe for PrnsNodeRecipe<Destinations, AppState, RequestEndpoints, OnEvent, Interfaces, Storage, Persistence>
where Destinations: UnwindSafe, AppState: UnwindSafe, Storage: UnwindSafe, RequestEndpoints: UnwindSafe, Interfaces: UnwindSafe, Persistence: UnwindSafe, OnEvent: UnwindSafe,

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> Same for T

Source§

type Output = T

Should always be Self
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.