[][src]Function left_right::new

pub fn new<T, O>() -> (WriteHandle<T, O>, ReadHandle<T>) where
    T: Absorb<O> + Default

Construct a new write and read handle pair from the data structure default.

The type must implement Default so we can construct two empty instances. You must ensure that the trait's Default implementation is deterministic and idempotent - that is to say, two instances created by it must behave exactly the same. An example of where this is problematic is HashMap - due to RandomState, two instances returned by Default may have a different iteration order.

If your type's Default implementation does not guarantee this, you can use new_from_empty, which relies on Clone instead of Default.