2018-10-07 18:27:24 +08:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <cstddef> // size_t
|
|
|
|
|
|
|
|
namespace nlohmann
|
|
|
|
{
|
|
|
|
namespace detail
|
|
|
|
{
|
|
|
|
/// struct to capture the start position of the current token
|
|
|
|
struct position_t
|
|
|
|
{
|
|
|
|
/// the total number of characters read
|
|
|
|
std::size_t chars_read_total = 0;
|
|
|
|
/// the number of characters read in the current line
|
|
|
|
std::size_t chars_read_current_line = 0;
|
|
|
|
/// the number of lines read
|
|
|
|
std::size_t lines_read = 0;
|
|
|
|
|
|
|
|
/// conversion to size_t to preserve SAX interface
|
|
|
|
constexpr operator size_t() const
|
|
|
|
{
|
|
|
|
return chars_read_total;
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
2019-03-15 21:55:13 +08:00
|
|
|
} // namespace detail
|
|
|
|
} // namespace nlohmann
|