![]() |
Spicy
|
Classes | |
struct | Error |
class | None |
class | Range |
class | RangeIterator |
class | Set |
class | SetIterator |
Typedefs | |
using | Properties = std::map< std::string, node::detail::PropertyValue > |
Enumerations | |
enum | ErrorPriority { ErrorPriority::High = 3, ErrorPriority::Normal = 2, ErrorPriority::Low = 1, ErrorPriority::NoError = 0 } |
Functions | |
bool | operator< (ErrorPriority x, ErrorPriority y) |
template<typename T , typename Other , IF_DERIVED_FROM(T, trait::isNode) , IF_DERIVED_FROM(Other, trait::isNode) > | |
bool | isEqual (const T *this_, const Other &other) |
template<typename X , typename F > | |
auto | filter (const hilti::node::Range< X > &x, F f) |
template<typename X , typename F > | |
auto | filter (const hilti::node::Set< X > &x, F f) |
template<typename X , typename F > | |
auto | transform (const hilti::node::Range< X > &x, F f) |
template<typename X , typename F > | |
auto | transform (const hilti::node::Set< X > &x, F f) |
node::Set< const Node > | flattenedChilds (const Node &n) |
Variables | |
const Node | none = None::create() |
Checks equality for two objects both implementing the Node
interface.
If the two objects have different types, this will return false. Otherwise it will forward to the objects equality operator.
using hilti::node::Properties = typedef std::map<std::string, node::detail::PropertyValue> |
Properties associated with an AST node. A property is a key/value pair recording node-specific, atomic information that's not represented by further child nodes.
|
strong |
Importance of reporting an error, relative to others.
auto hilti::node::filter | ( | const hilti::node::Range< X > & | x, |
F | f | ||
) |
Filters a node vector through a boolean predicate, returning a set containing the matching ones.
auto hilti::node::filter | ( | const hilti::node::Set< X > & | x, |
F | f | ||
) |
Filters a node set through a boolean predicate, returning a new set containing the matching ones.
Returns a list of all childs of specific type, descending recursively to find instance anywhere below this node.
auto hilti::node::transform | ( | const hilti::node::Range< X > & | x, |
F | f | ||
) |
Applies a function to each element of a node range, returning a new vector with the results.
auto hilti::node::transform | ( | const hilti::node::Set< X > & | x, |
F | f | ||
) |
Applies a function to each element of a node set, returning a new vector of with the results.
const Node hilti::node::none = None::create() |
Singleton.