LLVM  16.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 211 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 215 of file YAMLParser.h.

References llvm::StringRef::begin(), and llvm::SMLoc::getFromPointer().

Member Function Documentation

◆ classof()

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

Definition at line 235 of file YAMLParser.h.

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

◆ getRawValue()

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

Definition at line 226 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 2016 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: