| << ValueRange |
| ValueItem >> |
|
This is a box that contains another value. It cannot be stored or loaded in CRL, instead, the value contained will be stored and read. This is handy for attributes of which you do not know the value when creating the CRL structure for it: simply put a ValueBox with NULL there and replace the NULL by the value you want later. For convenience, the box may be given a name().
Access is transparent: all next_index(), nth(), etc. stuff is passed to the child. set_nth requests will create a new ValueVector on the fly if the box still contains NULL. Similarly, set_sym will generate a new ValueMap on the fly.
A related set of classes, CrlValueRef, implements an lvalue, while this is like an SML reference/pointer.
Immediate super class: Value
| Value * | child |
| symbol_t | name |
| int | Object:: | class_id |
| int | Object:: | heap_sig |
| int | Object:: | ref_count |
| UserData | Object:: | user_data |
| CrlValueBox | () | |||
| CrlValueBox | (symbol_t) | |||
| CrlValueBox | (symbol_t, Value *) | |||
| CrlValueBox | (ValueBox const &) | |||
| void | operator= | (ValueBox const &) | ||
| bool | append | (Value * value) | ||
| bool | append | (Item * value) | ||
| bool | append | (char const * value) | ||
| bool | append | (unsigned_t value) | ||
| bool | append_float | (float_t value) | ||
| bool | append_signed | (signed_t value) | ||
| bool | append_symbol | (symbol_t value) | ||
| Value * | child | () const | ||
| Value * | find | (char const * key) const | ||
| bool | find | (float_t & result, char const * key) const | ||
| bool | find | (float_t & result, Item const * key) const | ||
| bool | find | (float_t & result, Value const * key) const | ||
| Value * | find | (Item const * key) const | ||
| bool | find | (signed_t & result, char const * key) const | ||
| bool | find | (signed_t & result, Item const * key) const | ||
| bool | find | (signed_t & result, Value const * key) const | ||
| bool | find | (unsigned_t & result, char const * key) const | ||
| bool | find | (unsigned_t & result, Item const * key) const | ||
| bool | find | (unsigned_t & result, Value const * key) const | ||
| Value * | find | (Value const * key) const | ||
| bool | find_bool | (char const * key) const | ||
| bool | find_bool | (Item const * key) const | ||
| bool | find_bool | (Value const * key) const | ||
| bool | find_bool_sym | (symbol_t key) const | ||
| byte_t | find_byte | (char const * key) const | ||
| byte_t | find_byte | (Item const * key) const | ||
| byte_t | find_byte | (Value const * key) const | ||
| byte_t | find_byte_sym | (symbol_t key) const | ||
| int | find_int | (char const * key) const | ||
| int | find_int | (Item const * key) const | ||
| int | find_int | (Value const * key) const | ||
| int | find_int_sym | (symbol_t key) const | ||
| Item * | find_item | (char const * key) const | ||
| Item * | find_item | (Item const * key) const | ||
| Item * | find_item | (Value const * key) const | ||
| Item * | find_item_sym | (symbol_t key) const | ||
| char const * | find_string | (char const * key) const | ||
| char const * | find_string | (Item const * key) const | ||
| char const * | find_string | (Value const * key) const | ||
| char const * | find_string_sym | (symbol_t key) const | ||
| bool | find_sym | (float_t & result, symbol_t key) const | ||
| bool | find_sym | (signed_t & result, symbol_t key) const | ||
| Value * | find_sym | (symbol_t key) const | ||
| bool | find_sym | (unsigned_t & result, symbol_t key) const | ||
| symbol_t | find_symbol | (char const * key) const | ||
| symbol_t | find_symbol | (Item const * key) const | ||
| symbol_t | find_symbol | (Value const * key) const | ||
| symbol_t | find_symbol_sym | (symbol_t key) const | ||
| word32_t | find_word32 | (char const * key) const | ||
| word32_t | find_word32 | (Item const * key) const | ||
| word32_t | find_word32 | (Value const * key) const | ||
| word32_t | find_word32_sym | (symbol_t key) const | ||
| Value * | get | () const | ||
| bool | get | (float_t & result) const | ||
| bool | get | (signed_t & result) const | ||
| bool | get | (unsigned_t & result) const | ||
| bool | get_bool | () const | ||
| byte_t | get_byte | () const | ||
| int | get_int | () const | ||
| Item * | get_item | () const | ||
| char const * | get_string | () const | ||
| symbol_t | get_symbol | () const | ||
| word32_t | get_word32 | () const | ||
| bool | has | (char const * key) const | ||
| bool | has | (Item const * key) const | ||
| bool | has | (signed_t key) const | ||
| bool | has | (Value const * key) const | ||
| bool | has_sym | (symbol_t key) const | ||
| bool | invalidate | () | ||
| bool | is_special | (char const * key) const | ||
| bool | is_special | (Item const * key) const | ||
| bool | is_special | (signed_t key) const | ||
| bool | is_special | (Value const * key) const | ||
| bool | is_special_sym | (symbol_t key) const | ||
| bool | is_valid | () const | ||
| bool | is_valid_special | () const | ||
| symbol_t | name | () const | ||
| index_t | next_index | () const | ||
| Value * | nth | (signed_t key) const | ||
| bool | nth | (float_t & result, signed_t key) const | ||
| bool | nth | (signed_t & result, signed_t key) const | ||
| bool | nth | (unsigned_t & result, signed_t key) const | ||
| bool | nth_bool | (signed_t key) const | ||
| byte_t | nth_byte | (signed_t key) const | ||
| int | nth_int | (signed_t key) const | ||
| Item * | nth_item | (signed_t key) const | ||
| char const * | nth_string | (signed_t key) const | ||
| symbol_t | nth_symbol | (signed_t key) const | ||
| word32_t | nth_word32 | (signed_t key) const | ||
| bool | poke | (Value * value) | ||
| bool | poke | (Item * value) | ||
| bool | poke | (char const * value) | ||
| bool | poke | (unsigned_t value) | ||
| bool | poke_float | (float_t value) | ||
| bool | poke_once | (Value * value) | ||
| bool | poke_once | (Item * value) | ||
| bool | poke_once | (char const * value) | ||
| bool | poke_once | (unsigned_t value) | ||
| bool | poke_once_float | (float_t value) | ||
| bool | poke_once_signed | (signed_t value) | ||
| bool | poke_once_symbol | (symbol_t value) | ||
| bool | poke_signed | (signed_t value) | ||
| bool | poke_symbol | (symbol_t value) | ||
| bool | reset | (char const * key) | ||
| bool | reset | (Item const * key) | ||
| bool | reset | (signed_t key) | ||
| bool | reset | (Value const * key) | ||
| void | reset_child | () | ||
| bool | reset_sym | (symbol_t key) | ||
| bool | set | (char const * key, Value * value) | ||
| bool | set | (char const * key, Item * value) | ||
| bool | set | (Item const * key, Value * value) | ||
| bool | set | (Item const * key, Item * value) | ||
| bool | set | (Item const * key, char const * value) | ||
| bool | set | (Item const * key, unsigned_t value) | ||
| bool | set | (signed_t key, Value * value) | ||
| bool | set | (signed_t key, Item * value) | ||
| bool | set | (signed_t key, char const * value) | ||
| bool | set | (signed_t key, unsigned_t value) | ||
| bool | set | (char const * key, char const * value) | ||
| bool | set | (char const * key, unsigned_t value) | ||
| bool | set | (Value const * key, Value * value) | ||
| bool | set | (Value const * key, Item * value) | ||
| bool | set | (Value const * key, char const * value) | ||
| bool | set | (Value const * key, unsigned_t value) | ||
| void | set_child | (Value *) | ||
| bool | set_float | (char const * key, float_t value) | ||
| bool | set_float | (Item const * key, float_t value) | ||
| bool | set_float | (signed_t key, float_t value) | ||
| bool | set_float | (Value const * key, float_t value) | ||
| void | set_name | (symbol_t) | ||
| bool | set_once | (char const * key, Value * value) | ||
| bool | set_once | (char const * key, Item * value) | ||
| bool | set_once | (Item const * key, Value * value) | ||
| bool | set_once | (Item const * key, Item * value) | ||
| bool | set_once | (Item const * key, char const * value) | ||
| bool | set_once | (Item const * key, unsigned_t value) | ||
| bool | set_once | (signed_t key, Value * value) | ||
| bool | set_once | (signed_t key, Item * value) | ||
| bool | set_once | (signed_t key, char const * value) | ||
| bool | set_once | (signed_t key, unsigned_t value) | ||
| bool | set_once | (char const * key, char const * value) | ||
| bool | set_once | (char const * key, unsigned_t value) | ||
| bool | set_once | (Value const * key, Value * value) | ||
| bool | set_once | (Value const * key, Item * value) | ||
| bool | set_once | (Value const * key, char const * value) | ||
| bool | set_once | (Value const * key, unsigned_t value) | ||
| bool | set_once_float | (char const * key, float_t value) | ||
| bool | set_once_float | (Item const * key, float_t value) | ||
| bool | set_once_float | (signed_t key, float_t value) | ||
| bool | set_once_float | (Value const * key, float_t value) | ||
| bool | set_once_signed | (Item const * key, signed_t value) | ||
| bool | set_once_signed | (signed_t key, signed_t value) | ||
| bool | set_once_signed | (char const * key, signed_t value) | ||
| bool | set_once_signed | (Value const * key, signed_t value) | ||
| bool | set_once_sym | (symbol_t key, Value * value) | ||
| bool | set_once_sym | (symbol_t key, Item * value) | ||
| bool | set_once_sym | (symbol_t key, char const * value) | ||
| bool | set_once_sym | (symbol_t key, unsigned_t value) | ||
| bool | set_once_sym_float | (symbol_t key, float_t value) | ||
| bool | set_once_sym_signed | (symbol_t key, signed_t value) | ||
| bool | set_once_sym_symbol | (symbol_t key, symbol_t value) | ||
| bool | set_once_symbol | (Item const * key, symbol_t value) | ||
| bool | set_once_symbol | (signed_t key, symbol_t value) | ||
| bool | set_once_symbol | (char const * key, symbol_t value) | ||
| bool | set_once_symbol | (Value const * key, symbol_t value) | ||
| bool | set_signed | (Item const * key, signed_t value) | ||
| bool | set_signed | (signed_t key, signed_t value) | ||
| bool | set_signed | (char const * key, signed_t value) | ||
| bool | set_signed | (Value const * key, signed_t value) | ||
| bool | set_sym | (symbol_t key, Value * value) | ||
| bool | set_sym | (symbol_t key, Item * value) | ||
| bool | set_sym | (symbol_t key, char const * value) | ||
| bool | set_sym | (symbol_t key, unsigned_t value) | ||
| bool | set_sym_float | (symbol_t key, float_t value) | ||
| bool | set_sym_signed | (symbol_t key, signed_t value) | ||
| bool | set_sym_symbol | (symbol_t key, symbol_t value) | ||
| bool | set_symbol | (Item const * key, symbol_t value) | ||
| bool | set_symbol | (signed_t key, symbol_t value) | ||
| bool | set_symbol | (char const * key, symbol_t value) | ||
| bool | set_symbol | (Value const * key, symbol_t value) |
| C++: | crl_symbol_t CrlValueBox::name () const |
| C: | crl_symbol_t crl_value_box_get_name (crl_value_box_t const * self) |
Reader of slot 'name': The name of this box.
To write this slot, use set_name().
This reader must not be invoked with this == NULL.
#endif |
| C++: | void CrlValueBox::set_name (crl_symbol_t) |
| C: | void crl_value_box_set_name (crl_value_box_t * self, crl_symbol_t) |
Writer of slot 'name': The name of this box.
To read this slot, use set_name().
This writer must not be invoked with this == NULL.
#endif |
| C++: | CrlValue * CrlValueBox::child () const |
| C: | crl_value_t * crl_value_box_get_child (crl_value_box_t const * self) |
Reader of slot 'child': The child of this box.
To write this slot, use set_child()/reset_child().
This reader is NULL safe; for this == NULL, it returns NULL.
#endif |
| C++: | void CrlValueBox::set_child (CrlValue *) |
| C: | void crl_value_box_set_child (crl_value_box_t * self, crl_value_t *) |
Writer of slot 'child': The child of this box.
To read this slot, use child().
This writer must not be invoked with this == NULL.
#endif |
| C++: | void CrlValueBox::reset_child () |
| C: | void crl_value_box_reset_child (crl_value_box_t * self) |
NULL writer of slot 'child': The child of this box.
To read this slot, use child().
This writer must not be invoked with this == NULL.
#endif |
| C++: | CrlValueBox::CrlValueBox () |
| C: | crl_value_box_t * crl_value_bo |