Skip to main content

ResourceOutputsDefinition

Trait ResourceOutputsDefinition 

Source
pub trait ResourceOutputsDefinition:
    Debug
    + Send
    + Sync
    + 'static
    + Serialize
    + Deserialize {
    // Required methods
    fn resource_type() -> ResourceType
       where Self: Sized;
    fn as_any(&self) -> &dyn Any;
    fn box_clone(&self) -> Box<dyn ResourceOutputsDefinition>;
    fn outputs_eq(&self, other: &dyn ResourceOutputsDefinition) -> bool;
}
Expand description

Trait that defines the interface for all resource output types in the Alien system. This trait enables extensibility by allowing new resource output types to be registered and managed alongside built-in resource outputs.

Required Methods§

Source

fn resource_type() -> ResourceType
where Self: Sized,

Returns the resource type this output corresponds to

Source

fn as_any(&self) -> &dyn Any

Provides access to the underlying concrete type for downcasting

Source

fn box_clone(&self) -> Box<dyn ResourceOutputsDefinition>

Creates a boxed clone of this resource outputs

Source

fn outputs_eq(&self, other: &dyn ResourceOutputsDefinition) -> bool

For equality comparison between resource outputs

Trait Implementations§

Source§

impl Clone for Box<dyn ResourceOutputsDefinition>

Clone implementation for boxed ResourceOutputsDefinition trait objects

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<'typetag> Serialize for dyn ResourceOutputsDefinition + 'typetag

Source§

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

Serialize this value into the given Serde serializer. Read more
Source§

impl<'typetag> Serialize for dyn ResourceOutputsDefinition + Send + 'typetag

Source§

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

Serialize this value into the given Serde serializer. Read more
Source§

impl<'typetag> Serialize for dyn ResourceOutputsDefinition + Send + Sync + 'typetag

Source§

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

Serialize this value into the given Serde serializer. Read more
Source§

impl<'typetag> Serialize for dyn ResourceOutputsDefinition + Sync + 'typetag

Source§

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

Serialize this value into the given Serde serializer. Read more

Implementors§