Struct config_it::config::Group

source ·
pub struct Group<T> { /* private fields */ }
Expand description

Primary interface that end user may interact with

Wrap ReflectData derivative like Group<MyData>

Implementations§

source§

impl<T: Template> Group<T>

source

pub fn update(&mut self) -> bool

Fetch underlying object’s updates and apply to local cache. Returns true if there was any update available.

source

pub fn check_elem_update<U: 'static>(&mut self, e: *const U) -> bool

👎Deprecated since 0.4.0: use clear_flag instead
source

pub fn consume_update<U: 'static>(&mut self, e: *const U) -> bool

Check element update from its address, and clears dirty flag on given element. This is only meaningful when followed by Group::update call.

source

pub fn commit_elem<U: Clone + EntityTrait + Send>(&self, e: &U, notify: bool)

Commit changes on element to core context, then it will be propagated to all other groups which shares same core context.

source

pub fn watch_update(&self) -> WatchUpdate

Clones new update receiver channel. Given channel will be notified whenever call to update() method meaningful. However, as the event can be generated manually even if there’s no actual update, it’s not recommended to make critical logics rely on this signal.

source

pub fn watch_update_with_event_broadcast(&self) -> WatchUpdate

Spawns new broadcast receiver, and forcibly generates update event.

This is useful when you want to make sure that first monitoring event is always triggered, however, note that this method will incur all other watchdogs to be notified as well.

source

pub fn mark_all_elem_dirty(&mut self)

Mark all elements dirty. Next call to Group::update() may not return true if there wasn’t any actual update, however, every call to [Group::clear_flag()] for each elements will return true.

source

pub fn mark_group_dirty(&mut self)

Mark this group dirty. Next call to update() method will return true, regardless of whether there’s any actual update.

source

pub fn mark_dirty<U: 'static>(&mut self, elem: *const U)

Mark given element dirty.

source

pub fn get_metadata<U: 'static>(&self, elem: *const U) -> Arc<Metadata>

Get generated metadata of given element

source

pub fn get_path(&self) -> Arc<Vec<CompactString>>

Get instance path of self. This value is same as the list of tokens that you have provided to [crate::Storage::create_group] method.

Trait Implementations§

source§

impl<T: Clone> Clone for Group<T>

source§

fn clone(&self) -> Self

Returns a copy 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<T: Debug> Debug for Group<T>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<T> Deref for Group<T>

§

type Target = T

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.
source§

impl<T> DerefMut for Group<T>

source§

fn deref_mut(&mut self) -> &mut Self::Target

Mutably dereferences the value.

Auto Trait Implementations§

§

impl<T> !RefUnwindSafe for Group<T>

§

impl<T> Send for Group<T>where T: Send,

§

impl<T> Sync for Group<T>where T: Sync,

§

impl<T> Unpin for Group<T>where T: Unpin,

§

impl<T> !UnwindSafe for Group<T>

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> DynClone for Twhere T: Clone,

source§

fn __clone_box(&self, _: Private) -> *mut ()

source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.