|
const VALUE *& | at (const KEY *k) |
|
const VALUE *const & | at (const KEY *k) const |
|
iterator | begin () |
|
const_iterator | begin () const |
|
size_t | count (cstring name) const |
|
| DECLARE_TYPEINFO (NodeMap, Node) |
|
bool | empty () const |
|
iterator | end () |
|
const_iterator | end () const |
|
bool | equiv (const Node &a_) const override |
|
size_t | erase (const KEY *k) |
|
iterator | erase (const_iterator f, const_iterator l) |
|
iterator | erase (const_iterator p) |
|
const_iterator | find (const KEY *k) const |
|
template<class U > |
const U * | get (const KEY *k) const |
|
cstring | node_type_name () const override |
|
bool | operator== (const Node &a) const override |
|
bool | operator== (const NodeMap &a) const |
|
elem_ref | operator[] (const KEY *k) |
|
const VALUE * | operator[] (const KEY *k) const |
|
reverse_iterator | rbegin () |
|
const_reverse_iterator | rbegin () const |
|
reverse_iterator | rend () |
|
const_reverse_iterator | rend () const |
|
size_t | size () const |
|
void | visit_children (Visitor &v) const override |
|
void | visit_children (Visitor &v) override |
|
| Node (const Node &other) |
|
| Node (JSONLoader &json) |
|
| Node (Util::SourceInfo si) |
|
const Node * | apply (Visitor &&v, const Visitor_Context *ctxt=nullptr) const |
|
const Node * | apply (Visitor &v, const Visitor_Context *ctxt=nullptr) const |
|
virtual void | apply_visitor_loop_revisit (Inspector &v) const |
|
virtual void | apply_visitor_loop_revisit (Modifier &v) const |
|
virtual void | apply_visitor_loop_revisit (Transform &v) const |
|
virtual void | apply_visitor_postorder (Inspector &v) const |
|
virtual void | apply_visitor_postorder (Modifier &v) |
|
virtual const Node * | apply_visitor_postorder (Transform &v) |
|
virtual bool | apply_visitor_preorder (Inspector &v) const |
|
virtual bool | apply_visitor_preorder (Modifier &v) |
|
virtual const Node * | apply_visitor_preorder (Transform &v) |
|
virtual void | apply_visitor_revisit (Inspector &v) const |
|
virtual void | apply_visitor_revisit (Modifier &v, const Node *n) const |
|
virtual void | apply_visitor_revisit (Transform &v, const Node *n) const |
|
virtual Node * | clone () const =0 |
|
void | dbprint (std::ostream &out) const override |
|
| DECLARE_TYPEINFO_WITH_TYPEID (Node, NodeKind::Node, INode) |
|
virtual void | dump_fields (std::ostream &) const |
|
const Node * | getNode () const final |
|
Node * | getNode () final |
|
Util::SourceInfo | getSourceInfo () const override |
|
virtual int | num_children () |
|
bool | operator!= (const Node &n) const |
|
Node & | operator= (const Node &)=default |
|
Node & | operator= (Node &&)=default |
|
Util::JsonObject * | sourceInfoJsonObj () const |
|
void | sourceInfoToJSON (JSONGenerator &json) const |
|
void | toJSON (JSONGenerator &json) const override |
|
cstring | toString () const override |
|
void | traceCreation () const |
|
template<typename T > |
std::enable_if_t<!has_static_type_name_v< T >, const T * > | checkedTo () const |
|
template<typename T > |
std::enable_if_t< has_static_type_name_v< T >, const T * > | checkedTo () const |
|
| DECLARE_TYPEINFO_WITH_TYPEID (INode, NodeKind::INode) |
|
virtual void | validate () const |
|
void | print () const |
|
template<typename T > |
T & | as () |
| Tries to convert the class to type T. A BUG occurs if the cast fails.
|
|
template<typename T > |
const T & | as () const |
| Tries to convert the class to type T. A BUG occurs if the cast fails.
|
|
template<typename T > |
T * | checkedTo () |
| Performs a checked cast. A BUG occurs if the cast fails.
|
|
template<typename T > |
const T * | checkedTo () const |
| Performs a checked cast. A BUG occurs if the cast fails.
|
|
template<typename T > |
bool | is () const noexcept |
|
virtual bool | isA (TypeId typeId) const noexcept=0 |
|
template<typename T > |
const T * | to () const noexcept |
| Same as to , but returns const pointer to T.
|
|
template<typename T > |
T * | to () noexcept |
|
virtual TypeId | typeId () const noexcept=0 |
|
template<class KEY , class VALUE , template< class K, class V, class COMP, class ALLOC > class MAP = std::map, class COMP = std::less<cstring>, class ALLOC = std::allocator<std::pair<const KEY *const, const VALUE *>>>
template<class KEY , class VALUE , template< class K, class V, class COMP, class ALLOC > class MAP = std::map, class COMP = std::less<cstring>, class ALLOC = std::allocator<std::pair<const KEY *const, const VALUE *>>>
template<class KEY , class VALUE , template< class K, class V, class COMP, class ALLOC > class MAP = std::map, class COMP = std::less<cstring>, class ALLOC = std::allocator<std::pair<const KEY *const, const VALUE *>>>