Struct adapton::engine::Art [] [src]

pub struct Art<T> { /* fields omitted */ }

Articulations: for incrementally-changing data/computation.

  • Introduced by (produced by) thunk, cell and put

  • Eliminated by (consumed by) force (and set).

The term Art stands for two things here:

  • Adapton Reference / Thunk, and

  • Articulation, for naming and discretizing incrementally-changing data (and computations).

Each art has a unique identity, its Name. Because this identity, each art permits efficient (O(1) time) hashing and equality checks.

The concept of an art abstracts over whether the producer is eager (like a ref cell) or lazy (like a thunk). One uses force to inspect both eager and lazy arts. Consequently, code that consumes structures with arts need only ever use force (not two different functions, depending on whether the art is lazy or eager).

Trait Implementations

impl<T: Clone> Clone for Art<T>
[src]

[src]

Returns a copy of the value. Read more

1.0.0
[src]

Performs copy-assignment from source. Read more

impl<T: PartialEq> PartialEq for Art<T>
[src]

[src]

This method tests for self and other values to be equal, and is used by ==. Read more

[src]

This method tests for !=.

impl<T: Eq> Eq for Art<T>
[src]

impl<T: Hash> Hash for Art<T>
[src]

[src]

Feeds this value into the given [Hasher]. Read more

1.3.0
[src]

Feeds a slice of this type into the given [Hasher]. Read more

impl<T: Debug> Debug for Art<T>
[src]

[src]

Formats the value using the given formatter. Read more

Auto Trait Implementations

impl<T> !Send for Art<T>

impl<T> !Sync for Art<T>