NCBI C++ ToolKit
Public Types | Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
CQualParser Class Reference

Search Toolkit Book for CQualParser

#include "qual_parse.hpp"
(Private to src/objtools/flatfile.)

+ Collaboration diagram for CQualParser:

Public Types

using DATA = vector< string >
 

Public Member Functions

 CQualParser (Parser::EFormat fmt, const string &featKey, const string &featLocation, const vector< string > &qualLines)
 
virtual ~CQualParser ()
 
virtual bool GetNextQualifier (string &qualKey, string &qualVal)
 
bool Done () const
 

Private Member Functions

bool xParseQualifierHead (string &qualKey, string &qualVal, bool &thereIsMore)
 
bool xParseQualifierTail (const string &qualKey, string &qualVal, bool &thereIsMore)
 
bool xParseQualifierStart (bool silent, string &qualKey, string &qualVal, bool &thereIsMore)
 
bool xParseQualifierCont (const string &qualKey, string &qualVal, bool &thereIsMore)
 
bool xValidateSyntax (const string &qualKey, const string &qualVal)
 
void xQualValAppendLine (const string &qualKey, const string &line, string &qualData)
 

Static Private Member Functions

static bool sIsLegalQual (const string &qualKey)
 
static bool sHasBalancedQuotes (const string &qualVal)
 

Private Attributes

Parser::EFormat mFlatFormat
 
const stringmFeatKey
 
const stringmFeatLocation
 
CQualCleanup mCleanerUpper
 
const DATAmData
 
DATA::const_iterator mCurrent
 
string mPendingKey
 
string mPendingVal
 
string mLastKeyForDataChunk
 
string mLastDataChunkForKey
 
const string::size_type mMaxChunkSize
 

Detailed Description

Definition at line 44 of file qual_parse.hpp.

Member Typedef Documentation

◆ DATA

using CQualParser::DATA = vector<string>

Definition at line 48 of file qual_parse.hpp.

Constructor & Destructor Documentation

◆ CQualParser()

CQualParser::CQualParser ( Parser::EFormat  fmt,
const string featKey,
const string featLocation,
const vector< string > &  qualLines 
)

Definition at line 46 of file qual_parse.cpp.

References mCurrent, and mData.

◆ ~CQualParser()

CQualParser::~CQualParser ( )
virtual

Definition at line 64 of file qual_parse.cpp.

Member Function Documentation

◆ Done()

bool CQualParser::Done ( ) const

Definition at line 360 of file qual_parse.cpp.

References mCurrent, and mData.

Referenced by ParseQualifiers().

◆ GetNextQualifier()

bool CQualParser::GetNextQualifier ( string qualKey,
string qualVal 
)
virtual

◆ sHasBalancedQuotes()

bool CQualParser::sHasBalancedQuotes ( const string qualVal)
staticprivate

Definition at line 381 of file qual_parse.cpp.

Referenced by xValidateSyntax().

◆ sIsLegalQual()

bool CQualParser::sIsLegalQual ( const string qualKey)
staticprivate

Definition at line 368 of file qual_parse.cpp.

Referenced by xParseQualifierStart().

◆ xParseQualifierCont()

bool CQualParser::xParseQualifierCont ( const string qualKey,
string qualVal,
bool thereIsMore 
)
private

◆ xParseQualifierHead()

bool CQualParser::xParseQualifierHead ( string qualKey,
string qualVal,
bool thereIsMore 
)
private

Definition at line 107 of file qual_parse.cpp.

References mCurrent, mData, and xParseQualifierStart().

Referenced by GetNextQualifier().

◆ xParseQualifierStart()

bool CQualParser::xParseQualifierStart ( bool  silent,
string qualKey,
string qualVal,
bool thereIsMore 
)
private

◆ xParseQualifierTail()

bool CQualParser::xParseQualifierTail ( const string qualKey,
string qualVal,
bool thereIsMore 
)
private

◆ xQualValAppendLine()

void CQualParser::xQualValAppendLine ( const string qualKey,
const string line,
string qualData 
)
private

◆ xValidateSyntax()

bool CQualParser::xValidateSyntax ( const string qualKey,
const string qualVal 
)
private

Definition at line 254 of file qual_parse.cpp.

References sHasBalancedQuotes(), and CFlatParseReport::UnbalancedQuotes().

Referenced by GetNextQualifier().

Member Data Documentation

◆ mCleanerUpper

CQualCleanup CQualParser::mCleanerUpper
private

Definition at line 102 of file qual_parse.hpp.

Referenced by GetNextQualifier().

◆ mCurrent

DATA::const_iterator CQualParser::mCurrent
private

◆ mData

const DATA& CQualParser::mData
private

Definition at line 103 of file qual_parse.hpp.

Referenced by CQualParser(), Done(), xParseQualifierHead(), and xParseQualifierTail().

◆ mFeatKey

const string& CQualParser::mFeatKey
private

Definition at line 100 of file qual_parse.hpp.

Referenced by xParseQualifierStart().

◆ mFeatLocation

const string& CQualParser::mFeatLocation
private

Definition at line 101 of file qual_parse.hpp.

Referenced by xParseQualifierStart().

◆ mFlatFormat

Parser::EFormat CQualParser::mFlatFormat
private

Definition at line 99 of file qual_parse.hpp.

◆ mLastDataChunkForKey

string CQualParser::mLastDataChunkForKey
private

Definition at line 109 of file qual_parse.hpp.

Referenced by xParseQualifierStart(), and xQualValAppendLine().

◆ mLastKeyForDataChunk

string CQualParser::mLastKeyForDataChunk
private

Definition at line 108 of file qual_parse.hpp.

Referenced by xParseQualifierStart(), and xQualValAppendLine().

◆ mMaxChunkSize

const string::size_type CQualParser::mMaxChunkSize
private

Definition at line 110 of file qual_parse.hpp.

Referenced by xQualValAppendLine().

◆ mPendingKey

string CQualParser::mPendingKey
private

Definition at line 105 of file qual_parse.hpp.

Referenced by xParseQualifierCont(), and xParseQualifierStart().

◆ mPendingVal

string CQualParser::mPendingVal
private

Definition at line 106 of file qual_parse.hpp.

Referenced by xParseQualifierCont(), and xParseQualifierStart().


The documentation for this class was generated from the following files:
Modified on Thu May 23 12:26:17 2024 by modify_doxy.py rev. 669887