BundleRules

Trait BundleRules 

Source
pub trait BundleRules {
    const DEFAULT_PRIORITY: usize;

    // Required method
    fn component_rules(
        world: &mut World,
        registry: &mut ReplicationRegistry,
    ) -> Vec<ComponentRule>;
}
Expand description

Component replication rules associated with a bundle and its priority.

See AppRuleExt::replicate_bundle for more details.

Required Associated Constants§

Source

const DEFAULT_PRIORITY: usize

Priority when registered with AppRuleExt::replicate_bundle.

Equals the number of components in a bundle.

Required Methods§

Source

fn component_rules( world: &mut World, registry: &mut ReplicationRegistry, ) -> Vec<ComponentRule>

Creates the associated component replication rules and registers their functions in ReplicationRegistry.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<C0: Component<Mutability: MutWrite<C0>> + Serialize + DeserializeOwned> BundleRules for (C0,)

Source§

impl<C0: Component<Mutability: MutWrite<C0>> + Serialize + DeserializeOwned, C1: Component<Mutability: MutWrite<C1>> + Serialize + DeserializeOwned> BundleRules for (C0, C1)

Source§

impl<C0: Component<Mutability: MutWrite<C0>> + Serialize + DeserializeOwned, C1: Component<Mutability: MutWrite<C1>> + Serialize + DeserializeOwned, C2: Component<Mutability: MutWrite<C2>> + Serialize + DeserializeOwned> BundleRules for (C0, C1, C2)

Source§

impl<C0: Component<Mutability: MutWrite<C0>> + Serialize + DeserializeOwned, C1: Component<Mutability: MutWrite<C1>> + Serialize + DeserializeOwned, C2: Component<Mutability: MutWrite<C2>> + Serialize + DeserializeOwned, C3: Component<Mutability: MutWrite<C3>> + Serialize + DeserializeOwned> BundleRules for (C0, C1, C2, C3)

Source§

impl<C0: Component<Mutability: MutWrite<C0>> + Serialize + DeserializeOwned, C1: Component<Mutability: MutWrite<C1>> + Serialize + DeserializeOwned, C2: Component<Mutability: MutWrite<C2>> + Serialize + DeserializeOwned, C3: Component<Mutability: MutWrite<C3>> + Serialize + DeserializeOwned, C4: Component<Mutability: MutWrite<C4>> + Serialize + DeserializeOwned> BundleRules for (C0, C1, C2, C3, C4)

Source§

impl<C0: Component<Mutability: MutWrite<C0>> + Serialize + DeserializeOwned, C1: Component<Mutability: MutWrite<C1>> + Serialize + DeserializeOwned, C2: Component<Mutability: MutWrite<C2>> + Serialize + DeserializeOwned, C3: Component<Mutability: MutWrite<C3>> + Serialize + DeserializeOwned, C4: Component<Mutability: MutWrite<C4>> + Serialize + DeserializeOwned, C5: Component<Mutability: MutWrite<C5>> + Serialize + DeserializeOwned> BundleRules for (C0, C1, C2, C3, C4, C5)

Source§

impl<C0: Component<Mutability: MutWrite<C0>> + Serialize + DeserializeOwned, C1: Component<Mutability: MutWrite<C1>> + Serialize + DeserializeOwned, C2: Component<Mutability: MutWrite<C2>> + Serialize + DeserializeOwned, C3: Component<Mutability: MutWrite<C3>> + Serialize + DeserializeOwned, C4: Component<Mutability: MutWrite<C4>> + Serialize + DeserializeOwned, C5: Component<Mutability: MutWrite<C5>> + Serialize + DeserializeOwned, C6: Component<Mutability: MutWrite<C6>> + Serialize + DeserializeOwned> BundleRules for (C0, C1, C2, C3, C4, C5, C6)

Source§

impl<C0: Component<Mutability: MutWrite<C0>> + Serialize + DeserializeOwned, C1: Component<Mutability: MutWrite<C1>> + Serialize + DeserializeOwned, C2: Component<Mutability: MutWrite<C2>> + Serialize + DeserializeOwned, C3: Component<Mutability: MutWrite<C3>> + Serialize + DeserializeOwned, C4: Component<Mutability: MutWrite<C4>> + Serialize + DeserializeOwned, C5: Component<Mutability: MutWrite<C5>> + Serialize + DeserializeOwned, C6: Component<Mutability: MutWrite<C6>> + Serialize + DeserializeOwned, C7: Component<Mutability: MutWrite<C7>> + Serialize + DeserializeOwned> BundleRules for (C0, C1, C2, C3, C4, C5, C6, C7)

Source§

impl<C0: Component<Mutability: MutWrite<C0>> + Serialize + DeserializeOwned, C1: Component<Mutability: MutWrite<C1>> + Serialize + DeserializeOwned, C2: Component<Mutability: MutWrite<C2>> + Serialize + DeserializeOwned, C3: Component<Mutability: MutWrite<C3>> + Serialize + DeserializeOwned, C4: Component<Mutability: MutWrite<C4>> + Serialize + DeserializeOwned, C5: Component<Mutability: MutWrite<C5>> + Serialize + DeserializeOwned, C6: Component<Mutability: MutWrite<C6>> + Serialize + DeserializeOwned, C7: Component<Mutability: MutWrite<C7>> + Serialize + DeserializeOwned, C8: Component<Mutability: MutWrite<C8>> + Serialize + DeserializeOwned> BundleRules for (C0, C1, C2, C3, C4, C5, C6, C7, C8)

Source§

impl<C0: Component<Mutability: MutWrite<C0>> + Serialize + DeserializeOwned, C1: Component<Mutability: MutWrite<C1>> + Serialize + DeserializeOwned, C2: Component<Mutability: MutWrite<C2>> + Serialize + DeserializeOwned, C3: Component<Mutability: MutWrite<C3>> + Serialize + DeserializeOwned, C4: Component<Mutability: MutWrite<C4>> + Serialize + DeserializeOwned, C5: Component<Mutability: MutWrite<C5>> + Serialize + DeserializeOwned, C6: Component<Mutability: MutWrite<C6>> + Serialize + DeserializeOwned, C7: Component<Mutability: MutWrite<C7>> + Serialize + DeserializeOwned, C8: Component<Mutability: MutWrite<C8>> + Serialize + DeserializeOwned, C9: Component<Mutability: MutWrite<C9>> + Serialize + DeserializeOwned> BundleRules for (C0, C1, C2, C3, C4, C5, C6, C7, C8, C9)

Source§

impl<C0: Component<Mutability: MutWrite<C0>> + Serialize + DeserializeOwned, C1: Component<Mutability: MutWrite<C1>> + Serialize + DeserializeOwned, C2: Component<Mutability: MutWrite<C2>> + Serialize + DeserializeOwned, C3: Component<Mutability: MutWrite<C3>> + Serialize + DeserializeOwned, C4: Component<Mutability: MutWrite<C4>> + Serialize + DeserializeOwned, C5: Component<Mutability: MutWrite<C5>> + Serialize + DeserializeOwned, C6: Component<Mutability: MutWrite<C6>> + Serialize + DeserializeOwned, C7: Component<Mutability: MutWrite<C7>> + Serialize + DeserializeOwned, C8: Component<Mutability: MutWrite<C8>> + Serialize + DeserializeOwned, C9: Component<Mutability: MutWrite<C9>> + Serialize + DeserializeOwned, C10: Component<Mutability: MutWrite<C10>> + Serialize + DeserializeOwned> BundleRules for (C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10)

Source§

impl<C0: Component<Mutability: MutWrite<C0>> + Serialize + DeserializeOwned, C1: Component<Mutability: MutWrite<C1>> + Serialize + DeserializeOwned, C2: Component<Mutability: MutWrite<C2>> + Serialize + DeserializeOwned, C3: Component<Mutability: MutWrite<C3>> + Serialize + DeserializeOwned, C4: Component<Mutability: MutWrite<C4>> + Serialize + DeserializeOwned, C5: Component<Mutability: MutWrite<C5>> + Serialize + DeserializeOwned, C6: Component<Mutability: MutWrite<C6>> + Serialize + DeserializeOwned, C7: Component<Mutability: MutWrite<C7>> + Serialize + DeserializeOwned, C8: Component<Mutability: MutWrite<C8>> + Serialize + DeserializeOwned, C9: Component<Mutability: MutWrite<C9>> + Serialize + DeserializeOwned, C10: Component<Mutability: MutWrite<C10>> + Serialize + DeserializeOwned, C11: Component<Mutability: MutWrite<C11>> + Serialize + DeserializeOwned> BundleRules for (C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11)

Source§

impl<C0: Component<Mutability: MutWrite<C0>> + Serialize + DeserializeOwned, C1: Component<Mutability: MutWrite<C1>> + Serialize + DeserializeOwned, C2: Component<Mutability: MutWrite<C2>> + Serialize + DeserializeOwned, C3: Component<Mutability: MutWrite<C3>> + Serialize + DeserializeOwned, C4: Component<Mutability: MutWrite<C4>> + Serialize + DeserializeOwned, C5: Component<Mutability: MutWrite<C5>> + Serialize + DeserializeOwned, C6: Component<Mutability: MutWrite<C6>> + Serialize + DeserializeOwned, C7: Component<Mutability: MutWrite<C7>> + Serialize + DeserializeOwned, C8: Component<Mutability: MutWrite<C8>> + Serialize + DeserializeOwned, C9: Component<Mutability: MutWrite<C9>> + Serialize + DeserializeOwned, C10: Component<Mutability: MutWrite<C10>> + Serialize + DeserializeOwned, C11: Component<Mutability: MutWrite<C11>> + Serialize + DeserializeOwned, C12: Component<Mutability: MutWrite<C12>> + Serialize + DeserializeOwned> BundleRules for (C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11, C12)

Source§

impl<C0: Component<Mutability: MutWrite<C0>> + Serialize + DeserializeOwned, C1: Component<Mutability: MutWrite<C1>> + Serialize + DeserializeOwned, C2: Component<Mutability: MutWrite<C2>> + Serialize + DeserializeOwned, C3: Component<Mutability: MutWrite<C3>> + Serialize + DeserializeOwned, C4: Component<Mutability: MutWrite<C4>> + Serialize + DeserializeOwned, C5: Component<Mutability: MutWrite<C5>> + Serialize + DeserializeOwned, C6: Component<Mutability: MutWrite<C6>> + Serialize + DeserializeOwned, C7: Component<Mutability: MutWrite<C7>> + Serialize + DeserializeOwned, C8: Component<Mutability: MutWrite<C8>> + Serialize + DeserializeOwned, C9: Component<Mutability: MutWrite<C9>> + Serialize + DeserializeOwned, C10: Component<Mutability: MutWrite<C10>> + Serialize + DeserializeOwned, C11: Component<Mutability: MutWrite<C11>> + Serialize + DeserializeOwned, C12: Component<Mutability: MutWrite<C12>> + Serialize + DeserializeOwned, C13: Component<Mutability: MutWrite<C13>> + Serialize + DeserializeOwned> BundleRules for (C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11, C12, C13)

Source§

impl<C0: Component<Mutability: MutWrite<C0>> + Serialize + DeserializeOwned, C1: Component<Mutability: MutWrite<C1>> + Serialize + DeserializeOwned, C2: Component<Mutability: MutWrite<C2>> + Serialize + DeserializeOwned, C3: Component<Mutability: MutWrite<C3>> + Serialize + DeserializeOwned, C4: Component<Mutability: MutWrite<C4>> + Serialize + DeserializeOwned, C5: Component<Mutability: MutWrite<C5>> + Serialize + DeserializeOwned, C6: Component<Mutability: MutWrite<C6>> + Serialize + DeserializeOwned, C7: Component<Mutability: MutWrite<C7>> + Serialize + DeserializeOwned, C8: Component<Mutability: MutWrite<C8>> + Serialize + DeserializeOwned, C9: Component<Mutability: MutWrite<C9>> + Serialize + DeserializeOwned, C10: Component<Mutability: MutWrite<C10>> + Serialize + DeserializeOwned, C11: Component<Mutability: MutWrite<C11>> + Serialize + DeserializeOwned, C12: Component<Mutability: MutWrite<C12>> + Serialize + DeserializeOwned, C13: Component<Mutability: MutWrite<C13>> + Serialize + DeserializeOwned, C14: Component<Mutability: MutWrite<C14>> + Serialize + DeserializeOwned> BundleRules for (C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11, C12, C13, C14)

Implementors§