Monero
Loading...
Searching...
No Matches
ParseResult Struct Reference

Result of parsing (wraps ParseErrorCode). More...

#include <error.h>

Public Types

typedef bool(ParseResult::* BooleanType) () const
 ! Unspecified boolean type

Public Member Functions

 ParseResult ()
 Default constructor, no error.
 ParseResult (ParseErrorCode code, size_t offset)
 Constructor to set an error.
ParseErrorCode Code () const
 Get the error code.
size_t Offset () const
 Get the error offset, if IsError(), 0 otherwise.
 operator BooleanType () const
 Explicit conversion to bool, returns true, iff !IsError().
bool IsError () const
 Whether the result is an error.
bool operator== (const ParseResult &that) const
bool operator== (ParseErrorCode code) const
bool operator!= (const ParseResult &that) const
bool operator!= (ParseErrorCode code) const
void Clear ()
 Reset error code.
void Set (ParseErrorCode code, size_t offset=0)
 Update error code and offset.

Private Attributes

ParseErrorCode code_
size_t offset_

Friends

bool operator== (ParseErrorCode code, const ParseResult &err)
bool operator!= (ParseErrorCode code, const ParseResult &err)

Detailed Description

Result of parsing (wraps ParseErrorCode).

ParseResult ok = doc.Parse("[42]");
if (!ok) {
fprintf(stderr, "JSON parse error: %s (%u)",
exit(EXIT_FAILURE);
}
GenericDocument & Parse(const typename SourceEncoding::Ch *str)
Parse JSON text from a read-only string (with Encoding conversion).
Definition document.h:2331
GenericDocument< UTF8<> > Document
GenericDocument with UTF8 encoding.
Definition document.h:2512
RAPIDJSON_NAMESPACE_BEGIN const RAPIDJSON_ERROR_CHARTYPE * GetParseError_En(ParseErrorCode parseErrorCode)
Maps error code of parsing into error message.
Definition en.h:36
ParseErrorCode Code() const
Get the error code.
Definition error.h:116
ParseResult()
Default constructor, no error.
Definition error.h:111
size_t Offset() const
Get the error offset, if IsError(), 0 otherwise.
Definition error.h:118
See also
GenericReader::Parse, GenericDocument::Parse

Member Typedef Documentation

◆ BooleanType

typedef bool(ParseResult::* ParseResult::BooleanType) () const

! Unspecified boolean type

Constructor & Destructor Documentation

◆ ParseResult() [1/2]

ParseResult::ParseResult ( )
inline

Default constructor, no error.

◆ ParseResult() [2/2]

ParseResult::ParseResult ( ParseErrorCode code,
size_t offset )
inline

Constructor to set an error.

Member Function Documentation

◆ Clear()

void ParseResult::Clear ( )
inline

Reset error code.

◆ Code()

ParseErrorCode ParseResult::Code ( ) const
inline

Get the error code.

◆ IsError()

bool ParseResult::IsError ( ) const
inline

Whether the result is an error.

◆ Offset()

size_t ParseResult::Offset ( ) const
inline

Get the error offset, if IsError(), 0 otherwise.

◆ operator BooleanType()

ParseResult::operator BooleanType ( ) const
inline

Explicit conversion to bool, returns true, iff !IsError().

◆ operator!=() [1/2]

bool ParseResult::operator!= ( const ParseResult & that) const
inline

◆ operator!=() [2/2]

bool ParseResult::operator!= ( ParseErrorCode code) const
inline

◆ operator==() [1/2]

bool ParseResult::operator== ( const ParseResult & that) const
inline

◆ operator==() [2/2]

bool ParseResult::operator== ( ParseErrorCode code) const
inline

◆ Set()

void ParseResult::Set ( ParseErrorCode code,
size_t offset = 0 )
inline

Update error code and offset.

◆ operator!=

bool operator!= ( ParseErrorCode code,
const ParseResult & err )
friend

◆ operator==

bool operator== ( ParseErrorCode code,
const ParseResult & err )
friend

Member Data Documentation

◆ code_

ParseErrorCode ParseResult::code_
private

◆ offset_

size_t ParseResult::offset_
private

The documentation for this struct was generated from the following file: