HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Element.h File Reference
+ Include dependency graph for Element.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Element
 
class  TypedElement
 
class  ValueElement
 
class  Token
 
class  CommentElement
 
class  NewlineElement
 
class  GenericElement
 
class  StringResolver
 
class  ExceptionOrphanedElement
 

Typedefs

using ElementPtr = shared_ptr< Element >
 A shared pointer to an Element. More...
 
using ConstElementPtr = shared_ptr< const Element >
 A shared pointer to a const Element. More...
 
using TypedElementPtr = shared_ptr< TypedElement >
 A shared pointer to a TypedElement. More...
 
using ConstTypedElementPtr = shared_ptr< const TypedElement >
 A shared pointer to a const TypedElement. More...
 
using ValueElementPtr = shared_ptr< ValueElement >
 A shared pointer to a ValueElement. More...
 
using ConstValueElementPtr = shared_ptr< const ValueElement >
 A shared pointer to a const ValueElement. More...
 
using TokenPtr = shared_ptr< Token >
 A shared pointer to a Token. More...
 
using ConstTokenPtr = shared_ptr< const Token >
 A shared pointer to a const Token. More...
 
using CommentElementPtr = shared_ptr< CommentElement >
 A shared pointer to a CommentElement. More...
 
using ConstCommentElementPtr = shared_ptr< const CommentElement >
 A shared pointer to a const CommentElement. More...
 
using NewlineElementPtr = shared_ptr< NewlineElement >
 A shared pointer to a NewlineElement. More...
 
using ConstNewlineElementPtr = shared_ptr< const NewlineElement >
 A shared pointer to a const NewlineElement. More...
 
using GenericElementPtr = shared_ptr< GenericElement >
 A shared pointer to a GenericElement. More...
 
using ConstGenericElementPtr = shared_ptr< const GenericElement >
 A shared pointer to a const GenericElement. More...
 
using StringResolverPtr = shared_ptr< StringResolver >
 A shared pointer to a StringResolver. More...
 
using ElementMap = std::unordered_map< string, ElementPtr >
 A hash map from strings to elements. More...
 
using ElementPredicate = std::function< bool(ConstElementPtr)>
 A standard function taking an ElementPtr and returning a boolean. More...
 

Functions

MX_CORE_API bool targetStringsMatch (const string &target1, const string &target2)
 
MX_CORE_API string prettyPrint (ConstElementPtr elem)
 

Detailed Description

Base and generic element classes

Definition in file Element.h.

Typedef Documentation

using CommentElementPtr = shared_ptr<CommentElement>

A shared pointer to a CommentElement.

Definition at line 51 of file Element.h.

using ConstCommentElementPtr = shared_ptr<const CommentElement>

A shared pointer to a const CommentElement.

Definition at line 53 of file Element.h.

using ConstElementPtr = shared_ptr<const Element>

A shared pointer to a const Element.

Definition at line 33 of file Element.h.

using ConstGenericElementPtr = shared_ptr<const GenericElement>

A shared pointer to a const GenericElement.

Definition at line 63 of file Element.h.

using ConstNewlineElementPtr = shared_ptr<const NewlineElement>

A shared pointer to a const NewlineElement.

Definition at line 58 of file Element.h.

using ConstTokenPtr = shared_ptr<const Token>

A shared pointer to a const Token.

Definition at line 48 of file Element.h.

using ConstTypedElementPtr = shared_ptr<const TypedElement>

A shared pointer to a const TypedElement.

Definition at line 38 of file Element.h.

using ConstValueElementPtr = shared_ptr<const ValueElement>

A shared pointer to a const ValueElement.

Definition at line 43 of file Element.h.

using ElementMap = std::unordered_map<string, ElementPtr>

A hash map from strings to elements.

Definition at line 69 of file Element.h.

using ElementPredicate = std::function<bool(ConstElementPtr)>

A standard function taking an ElementPtr and returning a boolean.

Definition at line 72 of file Element.h.

using ElementPtr = shared_ptr<Element>

A shared pointer to an Element.

Definition at line 31 of file Element.h.

using GenericElementPtr = shared_ptr<GenericElement>

A shared pointer to a GenericElement.

Definition at line 61 of file Element.h.

using NewlineElementPtr = shared_ptr<NewlineElement>

A shared pointer to a NewlineElement.

Definition at line 56 of file Element.h.

using StringResolverPtr = shared_ptr<StringResolver>

A shared pointer to a StringResolver.

Definition at line 66 of file Element.h.

using TokenPtr = shared_ptr<Token>

A shared pointer to a Token.

Definition at line 46 of file Element.h.

using TypedElementPtr = shared_ptr<TypedElement>

A shared pointer to a TypedElement.

Definition at line 36 of file Element.h.

using ValueElementPtr = shared_ptr<ValueElement>

A shared pointer to a ValueElement.

Definition at line 41 of file Element.h.

Function Documentation

MX_CORE_API string prettyPrint ( ConstElementPtr  elem)

Pretty print the given element tree, calling asString recursively on each element in depth-first order.

MX_CORE_API bool targetStringsMatch ( const string target1,
const string target2 
)

Given two target strings, each containing a string array of target names, return true if they have any targets in common. An empty target string matches all targets.