libcarla/include/system/boost/json/error.hpp
2024-10-18 13:19:59 +08:00

128 lines
2.4 KiB
C++

//
// Copyright (c) 2019 Vinnie Falco (vinnie.falco@gmail.com)
//
// Distributed under the Boost Software License, Version 1.0. (See accompanying
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
//
// Official repository: https://github.com/boostorg/json
//
#ifndef BOOST_JSON_ERROR_HPP
#define BOOST_JSON_ERROR_HPP
#include <boost/json/detail/config.hpp>
#include <boost/json/system_error.hpp>
BOOST_JSON_NS_BEGIN
/** Error codes returned by JSON operations
*/
enum class error
{
//
// parse errors
//
/// syntax error
syntax = 1,
/// extra data
extra_data,
/// incomplete JSON
incomplete,
/// exponent too large
exponent_overflow,
/// too deep
too_deep,
/// illegal leading surrogate
illegal_leading_surrogate,
/// illegal trailing surrogate
illegal_trailing_surrogate,
/// expected hex digit
expected_hex_digit,
/// expected utf16 escape
expected_utf16_escape,
/// An object contains too many elements
object_too_large,
/// An array contains too many elements
array_too_large,
/// A key is too large
key_too_large,
/// A string is too large
string_too_large,
/// The parser encountered an exception and must be reset
exception,
//----------------------------------
/// not a number
not_number,
/// number cast is not exact
not_exact,
/// test failure
test_failure,
//
// JSON Pointer errors
//
/// missing slash character before token reference
missing_slash,
/// invalid escape sequence
invalid_escape,
/// token should be a number but cannot be parsed as such
token_not_number,
/// current value is neither an object nor an array
value_is_scalar,
/// current value does not contain referenced value
not_found,
/// token cannot be represented by std::size_t
token_overflow,
/// past-the-end index is not supported
past_the_end,
};
/** Error conditions corresponding to JSON errors
*/
enum class condition
{
/// A parser-related error
parse_error = 1,
/// An error on assignment to or from a JSON value
assign_error,
/// An error related to parsing JSON pointer string
pointer_parse_error,
/// An error related to applying JSON pointer string to a value
pointer_use_error,
};
BOOST_JSON_NS_END
#include <boost/json/impl/error.hpp>
#endif