#include <variant_value.hpp>
Public Member Functions | |
variant_map (const variant_map_raw &map) | |
virtual bool | equals (variant_value_base &other) const override |
Called to determine if this variant is equal to another of the same type. More... | |
virtual bool | less_than (variant_value_base &other) const override |
Called to determine if this variant is less than another of the same type. More... | |
virtual const formula_variant::type & | get_type () const override |
Returns the id of the variant type. More... | |
virtual variant | deref_iterator (const utils::any &) const override |
Implements the dereference functionality of variant_iterator for a value of this type. More... | |
Public Member Functions inherited from wfl::variant_container< variant_map_raw > | |
variant_container (const variant_map_raw &container) | |
virtual bool | is_empty () const override |
Whether the stored value is considered empty or not. More... | |
virtual std::size_t | num_elements () const override |
Returns the number of elements in a type. More... | |
virtual bool | as_bool () const override |
Returns a bool expression of the variant value. More... | |
variant_map_raw & | get_container () |
const variant_map_raw & | get_container () const |
virtual std::string | string_cast () const override |
Returns the stored variant value in plain string form. More... | |
virtual std::string | get_serialized_string () const override |
Returns the stored variant value in formula syntax. More... | |
virtual std::string | get_debug_string (formula_seen_stack &seen, bool verbose) const override |
Returns debug info for the variant value. More... | |
bool | contains (const variant &member) const |
virtual boost::iterator_range< variant_iterator > | make_iterator () const override |
Creates an iterator pair that can be used for iteration. More... | |
virtual void | iterator_inc (utils::any &) const override |
Implements the increment functionality of variant_iterator for a value of this type. More... | |
virtual void | iterator_dec (utils::any &) const override |
Implements the decrement functionality of variant_iterator for a value of this type. More... | |
virtual bool | iterator_equals (const utils::any &first, const utils::any &second) const override |
Implements the equality functionality of variant_iterator for a value of this type. More... | |
Public Member Functions inherited from wfl::variant_value_base | |
virtual | ~variant_value_base () |
Private Member Functions | |
virtual std::string | to_string_detail (const variant_map_raw::value_type &container_val, mod_func_t mod_func) const override |
Additional Inherited Members | |
Protected Types inherited from wfl::variant_container< variant_map_raw > | |
using | mod_func_t = std::function< std::string(const variant &)> |
Protected Member Functions inherited from wfl::variant_container< variant_map_raw > | |
virtual std::string | to_string_detail (const typename T::value_type &value, mod_func_t mod_func) const=0 |
Definition at line 517 of file variant_value.hpp.
|
inlineexplicit |
Definition at line 520 of file variant_value.hpp.
|
overridevirtual |
Implements the dereference functionality of variant_iterator for a value of this type.
iter | The opaque reference that was passed to the variant_iterator by make_iterator. |
Reimplemented from wfl::variant_value_base.
Definition at line 375 of file variant_value.cpp.
References p.
|
overridevirtual |
Called to determine if this variant is equal to another of the same type.
This function is only called if get_type() returns the same result for both arguments.
Reimplemented from wfl::variant_value_base.
Definition at line 365 of file variant_value.cpp.
References wfl::variant_container< variant_map_raw >::get_container().
|
inlineoverridevirtual |
Returns the id of the variant type.
Reimplemented from wfl::variant_value_base.
Definition at line 527 of file variant_value.hpp.
|
overridevirtual |
Called to determine if this variant is less than another of the same type.
This function is only called if get_type() returns the same result for both arguments.
Reimplemented from wfl::variant_value_base.
Definition at line 370 of file variant_value.cpp.
References wfl::variant_container< variant_map_raw >::get_container().
|
overrideprivatevirtual |
Definition at line 354 of file variant_value.cpp.