Struct forest_actor::init::State[][src]

pub struct State {
    pub address_map: Cid,
    pub next_id: ActorID,
    pub network_name: String,
}
Expand description

State is reponsible for creating

Fields

address_map: Cidnext_id: ActorIDnetwork_name: String

Implementations

impl State[src]

pub fn new<BS: BlockStore>(
    store: &BS,
    network_name: String
) -> Result<Self, Box<dyn StdError>>
[src]

pub fn map_address_to_new_id<BS: BlockStore>(
    &mut self,
    store: &BS,
    addr: &Address
) -> Result<Address, HamtError>
[src]

Allocates a new ID address and stores a mapping of the argument address to it. Returns the newly-allocated address.

pub fn resolve_address<BS: BlockStore>(
    &self,
    store: &BS,
    addr: &Address
) -> Result<Option<Address>, Box<dyn StdError>>
[src]

ResolveAddress resolves an address to an ID-address, if possible. If the provided address is an ID address, it is returned as-is. This means that mapped ID-addresses (which should only appear as values, not keys) and singleton actor addresses (which are not in the map) pass through unchanged.

Returns an ID-address and true if the address was already an ID-address or was resolved in the mapping. Returns an undefined address and false if the address was not an ID-address and not found in the mapping. Returns an error only if state was inconsistent.

Trait Implementations

impl Cbor for State[src]

fn marshal_cbor(&self) -> Result<Vec<u8, Global>, Error>[src]

Marshalls cbor encodable object into cbor bytes

fn unmarshal_cbor(bz: &[u8]) -> Result<Self, Error>[src]

Unmarshals cbor encoded bytes to object

fn cid(&self) -> Result<Cid, Error>[src]

Returns the content identifier of the raw block of data Default is Blake2b256 hash Read more

impl<'de> Deserialize<'de> for State[src]

fn deserialize<D>(deserializer: D) -> Result<Self, D::Error> where
    D: Deserializer<'de>, 
[src]

Deserialize this value from the given Serde deserializer. Read more

impl Serialize for State[src]

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error> where
    S: Serializer
[src]

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

impl RefUnwindSafe for State

impl Send for State

impl Sync for State

impl Unpin for State

impl UnwindSafe for State

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T> Pointable for T

pub const ALIGN: usize

The alignment of pointer.

type Init = T

The type for initializers.

pub unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more

pub unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more

pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more

pub unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

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

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

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

Performs the conversion.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 

pub fn vzip(self) -> V

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]