glibmm  2.64.4
Public Types | Public Member Functions | List of all members
Glib::VariantParseError Class Reference

Exception class for Variant parse errors. More...

#include <glibmm/variant.h>

Inheritance diagram for Glib::VariantParseError:
Inheritance graph
[legend]

Public Types

enum  Code {
  FAILED,
  BASIC_TYPE_EXPECTED,
  CANNOT_INFER_TYPE,
  DEFINITE_TYPE_EXPECTED,
  INPUT_NOT_AT_END,
  INVALID_CHARACTER,
  INVALID_FORMAT_STRING,
  INVALID_OBJECT_PATH,
  INVALID_SIGNATURE,
  INVALID_TYPE_STRING,
  NO_COMMON_TYPE,
  NUMBER_OUT_OF_RANGE,
  NUMBER_TOO_BIG,
  TYPE_ERROR,
  UNEXPECTED_TOKEN,
  UNKNOWN_KEYWORD,
  UNTERMINATED_STRING_CONSTANT,
  VALUE_EXPECTED,
  RECURSION
}
 Error codes returned by parsing text-format GVariants. More...
 

Public Member Functions

 VariantParseError (Code error_code, const Glib::ustring& error_message)
 
 VariantParseError (GError* gobject)
 
Code code () const
 
- Public Member Functions inherited from Glib::Error
 Error ()
 
 Error (GQuark error_domain, int error_code, const Glib::ustring& message)
 
 Error (GError* gobject, bool take_copy=false)
 
 Error (const Error& other)
 
Erroroperator= (const Error& other)
 
 ~Error () noexcept override
 
 operator bool () const
 Test whether the Error has an underlying instance. More...
 
GQuark domain () const
 
int code () const
 
Glib::ustring what () const override
 
bool matches (GQuark error_domain, int error_code) const
 
GError* gobj ()
 
const GError* gobj () const
 
- Public Member Functions inherited from Glib::Exception
virtual ~Exception () noexcept=0
 

Additional Inherited Members

- Protected Attributes inherited from Glib::Error
GError* gobject_
 

Detailed Description

Exception class for Variant parse errors.

Member Enumeration Documentation

◆ Code

Error codes returned by parsing text-format GVariants.

Enumerator
FAILED 

Generic error (unused).

BASIC_TYPE_EXPECTED 

A non-basic VariantType was given where a basic type was expected.

CANNOT_INFER_TYPE 

Cannot infer the VariantType.

DEFINITE_TYPE_EXPECTED 

An indefinite VariantType was given where a definite type was expected.

INPUT_NOT_AT_END 

Extra data after parsing finished.

INVALID_CHARACTER 

Invalid character in number or unicode escape.

INVALID_FORMAT_STRING 

Not a valid Variant format string.

INVALID_OBJECT_PATH 

Not a valid object path.

INVALID_SIGNATURE 

Not a valid type signature.

INVALID_TYPE_STRING 

Not a valid Variant type string.

NO_COMMON_TYPE 

Could not find a common type for array entries.

NUMBER_OUT_OF_RANGE 

The numerical value is out of range of the given type.

NUMBER_TOO_BIG 

The numerical value is out of range for any type.

TYPE_ERROR 

Cannot parse as variant of the specified type.

UNEXPECTED_TOKEN 

An unexpected token was encountered.

UNKNOWN_KEYWORD 

An unknown keyword was encountered.

UNTERMINATED_STRING_CONSTANT 

Unterminated string constant.

VALUE_EXPECTED 

No value given.

RECURSION 

Variant was too deeply nested; Variant is only guaranteed to handle nesting up to 64 levels (Since: 2.64).

Constructor & Destructor Documentation

◆ VariantParseError() [1/2]

Glib::VariantParseError::VariantParseError ( Code  error_code,
const Glib::ustring error_message 
)

◆ VariantParseError() [2/2]

Glib::VariantParseError::VariantParseError ( GError *  gobject)
explicit

Member Function Documentation

◆ code()

Code Glib::VariantParseError::code ( ) const