LLVM  14.0.0git
Public Member Functions | Static Public Member Functions | List of all members
llvm::yaml::ScalarNode Class Referencefinal

A scalar node is an opaque datum that can be presented as a series of zero or more Unicode scalar values. More...

#include "llvm/Support/YAMLParser.h"

Inheritance diagram for llvm::yaml::ScalarNode:
Inheritance graph
Collaboration diagram for llvm::yaml::ScalarNode:
Collaboration graph

Public Member Functions

 ScalarNode (std::unique_ptr< Document > &D, StringRef Anchor, StringRef Tag, StringRef Val)
StringRef getRawValue () const
StringRef getValue (SmallVectorImpl< char > &Storage) const
 Gets the value of this node as a StringRef. More...
- 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. More...
StringRef getRawTag () const
 Get the tag as it was written in the document. More...
std::string getVerbatimTag () const
 Get the verbatium tag for a given Node. More...
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

Static Public Member Functions

static bool classof (const Node *N)

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 scalar node is an opaque datum that can be presented as a series of zero or more Unicode scalar values.

Example: Adena

Definition at line 212 of file YAMLParser.h.

Constructor & Destructor Documentation

◆ ScalarNode()

llvm::yaml::ScalarNode::ScalarNode ( std::unique_ptr< Document > &  D,
StringRef  Anchor,
StringRef  Tag,
StringRef  Val 

Definition at line 216 of file YAMLParser.h.

Member Function Documentation

◆ classof()

static bool llvm::yaml::ScalarNode::classof ( const Node N)

Definition at line 236 of file YAMLParser.h.

References N, and llvm::yaml::Node::NK_Scalar.

◆ getRawValue()

StringRef llvm::yaml::ScalarNode::getRawValue ( ) const

Definition at line 227 of file YAMLParser.h.

◆ getValue()

StringRef ScalarNode::getValue ( SmallVectorImpl< char > &  Storage) const

Gets the value of this node as a StringRef.

Storageis used to store the content of the returned StringRef if it requires any modification from how it appeared in the source. This happens with escaped characters and multi-line literals.

Definition at line 1959 of file YAMLParser.cpp.

References llvm::append_range(), llvm::StringRef::begin(), llvm::SmallVectorImpl< T >::clear(), llvm::StringRef::find(), llvm::StringRef::find_first_of(), i, llvm::StringRef::npos, llvm::SmallVectorImpl< T >::reserve(), llvm::StringRef::size(), and llvm::StringRef::substr().

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