10 #ifndef LLVM_CLANG_TOOLING_SYNTAX_NODES_H 11 #define LLVM_CLANG_TOOLING_SYNTAX_NODES_H 17 #include "llvm/ADT/ArrayRef.h" 18 #include "llvm/ADT/StringRef.h" 19 #include "llvm/Support/raw_ostream.h"
static bool classof(const Node *N)
{ statement1; statement2; … }
llvm::raw_ostream & operator<<(llvm::raw_ostream &OS, NodeKind K)
For debugging purposes.
static bool classof(const Node *N)
A root node for a translation unit. Parent is always null.
static bool classof(const Node *N)
FIXME: this node is temporary and will be replaced with nodes for various 'declarations' and 'declara...
An abstract node for C++ statements, e.g. 'while', 'if', etc.
A node that has children and represents a syntactic language construct.
NodeKind
A kind of a syntax node, used for implementing casts.
NodeRole
A relation between a parent and child node. Used for implementing accessors.
Dataflow Directional Tag Classes.
A leaf node points to a single token inside the expanded token stream.
static bool classof(const Node *N)
Defines the clang::TokenKind enum and support functions.