Struct object_space::TreeObjectSpace[][src]

pub struct TreeObjectSpace { /* fields omitted */ }

A thread-safe reference ObjectSpace implementation

Implementation

A TreeObjectSpace is a HashMap between a TypeId and the actual Entry structure holding the structs. Before structs are stored in Entry, they are serialized into a JSON-like structure and then flattened.

An Entry is a HashMap whose key is a flattened field and value is a BTreeMap between possible values of the field and the Vec of structs containing the corresponding value of such field.

Mutex is used sparingly to ensure blocking read and take calls do not hijack CPU cycles

Methods

impl TreeObjectSpace
[src]

Trait Implementations

impl Default for TreeObjectSpace
[src]

Returns the "default value" for a type. Read more

impl ObjectSpace for TreeObjectSpace
[src]

Add a struct to the object space. Read more

Return a copy of a struct of type T. The operation is non-blocking and will returns None if no struct satisfies condition. Read more

Return copies of all structs of type T. The operation is non-blocking and will returns None if no struct satisfies condition. Read more

Return a copy of a struct of type T. The operation blocks until such a struct is found. Read more

Remove and return a struct of type T. The operation is non-blocking and will returns None if no struct satisfies condition. Read more

Remove and return all structs of type T. The operation is non-blocking and will returns None if no struct satisfies condition. Read more

Remove and return a struct of type T. The operation blocks until such a struct is found. # Example Read more

impl RangeLookupObjectSpace<i64> for TreeObjectSpace
[src]

Given a path to an element of the struct and a range of possible values, return a copy of a struct whose specified element is within the range. The operation is non-blocking and will returns None if no struct satisfies condition. Read more

Given a path to an element of the struct and a range of possible values, return copies of all structs whose specified element is within the range. Read more

Given a path to an element of the struct and a range of possible values, return a copy of a struct whose specified element is within the range. The operation blocks until a struct satisfies the condition is found. Read more

Given a path to an element of the struct and a range of possible values, remove and return a struct whose specified element is within the range. The operation is non-blocking and will returns None if no struct satisfies condition. Read more

Given a path to an element of the struct and a range of possible values, remove and return all structs whose specified element is within the range. Read more

Given a path to an element of the struct and a range of possible values, remove and return a struct whose specified element is within the range. The operation blocks until a struct satisfies the condition is found. Read more

impl RangeLookupObjectSpace<String> for TreeObjectSpace
[src]

Given a path to an element of the struct and a range of possible values, return a copy of a struct whose specified element is within the range. The operation is non-blocking and will returns None if no struct satisfies condition. Read more

Given a path to an element of the struct and a range of possible values, return copies of all structs whose specified element is within the range. Read more

Given a path to an element of the struct and a range of possible values, return a copy of a struct whose specified element is within the range. The operation blocks until a struct satisfies the condition is found. Read more

Given a path to an element of the struct and a range of possible values, remove and return a struct whose specified element is within the range. The operation is non-blocking and will returns None if no struct satisfies condition. Read more

Given a path to an element of the struct and a range of possible values, remove and return all structs whose specified element is within the range. Read more

Given a path to an element of the struct and a range of possible values, remove and return a struct whose specified element is within the range. The operation blocks until a struct satisfies the condition is found. Read more

impl RangeLookupObjectSpace<f64> for TreeObjectSpace
[src]

Given a path to an element of the struct and a range of possible values, return a copy of a struct whose specified element is within the range. The operation is non-blocking and will returns None if no struct satisfies condition. Read more

Given a path to an element of the struct and a range of possible values, return copies of all structs whose specified element is within the range. Read more

Given a path to an element of the struct and a range of possible values, return a copy of a struct whose specified element is within the range. The operation blocks until a struct satisfies the condition is found. Read more

Given a path to an element of the struct and a range of possible values, remove and return a struct whose specified element is within the range. The operation is non-blocking and will returns None if no struct satisfies condition. Read more

Given a path to an element of the struct and a range of possible values, remove and return all structs whose specified element is within the range. Read more

Given a path to an element of the struct and a range of possible values, remove and return a struct whose specified element is within the range. The operation blocks until a struct satisfies the condition is found. Read more

impl ValueLookupObjectSpace<i64> for TreeObjectSpace
[src]

Given a path to an element of the struct and a possible value, return a copy of a struct whose specified element of the specified value. The operation is non-blocking and will returns None if no struct satisfies condition. Read more

Given a path to an element of the struct and a possible value, return copies of all structs whose specified element of the specified value. Read more

Given a path to an element of the struct and a possible value, return a copy of a struct whose specified element of the specified value. The operation is blocks until an element satisfies the condition is found. Read more

Given a path to an element of the struct and a possible value, remove and return a struct whose specified element of the specified value. The operation is non-blocking and will returns None if no struct satisfies condition. Read more

Given a path to an element of the struct and a possible value, remove and return all structs whose specified element of the specified value. Read more

Given a path to an element of the struct and a possible value, remove and return a struct whose specified element of the specified value. The operation is blocks until an element satisfies the condition is found. Read more

impl ValueLookupObjectSpace<String> for TreeObjectSpace
[src]

Given a path to an element of the struct and a possible value, return a copy of a struct whose specified element of the specified value. The operation is non-blocking and will returns None if no struct satisfies condition. Read more

Given a path to an element of the struct and a possible value, return copies of all structs whose specified element of the specified value. Read more

Given a path to an element of the struct and a possible value, return a copy of a struct whose specified element of the specified value. The operation is blocks until an element satisfies the condition is found. Read more

Given a path to an element of the struct and a possible value, remove and return a struct whose specified element of the specified value. The operation is non-blocking and will returns None if no struct satisfies condition. Read more

Given a path to an element of the struct and a possible value, remove and return all structs whose specified element of the specified value. Read more

Given a path to an element of the struct and a possible value, remove and return a struct whose specified element of the specified value. The operation is blocks until an element satisfies the condition is found. Read more

impl ValueLookupObjectSpace<bool> for TreeObjectSpace
[src]

Given a path to an element of the struct and a possible value, return a copy of a struct whose specified element of the specified value. The operation is non-blocking and will returns None if no struct satisfies condition. Read more

Given a path to an element of the struct and a possible value, return copies of all structs whose specified element of the specified value. Read more

Given a path to an element of the struct and a possible value, return a copy of a struct whose specified element of the specified value. The operation is blocks until an element satisfies the condition is found. Read more

Given a path to an element of the struct and a possible value, remove and return a struct whose specified element of the specified value. The operation is non-blocking and will returns None if no struct satisfies condition. Read more

Given a path to an element of the struct and a possible value, remove and return all structs whose specified element of the specified value. Read more

Given a path to an element of the struct and a possible value, remove and return a struct whose specified element of the specified value. The operation is blocks until an element satisfies the condition is found. Read more

impl ValueLookupObjectSpace<f64> for TreeObjectSpace
[src]

Given a path to an element of the struct and a possible value, return a copy of a struct whose specified element of the specified value. The operation is non-blocking and will returns None if no struct satisfies condition. Read more

Given a path to an element of the struct and a possible value, return copies of all structs whose specified element of the specified value. Read more

Given a path to an element of the struct and a possible value, return a copy of a struct whose specified element of the specified value. The operation is blocks until an element satisfies the condition is found. Read more

Given a path to an element of the struct and a possible value, remove and return a struct whose specified element of the specified value. The operation is non-blocking and will returns None if no struct satisfies condition. Read more

Given a path to an element of the struct and a possible value, remove and return all structs whose specified element of the specified value. Read more

Given a path to an element of the struct and a possible value, remove and return a struct whose specified element of the specified value. The operation is blocks until an element satisfies the condition is found. Read more

Auto Trait Implementations