pub struct BindableDictionary<K: Eq + Hash + Clone + Display + 'static, V: PropertyValue> { /* private fields */ }Expand description
A notifying dictionary that bindings can index into (Items[key]): a
FerroDictionary together with the untyped change event that binding
indexers subscribe to.
As a model object it has identity equality.
Implementations§
Source§impl<K: Eq + Hash + Clone + Display + 'static, V: PropertyValue> BindableDictionary<K, V>
impl<K: Eq + Hash + Clone + Display + 'static, V: PropertyValue> BindableDictionary<K, V>
Sourcepub fn new(entries: impl IntoIterator<Item = (K, V)>) -> Rc<Self>
pub fn new(entries: impl IntoIterator<Item = (K, V)>) -> Rc<Self>
Creates a dictionary with the given entries.
Sourcepub fn items(&self) -> &FerroDictionary<K, V>
pub fn items(&self) -> &FerroDictionary<K, V>
The typed dictionary.
Trait Implementations§
Source§impl<K: Eq + Hash + Clone + Display + 'static, V: PropertyValue> IBindableIndexer for BindableDictionary<K, V>
impl<K: Eq + Hash + Clone + Display + 'static, V: PropertyValue> IBindableIndexer for BindableDictionary<K, V>
Source§fn index_parameter_types(&self) -> Vec<ValueType>
fn index_parameter_types(&self) -> Vec<ValueType>
The types of the index parameters, in order.
Source§fn value_type(&self) -> ValueType
fn value_type(&self) -> ValueType
The type of the values of the indexer.
Source§fn get(
&self,
arguments: &[BoxedValue],
) -> Result<Option<BoxedValue>, BindingError>
fn get( &self, arguments: &[BoxedValue], ) -> Result<Option<BoxedValue>, BindingError>
Reads the value at
arguments, which hold exactly the declared
parameter types. An error is what the getter of a managed indexer
throws: a missing key, an index out of range.Source§fn set(
&self,
arguments: &[BoxedValue],
value: Option<&BoxedValue>,
) -> Result<bool, BindingError>
fn set( &self, arguments: &[BoxedValue], value: Option<&BoxedValue>, ) -> Result<bool, BindingError>
Writes the value at
arguments. Returns Ok(false) if the indexer
has no setter.Source§impl<K: Eq + Hash + Clone + Display + 'static, V: PropertyValue> INotifyCollectionChanged for BindableDictionary<K, V>
impl<K: Eq + Hash + Clone + Display + 'static, V: PropertyValue> INotifyCollectionChanged for BindableDictionary<K, V>
Source§fn collection_changed(&self) -> &Event<CollectionChange>
fn collection_changed(&self) -> &Event<CollectionChange>
The event raised when the collection changes.
Source§impl<K: Eq + Hash + Clone + Display + 'static, V: PropertyValue> INotifyPropertyChanged for BindableDictionary<K, V>
impl<K: Eq + Hash + Clone + Display + 'static, V: PropertyValue> INotifyPropertyChanged for BindableDictionary<K, V>
Source§fn property_changed(&self) -> &Event<str>
fn property_changed(&self) -> &Event<str>
The event raised when a property value changes.
Source§fn as_notify_property_changing(&self) -> Option<&dyn INotifyPropertyChanging>
fn as_notify_property_changing(&self) -> Option<&dyn INotifyPropertyChanging>
The object as
INotifyPropertyChanging, when it also raises the event of a property
that is about to change; None by default. Read moreAuto Trait Implementations§
impl<K, V> !Freeze for BindableDictionary<K, V>
impl<K, V> !RefUnwindSafe for BindableDictionary<K, V>
impl<K, V> !Send for BindableDictionary<K, V>
impl<K, V> !Sync for BindableDictionary<K, V>
impl<K, V> !UnwindSafe for BindableDictionary<K, V>
impl<K, V> Unpin for BindableDictionary<K, V>where
FerroDictionary<K, V>: Unpin,
impl<K, V> UnsafeUnpin for BindableDictionary<K, V>where
FerroDictionary<K, V>: UnsafeUnpin,
Blanket Implementations§
Source§impl<T> AnyValue for Twhere
T: PartialEq + 'static,
impl<T> AnyValue for Twhere
T: PartialEq + 'static,
fn any_value_as_any(&self) -> &(dyn Any + 'static)
fn any_value_eq(&self, other: &(dyn AnyValue + 'static)) -> bool
fn any_value_type_name(&self) -> &'static str
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> ClassDefaults for Twhere
T: ?Sized,
impl<T> ClassDefaults for Twhere
T: ?Sized,
Source§fn static_constructor()
fn static_constructor()
The static constructor of a type: work done once per thread, after
the properties of the type are registered and before its first
instance exists (class handlers,
affects_render, metadata
overrides). Read more