LLVM API Documentation

Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
llvm::yaml::Node Class Reference

Abstract base class for all Nodes. More...

#include <YAMLParser.h>

Inheritance diagram for llvm::yaml::Node:
Inheritance graph
[legend]
Collaboration diagram for llvm::yaml::Node:
Collaboration graph
[legend]

List of all members.

Public Types

enum  NodeKind {
  NK_Null, NK_Scalar, NK_KeyValue, NK_Mapping,
  NK_Sequence, NK_Alias
}

Public Member Functions

 Node (unsigned int Type, std::unique_ptr< Document > &, StringRef Anchor, StringRef Tag)
StringRef getAnchor () const
 Get the value of the anchor attached to this node. If it does not have one, getAnchor().size() will be 0.
StringRef getRawTag () const
 Get the tag as it was written in the document. This does not perform tag resolution.
std::string getVerbatimTag () const
 Get the verbatium tag for a given Node. This performs tag resoluton and substitution.
SMRange getSourceRange () const
void setSourceRange (SMRange SR)
TokenpeekNext ()
Token getNext ()
NodeparseBlockNode ()
BumpPtrAllocatorgetAllocator ()
void setError (const Twine &Message, Token &Location) const
bool failed () const
virtual void skip ()
unsigned int getType () const
void * operator new (size_t Size, BumpPtrAllocator &Alloc, size_t Alignment=16) throw ()
void operator delete (void *Ptr, BumpPtrAllocator &Alloc, size_t Size) throw ()

Protected Member Functions

void operator delete (void *) throw ()
virtual ~Node ()

Protected Attributes

std::unique_ptr< Document > & Doc
SMRange SourceRange

Detailed Description

Abstract base class for all Nodes.

Definition at line 104 of file YAMLParser.h.


Member Enumeration Documentation

Enumerator:
NK_Null 
NK_Scalar 
NK_KeyValue 
NK_Mapping 
NK_Sequence 
NK_Alias 

Definition at line 108 of file YAMLParser.h.


Constructor & Destructor Documentation

Node::Node ( unsigned int  Type,
std::unique_ptr< Document > &  D,
StringRef  Anchor,
StringRef  Tag 
)

Definition at line 1559 of file YAMLParser.cpp.

References llvm::SMLoc::getFromPointer(), peekNext(), and SourceRange.

virtual llvm::yaml::Node::~Node ( ) [inline, protected, virtual]

Definition at line 162 of file YAMLParser.h.


Member Function Documentation

bool Node::failed ( ) const

Definition at line 1630 of file YAMLParser.cpp.

Definition at line 1622 of file YAMLParser.cpp.

Get the value of the anchor attached to this node. If it does not have one, getAnchor().size() will be 0.

Definition at line 122 of file YAMLParser.h.

Definition at line 1614 of file YAMLParser.cpp.

Get the tag as it was written in the document. This does not perform tag resolution.

Definition at line 126 of file YAMLParser.h.

Referenced by getVerbatimTag().

Definition at line 132 of file YAMLParser.h.

References SourceRange.

Referenced by llvm::yaml::Stream::printError().

std::string Node::getVerbatimTag ( ) const
void llvm::yaml::Node::operator delete ( void *  Ptr,
BumpPtrAllocator Alloc,
size_t  Size 
) throw () [inline]

Definition at line 152 of file YAMLParser.h.

void llvm::yaml::Node::operator delete ( void *  ) throw () [inline, protected]

Definition at line 160 of file YAMLParser.h.

void* llvm::yaml::Node::operator new ( size_t  Size,
BumpPtrAllocator Alloc,
size_t  Alignment = 16 
) throw () [inline]

Definition at line 1618 of file YAMLParser.cpp.

References parseBlockNode().

Referenced by parseBlockNode().

Definition at line 1610 of file YAMLParser.cpp.

Referenced by Node().

void Node::setError ( const Twine Message,
Token Location 
) const

Definition at line 1626 of file YAMLParser.cpp.

Referenced by getVerbatimTag().

Definition at line 133 of file YAMLParser.h.

References SourceRange.

virtual void llvm::yaml::Node::skip ( ) [inline, virtual]

Member Data Documentation

std::unique_ptr<Document>& llvm::yaml::Node::Doc [protected]

Definition at line 157 of file YAMLParser.h.

Referenced by getVerbatimTag().


The documentation for this class was generated from the following files: