Trait bevy::reflect::GetField

source ·
pub trait GetField {
    // Required methods
    fn get_field<T>(&self, name: &str) -> Option<&T>
       where T: Reflect;
    fn get_field_mut<T>(&mut self, name: &str) -> Option<&mut T>
       where T: Reflect;
}
Expand description

A convenience trait which combines fetching and downcasting of struct fields.

Example

use bevy_reflect::{GetField, Reflect};

#[derive(Reflect)]
struct Foo {
    bar: String,
}

let mut foo = Foo { bar: "Hello, world!".to_string() };

foo.get_field_mut::<String>("bar").unwrap().truncate(5);
assert_eq!(foo.get_field::<String>("bar"), Some(&"Hello".to_string()));

Required Methods§

source

fn get_field<T>(&self, name: &str) -> Option<&T>
where T: Reflect,

Returns a reference to the value of the field named name, downcast to T.

source

fn get_field_mut<T>(&mut self, name: &str) -> Option<&mut T>
where T: Reflect,

Returns a mutable reference to the value of the field named name, downcast to T.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl GetField for dyn Struct

source§

impl<S> GetField for S
where S: Struct,