pub fn define_symbol_value<Atom: Into<AtomId>, Cell: Into<CellRef>>(atom: Atom, value: Cell) -> impl BindingMonad<Binding=SmallVec<[Action; 8]>> {
    // Retrieve the atom ID
    let atom_id         = atom.into();
    let AtomId(atom_id) = atom_id;

    DefineSymbolValue {
        atom_id:    atom_id,
        value:      value.into()
    }
}
///
/// Creates a binding monad that defines a symbol to evaluate a particular cell value
///
Creates a binding monad that defines a symbol to evaluate a particular cell value
Creates a binding monad that defines a symbol to evaluate a particular cell value
pub fn define_symbol_value<Atom: Into<AtomId>, Cell: Into<CellRef>>(atom: Atom, value: Cell) -> impl BindingMonad<Binding=SmallVec<[Action; 8]>> {
    // Retrieve the atom ID
    let atom_id         = atom.into();
    let AtomId(atom_id) = atom_id;
    DefineSymbolValue {
        atom_id:    atom_id,
        value:      value.into()
    }
}
pub fn define_symbol_value < Atom : Into < AtomId > , Cell : Into < CellRef > > ( atom : Atom , value : Cell ) -> impl BindingMonad < Binding = SmallVec < [ Action ; 8 ] > > { // Retrieve the atom ID let atom_id = atom . into ( ) ; let AtomId ( atom_id ) = atom_id ; DefineSymbolValue { atom_id : atom_id , value : value . into ( ) } }
Creates a binding monad that defines a symbol to evaluate a particular cell value
Creates a binding monad that defines a symbol to evaluate a particular cell value
atom
Atom
value
Cell
atom
Atom
value
Cell