Trait keypath::internals::RawKeyable [−][src]
pub trait RawKeyable: 'static { fn as_any(&self) -> &dyn Any; fn as_any_mut(&mut self) -> &mut dyn Any; fn get_field(
&self,
ident: &[PathComponent]
) -> Result<&dyn RawKeyable, FieldError>; fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>; }
Expand description
A trait for types that expose their properties via keypath.
All of the dynamism and traversal logic happens here; its split into a separate trait for object safety.
Required methods
fn as_any_mut(&mut self) -> &mut dyn Any
fn get_field(
&self,
ident: &[PathComponent]
) -> Result<&dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
Implementations on Foreign Types
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
impl<A: RawKeyable, B: RawKeyable, C: RawKeyable, D: RawKeyable, E: RawKeyable> RawKeyable for (A, B, C, D, E)
impl<A: RawKeyable, B: RawKeyable, C: RawKeyable, D: RawKeyable, E: RawKeyable> RawKeyable for (A, B, C, D, E)
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
impl<A: RawKeyable, B: RawKeyable, C: RawKeyable, D: RawKeyable, E: RawKeyable, F: RawKeyable> RawKeyable for (A, B, C, D, E, F)
impl<A: RawKeyable, B: RawKeyable, C: RawKeyable, D: RawKeyable, E: RawKeyable, F: RawKeyable> RawKeyable for (A, B, C, D, E, F)
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
impl<A: RawKeyable, B: RawKeyable, C: RawKeyable, D: RawKeyable, E: RawKeyable, F: RawKeyable, G: RawKeyable> RawKeyable for (A, B, C, D, E, F, G)
impl<A: RawKeyable, B: RawKeyable, C: RawKeyable, D: RawKeyable, E: RawKeyable, F: RawKeyable, G: RawKeyable> RawKeyable for (A, B, C, D, E, F, G)
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
impl<A: RawKeyable, B: RawKeyable, C: RawKeyable, D: RawKeyable, E: RawKeyable, F: RawKeyable, G: RawKeyable, H: RawKeyable> RawKeyable for (A, B, C, D, E, F, G, H)
impl<A: RawKeyable, B: RawKeyable, C: RawKeyable, D: RawKeyable, E: RawKeyable, F: RawKeyable, G: RawKeyable, H: RawKeyable> RawKeyable for (A, B, C, D, E, F, G, H)
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
impl<A: RawKeyable, B: RawKeyable, C: RawKeyable, D: RawKeyable, E: RawKeyable, F: RawKeyable, G: RawKeyable, H: RawKeyable, I: RawKeyable> RawKeyable for (A, B, C, D, E, F, G, H, I)
impl<A: RawKeyable, B: RawKeyable, C: RawKeyable, D: RawKeyable, E: RawKeyable, F: RawKeyable, G: RawKeyable, H: RawKeyable, I: RawKeyable> RawKeyable for (A, B, C, D, E, F, G, H, I)
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
impl<A: RawKeyable, B: RawKeyable, C: RawKeyable, D: RawKeyable, E: RawKeyable, F: RawKeyable, G: RawKeyable, H: RawKeyable, I: RawKeyable, J: RawKeyable> RawKeyable for (A, B, C, D, E, F, G, H, I, J)
impl<A: RawKeyable, B: RawKeyable, C: RawKeyable, D: RawKeyable, E: RawKeyable, F: RawKeyable, G: RawKeyable, H: RawKeyable, I: RawKeyable, J: RawKeyable> RawKeyable for (A, B, C, D, E, F, G, H, I, J)
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
impl<A: RawKeyable, B: RawKeyable, C: RawKeyable, D: RawKeyable, E: RawKeyable, F: RawKeyable, G: RawKeyable, H: RawKeyable, I: RawKeyable, J: RawKeyable, K: RawKeyable> RawKeyable for (A, B, C, D, E, F, G, H, I, J, K)
impl<A: RawKeyable, B: RawKeyable, C: RawKeyable, D: RawKeyable, E: RawKeyable, F: RawKeyable, G: RawKeyable, H: RawKeyable, I: RawKeyable, J: RawKeyable, K: RawKeyable> RawKeyable for (A, B, C, D, E, F, G, H, I, J, K)
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
impl<A: RawKeyable, B: RawKeyable, C: RawKeyable, D: RawKeyable, E: RawKeyable, F: RawKeyable, G: RawKeyable, H: RawKeyable, I: RawKeyable, J: RawKeyable, K: RawKeyable, L: RawKeyable> RawKeyable for (A, B, C, D, E, F, G, H, I, J, K, L)
impl<A: RawKeyable, B: RawKeyable, C: RawKeyable, D: RawKeyable, E: RawKeyable, F: RawKeyable, G: RawKeyable, H: RawKeyable, I: RawKeyable, J: RawKeyable, K: RawKeyable, L: RawKeyable> RawKeyable for (A, B, C, D, E, F, G, H, I, J, K, L)
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>
fn get_field_mut(
&mut self,
ident: &[PathComponent]
) -> Result<&mut dyn RawKeyable, FieldError>