Classes | Public Member Functions | Private Types | Private Member Functions | Private Attributes
YAML_PM::Scanner Class Reference

#include <scanner.h>

List of all members.

Classes

struct  IndentMarker
struct  SimpleKey

Public Member Functions

bool empty ()
Tokenpeek ()
void pop ()
 Scanner (std::istream &in)
 ~Scanner ()

Private Types

enum  FLOW_MARKER { FLOW_MAP, FLOW_SEQ }

Private Member Functions

bool CanInsertPotentialSimpleKey () const
void EndStream ()
void EnsureTokensInQueue ()
bool ExistsActiveSimpleKey () const
int GetFlowLevel () const
Token::TYPE GetStartTokenFor (IndentMarker::INDENT_TYPE type) const
int GetTopIndent () const
const RegExGetValueRegex () const
bool InBlockContext () const
bool InFlowContext () const
void InsertPotentialSimpleKey ()
void InvalidateSimpleKey ()
bool IsWhitespaceToBeEaten (char ch)
void PopAllIndents ()
void PopAllSimpleKeys ()
void PopIndent ()
void PopIndentToHere ()
IndentMarkerPushIndentTo (int column, IndentMarker::INDENT_TYPE type)
TokenPushToken (Token::TYPE type)
void ScanAnchorOrAlias ()
void ScanBlockEnd ()
void ScanBlockEntry ()
void ScanBlockMapSTart ()
void ScanBlockScalar ()
void ScanBlockSeqStart ()
void ScanDirective ()
void ScanDocEnd ()
void ScanDocStart ()
void ScanFlowEnd ()
void ScanFlowEntry ()
void ScanFlowStart ()
void ScanKey ()
void ScanNextToken ()
void ScanPlainScalar ()
void ScanQuotedScalar ()
void ScanTag ()
void ScanToNextToken ()
void ScanValue ()
void StartStream ()
void ThrowParserException (const std::string &msg) const
bool VerifySimpleKey ()

Private Attributes

Stream INPUT
bool m_canBeJSONFlow
bool m_endedStream
std::stack< FLOW_MARKERm_flows
ptr_vector< IndentMarkerm_indentRefs
std::stack< IndentMarker * > m_indents
bool m_simpleKeyAllowed
std::stack< SimpleKeym_simpleKeys
bool m_startedStream
std::queue< Tokenm_tokens

Detailed Description

Definition at line 24 of file scanner.h.


Member Enumeration Documentation

Enumerator:
FLOW_MAP 
FLOW_SEQ 

Definition at line 47 of file scanner.h.


Constructor & Destructor Documentation

YAML_PM::Scanner::Scanner ( std::istream &  in)

Definition at line 10 of file scanner.cpp.

Definition at line 15 of file scanner.cpp.


Member Function Documentation

Definition at line 37 of file simplekey.cpp.

Definition at line 21 of file scanner.cpp.

void YAML_PM::Scanner::EndStream ( ) [private]

Definition at line 244 of file scanner.cpp.

Definition at line 57 of file scanner.cpp.

bool YAML_PM::Scanner::ExistsActiveSimpleKey ( ) const [private]

Definition at line 48 of file simplekey.cpp.

int YAML_PM::Scanner::GetFlowLevel ( ) const [inline, private]

Definition at line 60 of file scanner.h.

Definition at line 263 of file scanner.cpp.

int YAML_PM::Scanner::GetTopIndent ( ) const [private]

Definition at line 366 of file scanner.cpp.

const RegEx & YAML_PM::Scanner::GetValueRegex ( ) const [private]

Definition at line 223 of file scanner.cpp.

bool YAML_PM::Scanner::InBlockContext ( ) const [inline, private]

Definition at line 59 of file scanner.h.

bool YAML_PM::Scanner::InFlowContext ( ) const [inline, private]

Definition at line 58 of file scanner.h.

Definition at line 60 of file simplekey.cpp.

Definition at line 87 of file simplekey.cpp.

bool YAML_PM::Scanner::IsWhitespaceToBeEaten ( char  ch) [private]

Definition at line 210 of file scanner.cpp.

Definition at line 38 of file scanner.cpp.

Definition at line 29 of file scanner.cpp.

void YAML_PM::Scanner::PopAllIndents ( ) [private]

Definition at line 331 of file scanner.cpp.

Definition at line 133 of file simplekey.cpp.

void YAML_PM::Scanner::PopIndent ( ) [private]

Definition at line 349 of file scanner.cpp.

Definition at line 307 of file scanner.cpp.

Definition at line 278 of file scanner.cpp.

Definition at line 257 of file scanner.cpp.

Definition at line 225 of file scantoken.cpp.

void YAML_PM::Scanner::ScanBlockEnd ( ) [private]

Definition at line 155 of file scantoken.cpp.

Definition at line 377 of file scantoken.cpp.

void YAML_PM::Scanner::ScanDirective ( ) [private]

Definition at line 17 of file scantoken.cpp.

void YAML_PM::Scanner::ScanDocEnd ( ) [private]

Definition at line 73 of file scantoken.cpp.

void YAML_PM::Scanner::ScanDocStart ( ) [private]

Definition at line 59 of file scantoken.cpp.

void YAML_PM::Scanner::ScanFlowEnd ( ) [private]

Definition at line 104 of file scantoken.cpp.

void YAML_PM::Scanner::ScanFlowEntry ( ) [private]

Definition at line 135 of file scantoken.cpp.

void YAML_PM::Scanner::ScanFlowStart ( ) [private]

Definition at line 87 of file scantoken.cpp.

void YAML_PM::Scanner::ScanKey ( ) [private]

Definition at line 176 of file scantoken.cpp.

void YAML_PM::Scanner::ScanNextToken ( ) [private]

Definition at line 88 of file scanner.cpp.

Definition at line 299 of file scantoken.cpp.

Definition at line 335 of file scantoken.cpp.

void YAML_PM::Scanner::ScanTag ( ) [private]

Definition at line 259 of file scantoken.cpp.

Definition at line 165 of file scanner.cpp.

void YAML_PM::Scanner::ScanValue ( ) [private]

Definition at line 196 of file scantoken.cpp.

void YAML_PM::Scanner::StartStream ( ) [private]

Definition at line 233 of file scanner.cpp.

void YAML_PM::Scanner::ThrowParserException ( const std::string &  msg) const [private]

Definition at line 377 of file scanner.cpp.

Definition at line 104 of file simplekey.cpp.


Member Data Documentation

Definition at line 115 of file scanner.h.

Definition at line 123 of file scanner.h.

Definition at line 121 of file scanner.h.

std::stack<FLOW_MARKER> YAML_PM::Scanner::m_flows [private]

Definition at line 127 of file scanner.h.

Definition at line 126 of file scanner.h.

std::stack<IndentMarker *> YAML_PM::Scanner::m_indents [private]

Definition at line 125 of file scanner.h.

Definition at line 122 of file scanner.h.

Definition at line 124 of file scanner.h.

Definition at line 121 of file scanner.h.

std::queue<Token> YAML_PM::Scanner::m_tokens [private]

Definition at line 118 of file scanner.h.


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


libpointmatcher
Author(s):
autogenerated on Thu Jun 20 2019 19:51:35