[][src]Trait specs::saveload::SerializeComponents

pub trait SerializeComponents<E, M> where
    M: Marker
{ type Data: Serialize; fn serialize_entity<F>(
        &self,
        entity: Entity,
        ids: F
    ) -> Result<Self::Data, E>
    where
        F: FnMut(Entity) -> Option<M>
; fn serialize<S>(
        &self,
        entities: &EntitiesRes,
        markers: &ReadStorage<M>,
        serializer: S
    ) -> Result<S::Ok, S::Error>
    where
        E: Display,
        S: Serializer
, { ... }
fn serialize_recursive<S>(
        &self,
        entities: &EntitiesRes,
        markers: &mut WriteStorage<M>,
        allocator: &mut M::Allocator,
        serializer: S
    ) -> Result<S::Ok, S::Error>
    where
        E: Display,
        M: Marker,
        S: Serializer
, { ... } }

A trait which allows to serialize entities and their components.

Associated Types

type Data: Serialize

The data representation of the components.

Loading content...

Required methods

fn serialize_entity<F>(&self, entity: Entity, ids: F) -> Result<Self::Data, E> where
    F: FnMut(Entity) -> Option<M>, 

Serialize the components of a single entity using a entity -> marker mapping.

Loading content...

Provided methods

fn serialize<S>(
    &self,
    entities: &EntitiesRes,
    markers: &ReadStorage<M>,
    serializer: S
) -> Result<S::Ok, S::Error> where
    E: Display,
    S: Serializer

Serialize components from specified storages of all marked entities with provided serializer. When the component gets serialized the closure passed in ids argument returns None for unmarked Entity. In this case serialization of this component may perform workaround or fail. So the function doesn't recursively mark referenced entities. For recursive marking see serialize_recursive

fn serialize_recursive<S>(
    &self,
    entities: &EntitiesRes,
    markers: &mut WriteStorage<M>,
    allocator: &mut M::Allocator,
    serializer: S
) -> Result<S::Ok, S::Error> where
    E: Display,
    M: Marker,
    S: Serializer

Serialize components from specified storages of all marked entities with provided serializer. When the component gets serialized the closure passed in ids argument marks unmarked Entity (the marker of which was requested) and it will get serialized recursively. For serializing without such recursion see serialize function.

Loading content...

Implementations on Foreign Types

impl<'a, E, M, CA, CB, CC, CD, CE, CF, CG, CH, CI, CJ, CK, CL, CN, CM, CO, CP, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SN, SM, SO, SP> SerializeComponents<E, M> for (SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SN, SM, SO, SP) where
    M: Marker,
    SA: GenericReadStorage<Component = CA>,
    CA: ConvertSaveload<M> + Component,
    E: From<<CA as ConvertSaveload<M>>::Error>,
    SB: GenericReadStorage<Component = CB>,
    CB: ConvertSaveload<M> + Component,
    E: From<<CB as ConvertSaveload<M>>::Error>,
    SC: GenericReadStorage<Component = CC>,
    CC: ConvertSaveload<M> + Component,
    E: From<<CC as ConvertSaveload<M>>::Error>,
    SD: GenericReadStorage<Component = CD>,
    CD: ConvertSaveload<M> + Component,
    E: From<<CD as ConvertSaveload<M>>::Error>,
    SE: GenericReadStorage<Component = CE>,
    CE: ConvertSaveload<M> + Component,
    E: From<<CE as ConvertSaveload<M>>::Error>,
    SF: GenericReadStorage<Component = CF>,
    CF: ConvertSaveload<M> + Component,
    E: From<<CF as ConvertSaveload<M>>::Error>,
    SG: GenericReadStorage<Component = CG>,
    CG: ConvertSaveload<M> + Component,
    E: From<<CG as ConvertSaveload<M>>::Error>,
    SH: GenericReadStorage<Component = CH>,
    CH: ConvertSaveload<M> + Component,
    E: From<<CH as ConvertSaveload<M>>::Error>,
    SI: GenericReadStorage<Component = CI>,
    CI: ConvertSaveload<M> + Component,
    E: From<<CI as ConvertSaveload<M>>::Error>,
    SJ: GenericReadStorage<Component = CJ>,
    CJ: ConvertSaveload<M> + Component,
    E: From<<CJ as ConvertSaveload<M>>::Error>,
    SK: GenericReadStorage<Component = CK>,
    CK: ConvertSaveload<M> + Component,
    E: From<<CK as ConvertSaveload<M>>::Error>,
    SL: GenericReadStorage<Component = CL>,
    CL: ConvertSaveload<M> + Component,
    E: From<<CL as ConvertSaveload<M>>::Error>,
    SN: GenericReadStorage<Component = CN>,
    CN: ConvertSaveload<M> + Component,
    E: From<<CN as ConvertSaveload<M>>::Error>,
    SM: GenericReadStorage<Component = CM>,
    CM: ConvertSaveload<M> + Component,
    E: From<<CM as ConvertSaveload<M>>::Error>,
    SO: GenericReadStorage<Component = CO>,
    CO: ConvertSaveload<M> + Component,
    E: From<<CO as ConvertSaveload<M>>::Error>,
    SP: GenericReadStorage<Component = CP>,
    CP: ConvertSaveload<M> + Component,
    E: From<<CP as ConvertSaveload<M>>::Error>, 
[src]

type Data = (Option<CA::Data>, Option<CB::Data>, Option<CC::Data>, Option<CD::Data>, Option<CE::Data>, Option<CF::Data>, Option<CG::Data>, Option<CH::Data>, Option<CI::Data>, Option<CJ::Data>, Option<CK::Data>, Option<CL::Data>, Option<CN::Data>, Option<CM::Data>, Option<CO::Data>, Option<CP::Data>)

impl<'a, E, M, CB, CC, CD, CE, CF, CG, CH, CI, CJ, CK, CL, CN, CM, CO, CP, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SN, SM, SO, SP> SerializeComponents<E, M> for (SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SN, SM, SO, SP) where
    M: Marker,
    SB: GenericReadStorage<Component = CB>,
    CB: ConvertSaveload<M> + Component,
    E: From<<CB as ConvertSaveload<M>>::Error>,
    SC: GenericReadStorage<Component = CC>,
    CC: ConvertSaveload<M> + Component,
    E: From<<CC as ConvertSaveload<M>>::Error>,
    SD: GenericReadStorage<Component = CD>,
    CD: ConvertSaveload<M> + Component,
    E: From<<CD as ConvertSaveload<M>>::Error>,
    SE: GenericReadStorage<Component = CE>,
    CE: ConvertSaveload<M> + Component,
    E: From<<CE as ConvertSaveload<M>>::Error>,
    SF: GenericReadStorage<Component = CF>,
    CF: ConvertSaveload<M> + Component,
    E: From<<CF as ConvertSaveload<M>>::Error>,
    SG: GenericReadStorage<Component = CG>,
    CG: ConvertSaveload<M> + Component,
    E: From<<CG as ConvertSaveload<M>>::Error>,
    SH: GenericReadStorage<Component = CH>,
    CH: ConvertSaveload<M> + Component,
    E: From<<CH as ConvertSaveload<M>>::Error>,
    SI: GenericReadStorage<Component = CI>,
    CI: ConvertSaveload<M> + Component,
    E: From<<CI as ConvertSaveload<M>>::Error>,
    SJ: GenericReadStorage<Component = CJ>,
    CJ: ConvertSaveload<M> + Component,
    E: From<<CJ as ConvertSaveload<M>>::Error>,
    SK: GenericReadStorage<Component = CK>,
    CK: ConvertSaveload<M> + Component,
    E: From<<CK as ConvertSaveload<M>>::Error>,
    SL: GenericReadStorage<Component = CL>,
    CL: ConvertSaveload<M> + Component,
    E: From<<CL as ConvertSaveload<M>>::Error>,
    SN: GenericReadStorage<Component = CN>,
    CN: ConvertSaveload<M> + Component,
    E: From<<CN as ConvertSaveload<M>>::Error>,
    SM: GenericReadStorage<Component = CM>,
    CM: ConvertSaveload<M> + Component,
    E: From<<CM as ConvertSaveload<M>>::Error>,
    SO: GenericReadStorage<Component = CO>,
    CO: ConvertSaveload<M> + Component,
    E: From<<CO as ConvertSaveload<M>>::Error>,
    SP: GenericReadStorage<Component = CP>,
    CP: ConvertSaveload<M> + Component,
    E: From<<CP as ConvertSaveload<M>>::Error>, 
[src]

type Data = (Option<CB::Data>, Option<CC::Data>, Option<CD::Data>, Option<CE::Data>, Option<CF::Data>, Option<CG::Data>, Option<CH::Data>, Option<CI::Data>, Option<CJ::Data>, Option<CK::Data>, Option<CL::Data>, Option<CN::Data>, Option<CM::Data>, Option<CO::Data>, Option<CP::Data>)

impl<'a, E, M, CC, CD, CE, CF, CG, CH, CI, CJ, CK, CL, CN, CM, CO, CP, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SN, SM, SO, SP> SerializeComponents<E, M> for (SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SN, SM, SO, SP) where
    M: Marker,
    SC: GenericReadStorage<Component = CC>,
    CC: ConvertSaveload<M> + Component,
    E: From<<CC as ConvertSaveload<M>>::Error>,
    SD: GenericReadStorage<Component = CD>,
    CD: ConvertSaveload<M> + Component,
    E: From<<CD as ConvertSaveload<M>>::Error>,
    SE: GenericReadStorage<Component = CE>,
    CE: ConvertSaveload<M> + Component,
    E: From<<CE as ConvertSaveload<M>>::Error>,
    SF: GenericReadStorage<Component = CF>,
    CF: ConvertSaveload<M> + Component,
    E: From<<CF as ConvertSaveload<M>>::Error>,
    SG: GenericReadStorage<Component = CG>,
    CG: ConvertSaveload<M> + Component,
    E: From<<CG as ConvertSaveload<M>>::Error>,
    SH: GenericReadStorage<Component = CH>,
    CH: ConvertSaveload<M> + Component,
    E: From<<CH as ConvertSaveload<M>>::Error>,
    SI: GenericReadStorage<Component = CI>,
    CI: ConvertSaveload<M> + Component,
    E: From<<CI as ConvertSaveload<M>>::Error>,
    SJ: GenericReadStorage<Component = CJ>,
    CJ: ConvertSaveload<M> + Component,
    E: From<<CJ as ConvertSaveload<M>>::Error>,
    SK: GenericReadStorage<Component = CK>,
    CK: ConvertSaveload<M> + Component,
    E: From<<CK as ConvertSaveload<M>>::Error>,
    SL: GenericReadStorage<Component = CL>,
    CL: ConvertSaveload<M> + Component,
    E: From<<CL as ConvertSaveload<M>>::Error>,
    SN: GenericReadStorage<Component = CN>,
    CN: ConvertSaveload<M> + Component,
    E: From<<CN as ConvertSaveload<M>>::Error>,
    SM: GenericReadStorage<Component = CM>,
    CM: ConvertSaveload<M> + Component,
    E: From<<CM as ConvertSaveload<M>>::Error>,
    SO: GenericReadStorage<Component = CO>,
    CO: ConvertSaveload<M> + Component,
    E: From<<CO as ConvertSaveload<M>>::Error>,
    SP: GenericReadStorage<Component = CP>,
    CP: ConvertSaveload<M> + Component,
    E: From<<CP as ConvertSaveload<M>>::Error>, 
[src]

type Data = (Option<CC::Data>, Option<CD::Data>, Option<CE::Data>, Option<CF::Data>, Option<CG::Data>, Option<CH::Data>, Option<CI::Data>, Option<CJ::Data>, Option<CK::Data>, Option<CL::Data>, Option<CN::Data>, Option<CM::Data>, Option<CO::Data>, Option<CP::Data>)

impl<'a, E, M, CD, CE, CF, CG, CH, CI, CJ, CK, CL, CN, CM, CO, CP, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SN, SM, SO, SP> SerializeComponents<E, M> for (SD, SE, SF, SG, SH, SI, SJ, SK, SL, SN, SM, SO, SP) where
    M: Marker,
    SD: GenericReadStorage<Component = CD>,
    CD: ConvertSaveload<M> + Component,
    E: From<<CD as ConvertSaveload<M>>::Error>,
    SE: GenericReadStorage<Component = CE>,
    CE: ConvertSaveload<M> + Component,
    E: From<<CE as ConvertSaveload<M>>::Error>,
    SF: GenericReadStorage<Component = CF>,
    CF: ConvertSaveload<M> + Component,
    E: From<<CF as ConvertSaveload<M>>::Error>,
    SG: GenericReadStorage<Component = CG>,
    CG: ConvertSaveload<M> + Component,
    E: From<<CG as ConvertSaveload<M>>::Error>,
    SH: GenericReadStorage<Component = CH>,
    CH: ConvertSaveload<M> + Component,
    E: From<<CH as ConvertSaveload<M>>::Error>,
    SI: GenericReadStorage<Component = CI>,
    CI: ConvertSaveload<M> + Component,
    E: From<<CI as ConvertSaveload<M>>::Error>,
    SJ: GenericReadStorage<Component = CJ>,
    CJ: ConvertSaveload<M> + Component,
    E: From<<CJ as ConvertSaveload<M>>::Error>,
    SK: GenericReadStorage<Component = CK>,
    CK: ConvertSaveload<M> + Component,
    E: From<<CK as ConvertSaveload<M>>::Error>,
    SL: GenericReadStorage<Component = CL>,
    CL: ConvertSaveload<M> + Component,
    E: From<<CL as ConvertSaveload<M>>::Error>,
    SN: GenericReadStorage<Component = CN>,
    CN: ConvertSaveload<M> + Component,
    E: From<<CN as ConvertSaveload<M>>::Error>,
    SM: GenericReadStorage<Component = CM>,
    CM: ConvertSaveload<M> + Component,
    E: From<<CM as ConvertSaveload<M>>::Error>,
    SO: GenericReadStorage<Component = CO>,
    CO: ConvertSaveload<M> + Component,
    E: From<<CO as ConvertSaveload<M>>::Error>,
    SP: GenericReadStorage<Component = CP>,
    CP: ConvertSaveload<M> + Component,
    E: From<<CP as ConvertSaveload<M>>::Error>, 
[src]

type Data = (Option<CD::Data>, Option<CE::Data>, Option<CF::Data>, Option<CG::Data>, Option<CH::Data>, Option<CI::Data>, Option<CJ::Data>, Option<CK::Data>, Option<CL::Data>, Option<CN::Data>, Option<CM::Data>, Option<CO::Data>, Option<CP::Data>)

impl<'a, E, M, CE, CF, CG, CH, CI, CJ, CK, CL, CN, CM, CO, CP, SE, SF, SG, SH, SI, SJ, SK, SL, SN, SM, SO, SP> SerializeComponents<E, M> for (SE, SF, SG, SH, SI, SJ, SK, SL, SN, SM, SO, SP) where
    M: Marker,
    SE: GenericReadStorage<Component = CE>,
    CE: ConvertSaveload<M> + Component,
    E: From<<CE as ConvertSaveload<M>>::Error>,
    SF: GenericReadStorage<Component = CF>,
    CF: ConvertSaveload<M> + Component,
    E: From<<CF as ConvertSaveload<M>>::Error>,
    SG: GenericReadStorage<Component = CG>,
    CG: ConvertSaveload<M> + Component,
    E: From<<CG as ConvertSaveload<M>>::Error>,
    SH: GenericReadStorage<Component = CH>,
    CH: ConvertSaveload<M> + Component,
    E: From<<CH as ConvertSaveload<M>>::Error>,
    SI: GenericReadStorage<Component = CI>,
    CI: ConvertSaveload<M> + Component,
    E: From<<CI as ConvertSaveload<M>>::Error>,
    SJ: GenericReadStorage<Component = CJ>,
    CJ: ConvertSaveload<M> + Component,
    E: From<<CJ as ConvertSaveload<M>>::Error>,
    SK: GenericReadStorage<Component = CK>,
    CK: ConvertSaveload<M> + Component,
    E: From<<CK as ConvertSaveload<M>>::Error>,
    SL: GenericReadStorage<Component = CL>,
    CL: ConvertSaveload<M> + Component,
    E: From<<CL as ConvertSaveload<M>>::Error>,
    SN: GenericReadStorage<Component = CN>,
    CN: ConvertSaveload<M> + Component,
    E: From<<CN as ConvertSaveload<M>>::Error>,
    SM: GenericReadStorage<Component = CM>,
    CM: ConvertSaveload<M> + Component,
    E: From<<CM as ConvertSaveload<M>>::Error>,
    SO: GenericReadStorage<Component = CO>,
    CO: ConvertSaveload<M> + Component,
    E: From<<CO as ConvertSaveload<M>>::Error>,
    SP: GenericReadStorage<Component = CP>,
    CP: ConvertSaveload<M> + Component,
    E: From<<CP as ConvertSaveload<M>>::Error>, 
[src]

type Data = (Option<CE::Data>, Option<CF::Data>, Option<CG::Data>, Option<CH::Data>, Option<CI::Data>, Option<CJ::Data>, Option<CK::Data>, Option<CL::Data>, Option<CN::Data>, Option<CM::Data>, Option<CO::Data>, Option<CP::Data>)

impl<'a, E, M, CF, CG, CH, CI, CJ, CK, CL, CN, CM, CO, CP, SF, SG, SH, SI, SJ, SK, SL, SN, SM, SO, SP> SerializeComponents<E, M> for (SF, SG, SH, SI, SJ, SK, SL, SN, SM, SO, SP) where
    M: Marker,
    SF: GenericReadStorage<Component = CF>,
    CF: ConvertSaveload<M> + Component,
    E: From<<CF as ConvertSaveload<M>>::Error>,
    SG: GenericReadStorage<Component = CG>,
    CG: ConvertSaveload<M> + Component,
    E: From<<CG as ConvertSaveload<M>>::Error>,
    SH: GenericReadStorage<Component = CH>,
    CH: ConvertSaveload<M> + Component,
    E: From<<CH as ConvertSaveload<M>>::Error>,
    SI: GenericReadStorage<Component = CI>,
    CI: ConvertSaveload<M> + Component,
    E: From<<CI as ConvertSaveload<M>>::Error>,
    SJ: GenericReadStorage<Component = CJ>,
    CJ: ConvertSaveload<M> + Component,
    E: From<<CJ as ConvertSaveload<M>>::Error>,
    SK: GenericReadStorage<Component = CK>,
    CK: ConvertSaveload<M> + Component,
    E: From<<CK as ConvertSaveload<M>>::Error>,
    SL: GenericReadStorage<Component = CL>,
    CL: ConvertSaveload<M> + Component,
    E: From<<CL as ConvertSaveload<M>>::Error>,
    SN: GenericReadStorage<Component = CN>,
    CN: ConvertSaveload<M> + Component,
    E: From<<CN as ConvertSaveload<M>>::Error>,
    SM: GenericReadStorage<Component = CM>,
    CM: ConvertSaveload<M> + Component,
    E: From<<CM as ConvertSaveload<M>>::Error>,
    SO: GenericReadStorage<Component = CO>,
    CO: ConvertSaveload<M> + Component,
    E: From<<CO as ConvertSaveload<M>>::Error>,
    SP: GenericReadStorage<Component = CP>,
    CP: ConvertSaveload<M> + Component,
    E: From<<CP as ConvertSaveload<M>>::Error>, 
[src]

type Data = (Option<CF::Data>, Option<CG::Data>, Option<CH::Data>, Option<CI::Data>, Option<CJ::Data>, Option<CK::Data>, Option<CL::Data>, Option<CN::Data>, Option<CM::Data>, Option<CO::Data>, Option<CP::Data>)

impl<'a, E, M, CG, CH, CI, CJ, CK, CL, CN, CM, CO, CP, SG, SH, SI, SJ, SK, SL, SN, SM, SO, SP> SerializeComponents<E, M> for (SG, SH, SI, SJ, SK, SL, SN, SM, SO, SP) where
    M: Marker,
    SG: GenericReadStorage<Component = CG>,
    CG: ConvertSaveload<M> + Component,
    E: From<<CG as ConvertSaveload<M>>::Error>,
    SH: GenericReadStorage<Component = CH>,
    CH: ConvertSaveload<M> + Component,
    E: From<<CH as ConvertSaveload<M>>::Error>,
    SI: GenericReadStorage<Component = CI>,
    CI: ConvertSaveload<M> + Component,
    E: From<<CI as ConvertSaveload<M>>::Error>,
    SJ: GenericReadStorage<Component = CJ>,
    CJ: ConvertSaveload<M> + Component,
    E: From<<CJ as ConvertSaveload<M>>::Error>,
    SK: GenericReadStorage<Component = CK>,
    CK: ConvertSaveload<M> + Component,
    E: From<<CK as ConvertSaveload<M>>::Error>,
    SL: GenericReadStorage<Component = CL>,
    CL: ConvertSaveload<M> + Component,
    E: From<<CL as ConvertSaveload<M>>::Error>,
    SN: GenericReadStorage<Component = CN>,
    CN: ConvertSaveload<M> + Component,
    E: From<<CN as ConvertSaveload<M>>::Error>,
    SM: GenericReadStorage<Component = CM>,
    CM: ConvertSaveload<M> + Component,
    E: From<<CM as ConvertSaveload<M>>::Error>,
    SO: GenericReadStorage<Component = CO>,
    CO: ConvertSaveload<M> + Component,
    E: From<<CO as ConvertSaveload<M>>::Error>,
    SP: GenericReadStorage<Component = CP>,
    CP: ConvertSaveload<M> + Component,
    E: From<<CP as ConvertSaveload<M>>::Error>, 
[src]

type Data = (Option<CG::Data>, Option<CH::Data>, Option<CI::Data>, Option<CJ::Data>, Option<CK::Data>, Option<CL::Data>, Option<CN::Data>, Option<CM::Data>, Option<CO::Data>, Option<CP::Data>)

impl<'a, E, M, CH, CI, CJ, CK, CL, CN, CM, CO, CP, SH, SI, SJ, SK, SL, SN, SM, SO, SP> SerializeComponents<E, M> for (SH, SI, SJ, SK, SL, SN, SM, SO, SP) where
    M: Marker,
    SH: GenericReadStorage<Component = CH>,
    CH: ConvertSaveload<M> + Component,
    E: From<<CH as ConvertSaveload<M>>::Error>,
    SI: GenericReadStorage<Component = CI>,
    CI: ConvertSaveload<M> + Component,
    E: From<<CI as ConvertSaveload<M>>::Error>,
    SJ: GenericReadStorage<Component = CJ>,
    CJ: ConvertSaveload<M> + Component,
    E: From<<CJ as ConvertSaveload<M>>::Error>,
    SK: GenericReadStorage<Component = CK>,
    CK: ConvertSaveload<M> + Component,
    E: From<<CK as ConvertSaveload<M>>::Error>,
    SL: GenericReadStorage<Component = CL>,
    CL: ConvertSaveload<M> + Component,
    E: From<<CL as ConvertSaveload<M>>::Error>,
    SN: GenericReadStorage<Component = CN>,
    CN: ConvertSaveload<M> + Component,
    E: From<<CN as ConvertSaveload<M>>::Error>,
    SM: GenericReadStorage<Component = CM>,
    CM: ConvertSaveload<M> + Component,
    E: From<<CM as ConvertSaveload<M>>::Error>,
    SO: GenericReadStorage<Component = CO>,
    CO: ConvertSaveload<M> + Component,
    E: From<<CO as ConvertSaveload<M>>::Error>,
    SP: GenericReadStorage<Component = CP>,
    CP: ConvertSaveload<M> + Component,
    E: From<<CP as ConvertSaveload<M>>::Error>, 
[src]

type Data = (Option<CH::Data>, Option<CI::Data>, Option<CJ::Data>, Option<CK::Data>, Option<CL::Data>, Option<CN::Data>, Option<CM::Data>, Option<CO::Data>, Option<CP::Data>)

impl<'a, E, M, CI, CJ, CK, CL, CN, CM, CO, CP, SI, SJ, SK, SL, SN, SM, SO, SP> SerializeComponents<E, M> for (SI, SJ, SK, SL, SN, SM, SO, SP) where
    M: Marker,
    SI: GenericReadStorage<Component = CI>,
    CI: ConvertSaveload<M> + Component,
    E: From<<CI as ConvertSaveload<M>>::Error>,
    SJ: GenericReadStorage<Component = CJ>,
    CJ: ConvertSaveload<M> + Component,
    E: From<<CJ as ConvertSaveload<M>>::Error>,
    SK: GenericReadStorage<Component = CK>,
    CK: ConvertSaveload<M> + Component,
    E: From<<CK as ConvertSaveload<M>>::Error>,
    SL: GenericReadStorage<Component = CL>,
    CL: ConvertSaveload<M> + Component,
    E: From<<CL as ConvertSaveload<M>>::Error>,
    SN: GenericReadStorage<Component = CN>,
    CN: ConvertSaveload<M> + Component,
    E: From<<CN as ConvertSaveload<M>>::Error>,
    SM: GenericReadStorage<Component = CM>,
    CM: ConvertSaveload<M> + Component,
    E: From<<CM as ConvertSaveload<M>>::Error>,
    SO: GenericReadStorage<Component = CO>,
    CO: ConvertSaveload<M> + Component,
    E: From<<CO as ConvertSaveload<M>>::Error>,
    SP: GenericReadStorage<Component = CP>,
    CP: ConvertSaveload<M> + Component,
    E: From<<CP as ConvertSaveload<M>>::Error>, 
[src]

type Data = (Option<CI::Data>, Option<CJ::Data>, Option<CK::Data>, Option<CL::Data>, Option<CN::Data>, Option<CM::Data>, Option<CO::Data>, Option<CP::Data>)

impl<'a, E, M, CJ, CK, CL, CN, CM, CO, CP, SJ, SK, SL, SN, SM, SO, SP> SerializeComponents<E, M> for (SJ, SK, SL, SN, SM, SO, SP) where
    M: Marker,
    SJ: GenericReadStorage<Component = CJ>,
    CJ: ConvertSaveload<M> + Component,
    E: From<<CJ as ConvertSaveload<M>>::Error>,
    SK: GenericReadStorage<Component = CK>,
    CK: ConvertSaveload<M> + Component,
    E: From<<CK as ConvertSaveload<M>>::Error>,
    SL: GenericReadStorage<Component = CL>,
    CL: ConvertSaveload<M> + Component,
    E: From<<CL as ConvertSaveload<M>>::Error>,
    SN: GenericReadStorage<Component = CN>,
    CN: ConvertSaveload<M> + Component,
    E: From<<CN as ConvertSaveload<M>>::Error>,
    SM: GenericReadStorage<Component = CM>,
    CM: ConvertSaveload<M> + Component,
    E: From<<CM as ConvertSaveload<M>>::Error>,
    SO: GenericReadStorage<Component = CO>,
    CO: ConvertSaveload<M> + Component,
    E: From<<CO as ConvertSaveload<M>>::Error>,
    SP: GenericReadStorage<Component = CP>,
    CP: ConvertSaveload<M> + Component,
    E: From<<CP as ConvertSaveload<M>>::Error>, 
[src]

type Data = (Option<CJ::Data>, Option<CK::Data>, Option<CL::Data>, Option<CN::Data>, Option<CM::Data>, Option<CO::Data>, Option<CP::Data>)

impl<'a, E, M, CK, CL, CN, CM, CO, CP, SK, SL, SN, SM, SO, SP> SerializeComponents<E, M> for (SK, SL, SN, SM, SO, SP) where
    M: Marker,
    SK: GenericReadStorage<Component = CK>,
    CK: ConvertSaveload<M> + Component,
    E: From<<CK as ConvertSaveload<M>>::Error>,
    SL: GenericReadStorage<Component = CL>,
    CL: ConvertSaveload<M> + Component,
    E: From<<CL as ConvertSaveload<M>>::Error>,
    SN: GenericReadStorage<Component = CN>,
    CN: ConvertSaveload<M> + Component,
    E: From<<CN as ConvertSaveload<M>>::Error>,
    SM: GenericReadStorage<Component = CM>,
    CM: ConvertSaveload<M> + Component,
    E: From<<CM as ConvertSaveload<M>>::Error>,
    SO: GenericReadStorage<Component = CO>,
    CO: ConvertSaveload<M> + Component,
    E: From<<CO as ConvertSaveload<M>>::Error>,
    SP: GenericReadStorage<Component = CP>,
    CP: ConvertSaveload<M> + Component,
    E: From<<CP as ConvertSaveload<M>>::Error>, 
[src]

type Data = (Option<CK::Data>, Option<CL::Data>, Option<CN::Data>, Option<CM::Data>, Option<CO::Data>, Option<CP::Data>)

impl<'a, E, M, CL, CN, CM, CO, CP, SL, SN, SM, SO, SP> SerializeComponents<E, M> for (SL, SN, SM, SO, SP) where
    M: Marker,
    SL: GenericReadStorage<Component = CL>,
    CL: ConvertSaveload<M> + Component,
    E: From<<CL as ConvertSaveload<M>>::Error>,
    SN: GenericReadStorage<Component = CN>,
    CN: ConvertSaveload<M> + Component,
    E: From<<CN as ConvertSaveload<M>>::Error>,
    SM: GenericReadStorage<Component = CM>,
    CM: ConvertSaveload<M> + Component,
    E: From<<CM as ConvertSaveload<M>>::Error>,
    SO: GenericReadStorage<Component = CO>,
    CO: ConvertSaveload<M> + Component,
    E: From<<CO as ConvertSaveload<M>>::Error>,
    SP: GenericReadStorage<Component = CP>,
    CP: ConvertSaveload<M> + Component,
    E: From<<CP as ConvertSaveload<M>>::Error>, 
[src]

type Data = (Option<CL::Data>, Option<CN::Data>, Option<CM::Data>, Option<CO::Data>, Option<CP::Data>)

impl<'a, E, M, CN, CM, CO, CP, SN, SM, SO, SP> SerializeComponents<E, M> for (SN, SM, SO, SP) where
    M: Marker,
    SN: GenericReadStorage<Component = CN>,
    CN: ConvertSaveload<M> + Component,
    E: From<<CN as ConvertSaveload<M>>::Error>,
    SM: GenericReadStorage<Component = CM>,
    CM: ConvertSaveload<M> + Component,
    E: From<<CM as ConvertSaveload<M>>::Error>,
    SO: GenericReadStorage<Component = CO>,
    CO: ConvertSaveload<M> + Component,
    E: From<<CO as ConvertSaveload<M>>::Error>,
    SP: GenericReadStorage<Component = CP>,
    CP: ConvertSaveload<M> + Component,
    E: From<<CP as ConvertSaveload<M>>::Error>, 
[src]

type Data = (Option<CN::Data>, Option<CM::Data>, Option<CO::Data>, Option<CP::Data>)

impl<'a, E, M, CM, CO, CP, SM, SO, SP> SerializeComponents<E, M> for (SM, SO, SP) where
    M: Marker,
    SM: GenericReadStorage<Component = CM>,
    CM: ConvertSaveload<M> + Component,
    E: From<<CM as ConvertSaveload<M>>::Error>,
    SO: GenericReadStorage<Component = CO>,
    CO: ConvertSaveload<M> + Component,
    E: From<<CO as ConvertSaveload<M>>::Error>,
    SP: GenericReadStorage<Component = CP>,
    CP: ConvertSaveload<M> + Component,
    E: From<<CP as ConvertSaveload<M>>::Error>, 
[src]

type Data = (Option<CM::Data>, Option<CO::Data>, Option<CP::Data>)

impl<'a, E, M, CO, CP, SO, SP> SerializeComponents<E, M> for (SO, SP) where
    M: Marker,
    SO: GenericReadStorage<Component = CO>,
    CO: ConvertSaveload<M> + Component,
    E: From<<CO as ConvertSaveload<M>>::Error>,
    SP: GenericReadStorage<Component = CP>,
    CP: ConvertSaveload<M> + Component,
    E: From<<CP as ConvertSaveload<M>>::Error>, 
[src]

type Data = (Option<CO::Data>, Option<CP::Data>)

impl<'a, E, M, CP, SP> SerializeComponents<E, M> for (SP,) where
    M: Marker,
    SP: GenericReadStorage<Component = CP>,
    CP: ConvertSaveload<M> + Component,
    E: From<<CP as ConvertSaveload<M>>::Error>, 
[src]

type Data = (Option<CP::Data>,)

impl<'a, E, M> SerializeComponents<E, M> for () where
    M: Marker
[src]

type Data = ()

Loading content...

Implementors

Loading content...