1#ifndef IR_JSON_PARSER_H_
2#define IR_JSON_PARSER_H_
8#include "lib/big_int_util.h"
9#include "lib/castable.h"
10#include "lib/cstring.h"
11#include "lib/ordered_map.h"
30 operator int()
const {
return int(val); }
39 operator bool()
const {
return val; }
48 JsonString(
const std::string &s) : std::string(s) {}
63 : std::vector<JsonData *>(v) {}
71 bool _hasSrcInfo =
true;
80 std::string get_type()
const;
81 std::string get_filename()
const;
82 std::string get_sourceFragment()
const;
84 int get_column()
const;
86 bool hasSrcInfo() {
return _hasSrcInfo; }
87 void setSrcInfo(
bool value) { _hasSrcInfo = value; }
96std::string getIndent(
int l);
98std::ostream &operator<<(std::ostream &out,
JsonData *json);
99std::istream &operator>>(std::istream &in,
JsonData *&json);
Definition json_parser.h:36
Definition json_parser.h:15
Definition json_parser.h:92
Definition json_parser.h:27
Definition json_parser.h:70
Definition json_parser.h:45
Definition json_parser.h:59
Definition ordered_map.h:32
TODO: this is not really specific to BMV2, it should reside somewhere else.
Definition applyOptionsPragmas.cpp:24