98 return irept(std::move(
id), std::move(named_sub), std::move(sub));
127 unsigned char value=
u&0x7f;
136 out.put(value | 0x80);
154 unsigned char ch=
static_cast<unsigned char>(in.get());
172 for(std::string::const_iterator it=s.begin();
176 if(*it==0 || *it==
'\\')
192 while((
c=
static_cast<char>(in.get()))!=0)
238 std::pair<bool, irep_idt>(
false,
irep_idt()));
244 std::pair<bool, irep_idt>(
true, s);
ait supplies three of the four components needed: an abstract interpreter (in this case handling func...
Thrown when failing to deserialize a value from some low level format, like JSON or raw bytes.
dstringt has one field, an unsigned integer no which is an index into a static table of strings.
std::size_t number(const irept &irep)
ireps_on_readt ireps_on_read
string_rev_mapt string_rev_map
ireps_on_writet ireps_on_write
irep_full_hash_containert irep_full_hash_container
ireps_containert & ireps_container
void write_string_ref(std::ostream &, const irep_idt &)
Output a string and maintain a reference to it.
irept read_irep(std::istream &)
static std::size_t read_gb_word(std::istream &)
Interpret a stream of byte as a 7-bit encoded unsigned number.
void write_irep(std::ostream &, const irept &irep)
std::vector< char > read_buffer
const irept & reference_convert(std::istream &)
irep_idt read_string_ref(std::istream &)
Read a string reference from the stream.
irep_idt read_gb_string(std::istream &)
reads a string from the stream
There are a large number of kinds of tree structured or tree-like data in CPROVER.
const irep_idt & id() const
named_subt & get_named_sub()
typename dt::named_subt named_subt
const irept & get_nil_irep()
const std::string & id2string(const irep_idt &d)
void write_gb_string(std::ostream &out, const std::string &s)
outputs the string and then a zero byte.
void write_gb_word(std::ostream &out, std::size_t u)
Write 7 bits of u each time, least-significant byte first, until we have zero.
binary irep conversions with hashing
void write_gb_word(std::ostream &, std::size_t)
Write 7 bits of u each time, least-significant byte first, until we have zero.
void write_gb_string(std::ostream &, const std::string &)
outputs the string and then a zero byte.