12#ifndef ZYPP_CORE_PARSER_JSON_PARSER_H
13#define ZYPP_CORE_PARSER_JSON_PARSER_H
85 std::istream::char_type
popChar();
91 static inline std::istream::char_type
eofChar() {
92 return std::istream::traits_type::eof();
95 template <
typename T = Token>
zyppng::expected< Token > parseNullToken()
zyppng::expected< Token > parseBoolToken()
zyppng::expected< Value > finishParseValue(Token begin)
zyppng::expected< Object > parseObject()
zyppng::expected< Token > parseNumberToken()
Parser & operator=(const Parser &)=delete
zyppng::expected< void > consumeString(const std::string &str)
zyppng::expected< Value > parseValue()
zyppng::expected< Value > parse(const InputStream &input_r)
Parse the stream.
zyppng::expected< Token > nextToken()
zyppng::expected< Array > parseArray()
Parser()=default
Default ctor.
Parser(const Parser &)=delete
static std::istream::char_type eofChar()
zyppng::expected< Token > parseStringToken()
std::istream::char_type popChar()
std::istream::char_type peekChar()
std::optional< InputStream > _stream
zyppng::expected< T > makeParseError(const std::string &message, exception_detail::CodeLocation &&loc)
Parser & operator=(Parser &&)=delete
String related utilities and Regular expression matching.
boost::noncopyable NonCopyable
Ensure derived classes cannot be copied.
std::exception_ptr do_ZYPP_EXCPT_PTR(TExcpt &&excpt_r, CodeLocation &&where_r)
Helper for ZYPP_EXCPT_PTR( Exception ).
Keep FILE, FUNCTION and LINE.