Skip to main content

PropertyValue

Enum PropertyValue 

Source
pub enum PropertyValue {
    Bool(bool),
    I64(i64),
    F64(f64),
    Str(Arc<str>),
    Color(Color),
    Vec2(Vec2),
    Custom(Arc<dyn Any + Send + Sync>),
}
Expand description

Typed property value. The Custom variant covers Rust types not enumerated here.

Variants§

§

Bool(bool)

Boolean payload.

§

I64(i64)

Signed 64-bit integer payload.

§

F64(f64)

64-bit float payload.

§

Str(Arc<str>)

Shared string payload.

§

Color(Color)

RGBA color payload.

§

Vec2(Vec2)

2-vector payload (typically a logical-pixel position or size).

§

Custom(Arc<dyn Any + Send + Sync>)

Escape hatch for types not covered by the enumerated variants. The inner Arc is shared cheaply across clones.

Implementations§

Source§

impl PropertyValue

Source

pub fn eq_value(&self, other: &Self) -> bool

Structural equality across enumerated variants.

Custom is treated as never-equal - there is no general equality across dyn Any. Treating it as always-changed is the safe conservative choice for the dirty queue (a redundant notify is fine; a missed notify is not).

Trait Implementations§

Source§

impl Clone for PropertyValue

Source§

fn clone(&self) -> PropertyValue

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for PropertyValue

Source§

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

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

impl From<&str> for PropertyValue

Source§

fn from(v: &str) -> Self

Converts to this type from the input type.
Source§

impl From<Arc<str>> for PropertyValue

Source§

fn from(v: Arc<str>) -> Self

Converts to this type from the input type.
Source§

impl From<Color> for PropertyValue

Source§

fn from(v: Color) -> Self

Converts to this type from the input type.
Source§

impl From<PropertyValue> for Arc<str>

Source§

fn from(v: PropertyValue) -> Self

Converts to this type from the input type.
Source§

impl From<PropertyValue> for Color

Source§

fn from(v: PropertyValue) -> Self

Converts to this type from the input type.
Source§

impl From<PropertyValue> for String

Source§

fn from(v: PropertyValue) -> Self

Converts to this type from the input type.
Source§

impl From<PropertyValue> for Vec2

Source§

fn from(v: PropertyValue) -> Self

Converts to this type from the input type.
Source§

impl From<PropertyValue> for bool

Inverse impls - used by crate::traits::Bindable::write to receive a typed value from the store.

These fall back to the type’s Default when the stored value has the wrong variant. Callers who want strict typing should read the cell directly and pattern-match.

Source§

fn from(v: PropertyValue) -> Self

Converts to this type from the input type.
Source§

impl From<PropertyValue> for f32

Source§

fn from(v: PropertyValue) -> Self

Converts to this type from the input type.
Source§

impl From<PropertyValue> for f64

Source§

fn from(v: PropertyValue) -> Self

Converts to this type from the input type.
Source§

impl From<PropertyValue> for i64

Source§

fn from(v: PropertyValue) -> Self

Converts to this type from the input type.
Source§

impl From<String> for PropertyValue

Source§

fn from(v: String) -> Self

Converts to this type from the input type.
Source§

impl From<Vec2> for PropertyValue

Source§

fn from(v: Vec2) -> Self

Converts to this type from the input type.
Source§

impl From<bool> for PropertyValue

Source§

fn from(v: bool) -> Self

Converts to this type from the input type.
Source§

impl From<f32> for PropertyValue

Source§

fn from(v: f32) -> Self

Converts to this type from the input type.
Source§

impl From<f64> for PropertyValue

Source§

fn from(v: f64) -> Self

Converts to this type from the input type.
Source§

impl From<i64> for PropertyValue

Source§

fn from(v: i64) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where 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.

§

impl<T> IntoResult<T> for T

§

fn into_result(self) -> Result<T, RunSystemError>

Converts this type into the system output type.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

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 T
where U: Into<T>,

Source§

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 T
where U: TryFrom<T>,

Source§

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.
§

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