[−][src]Trait vessels::reflect::Trait
Required methods
fn call(
&self,
index: MethodIndex,
args: Vec<Box<dyn Any + Send + Sync>>
) -> Result<Box<dyn Any + Send + Sync>, CallError>
&self,
index: MethodIndex,
args: Vec<Box<dyn Any + Send + Sync>>
) -> Result<Box<dyn Any + Send + Sync>, CallError>
fn call_mut(
&mut self,
index: MethodIndex,
args: Vec<Box<dyn Any + Send + Sync>>
) -> Result<Box<dyn Any + Send + Sync>, CallError>
&mut self,
index: MethodIndex,
args: Vec<Box<dyn Any + Send + Sync>>
) -> Result<Box<dyn Any + Send + Sync>, CallError>
fn call_move(
self: Box<Self>,
index: MethodIndex,
args: Vec<Box<dyn Any + Send + Sync>>
) -> Result<Box<dyn Any + Send + Sync>, CallError>
self: Box<Self>,
index: MethodIndex,
args: Vec<Box<dyn Any + Send + Sync>>
) -> Result<Box<dyn Any + Send + Sync>, CallError>
fn by_name(&self, name: &str) -> Result<MethodIndex, NameError>
fn count(&self) -> MethodIndex
fn name_of(&self, index: MethodIndex) -> Result<String, OutOfRangeError>
fn this(&self) -> TypeId
fn name(&self) -> String
fn types(&self, index: MethodIndex) -> Result<MethodTypes, OutOfRangeError>
fn supertraits(&self) -> Vec<TypeId>
Returns all supertraits in the form TypeId::of<dyn SomeTrait>
for each supertrait SomeTrait
.
fn upcast_erased(
self: Box<Self>,
ty: TypeId
) -> Result<Box<dyn Erased>, CastError>
self: Box<Self>,
ty: TypeId
) -> Result<Box<dyn Erased>, CastError>
For a TypeId
that is TypeId::of<dyn SomeTrait>
returns the erasure of a concrete type
Box<dyn SomeTrait>
which can then be downcasted into.
fn erase(self: Box<Self>) -> Box<dyn Erased>
Implementors
impl<T: Trait<T> + Reflected + ?Sized> Trait<T> for Shared<T>
[src]
fn call(
&self,
index: MethodIndex,
args: Vec<Box<dyn Any + Send + Sync>>
) -> Result<Box<dyn Any + Send + Sync>, CallError>
[src]
&self,
index: MethodIndex,
args: Vec<Box<dyn Any + Send + Sync>>
) -> Result<Box<dyn Any + Send + Sync>, CallError>
fn call_mut(
&mut self,
index: MethodIndex,
args: Vec<Box<dyn Any + Send + Sync>>
) -> Result<Box<dyn Any + Send + Sync>, CallError>
[src]
&mut self,
index: MethodIndex,
args: Vec<Box<dyn Any + Send + Sync>>
) -> Result<Box<dyn Any + Send + Sync>, CallError>
fn call_move(
self: Box<Self>,
index: MethodIndex,
args: Vec<Box<dyn Any + Send + Sync>>
) -> Result<Box<dyn Any + Send + Sync>, CallError>
[src]
self: Box<Self>,
index: MethodIndex,
args: Vec<Box<dyn Any + Send + Sync>>
) -> Result<Box<dyn Any + Send + Sync>, CallError>
fn by_name(&self, name: &str) -> Result<MethodIndex, NameError>
[src]
fn count(&self) -> MethodIndex
[src]
fn name_of(&self, index: MethodIndex) -> Result<String, OutOfRangeError>
[src]
fn this(&self) -> TypeId
[src]
fn name(&self) -> String
[src]
fn types(&self, index: MethodIndex) -> Result<MethodTypes, OutOfRangeError>
[src]
fn supertraits(&self) -> Vec<TypeId>
[src]
fn upcast_erased(
self: Box<Self>,
ty: TypeId
) -> Result<Box<dyn Erased>, CastError>
[src]
self: Box<Self>,
ty: TypeId
) -> Result<Box<dyn Erased>, CastError>