LLVM: llvm::yaml::KeyValueNode Class Reference (original) (raw)

A key and value pair. More...

#include "[llvm/Support/YAMLParser.h](YAMLParser%5F8h%5Fsource.html)"

Inheritance diagram for llvm::yaml::KeyValueNode:

Public Member Functions
KeyValueNode (std::unique_ptr< Document > &D)
Node * getKey ()
Parse and return the key.
Node * getValue ()
Parse and return the value.
void skip () override
Public Member Functions inherited from llvm::yaml::Node
Node (unsigned int Type, std::unique_ptr< Document > &, StringRef Anchor, StringRef Tag)
Node (const Node &)=delete
void operator= (const Node &)=delete
void * operator new (size_t Size, BumpPtrAllocator &Alloc, size_t Alignment=16) noexcept
void operator delete (void *Ptr, BumpPtrAllocator &Alloc, size_t Size) noexcept
void operator delete (void *) noexcept=delete
StringRef getAnchor () const
Get the value of the anchor attached to this node.
StringRef getRawTag () const
Get the tag as it was written in the document.
std::string getVerbatimTag () const
Get the verbatium tag for a given Node.
SMRange getSourceRange () const
void setSourceRange (SMRange SR)
Token & peekNext ()
Token getNext ()
Node * parseBlockNode ()
BumpPtrAllocator & getAllocator ()
void setError (const Twine &Message, Token &Location) const
bool failed () const
unsigned int getType () const
Additional Inherited Members
Public Types inherited from llvm::yaml::Node
enum NodeKind { NK_Null, NK_Scalar, NK_BlockScalar, NK_KeyValue, NK_Mapping, NK_Sequence, NK_Alias }
Protected Member Functions inherited from llvm::yaml::Node
~Node ()=default
Protected Attributes inherited from llvm::yaml::Node
std::unique_ptr< Document > & Doc
SMRange SourceRange

Detailed Description

A key and value pair.

While not technically a Node under the YAML representation graph, it is easier to treat them this way.

TODO: Consider making this not a child of Node.

Example: Section: .text

Definition at line 292 of file YAMLParser.h.

Constructor & Destructor Documentation

llvm::yaml::KeyValueNode::KeyValueNode ( std::unique_ptr< Document > & D) inline

Member Function Documentation

classof()

bool llvm::yaml::KeyValueNode::classof ( const Node * N) inlinestatic

getKey()

Node * KeyValueNode::getKey ( )

Parse and return the key.

This may be called multiple times.

Returns

The key, or nullptr if failed() == true.

Definition at line 2258 of file YAMLParser.cpp.

References llvm::yaml::Node::Doc, llvm::yaml::Node::getAllocator(), llvm::yaml::Node::getNext(), llvm::yaml::Token::Kind, llvm::yaml::Node::Node(), llvm::yaml::Node::parseBlockNode(), llvm::yaml::Node::peekNext(), llvm::yaml::Token::TK_BlockEnd, llvm::yaml::Token::TK_Error, llvm::yaml::Token::TK_Key, and llvm::yaml::Token::TK_Value.

Referenced by getValue(), and skip().

getValue()

Node * KeyValueNode::getValue ( )

Parse and return the value.

This may be called multiple times.

Returns

The value, or nullptr if failed() == true.

Definition at line 2283 of file YAMLParser.cpp.

References llvm::yaml::Node::Doc, llvm::yaml::Node::failed(), llvm::yaml::Node::getAllocator(), getKey(), llvm::yaml::Node::getNext(), llvm::yaml::Token::Kind, llvm::yaml::Node::Node(), llvm::yaml::Node::parseBlockNode(), llvm::yaml::Node::peekNext(), llvm::yaml::Node::setError(), llvm::yaml::Node::skip(), llvm::yaml::Token::TK_BlockEnd, llvm::yaml::Token::TK_Error, llvm::yaml::Token::TK_FlowEntry, llvm::yaml::Token::TK_FlowMappingEnd, llvm::yaml::Token::TK_Key, and llvm::yaml::Token::TK_Value.

Referenced by skip().

skip()

void llvm::yaml::KeyValueNode::skip ( ) inlineoverridevirtual

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