bool _empty
Is the expression empty?
bool _insoluble
Is the expression insoluble;.
unsigned long long raw() const
Get the bits comprising the integer as an unsigned long long
void set_value(int val)
Set the integral value of the expression.
integer const & value() const
Get the integral value of the expression.
void set_parens_off(size_t loff, size_t roff)
Set the text offsets of surrounding parentheses.
size_t lparen_off() const
Get the text offset of the left parenthesis, if any. -1 if none.
void set_insoluble()
Classify the expression as insoluble.
Undetermined type or invalid.
Class integer encapsulates an integer of some type.
void clear_parens_off()
Clear the text offsets of surrounding parentheses.
void set_empty()
Classify the expression as empty.
void set_value(integer const &val)
Set the integral value of the expression.
size_t rparen_off() const
Get the text offset of the right parenthesis, if any. -1 if none.
unsigned short _net_infix_ops
Number of binary operators remaining in the evaluated expression after simplification.
bool resolved() const
Say whether the expression has been resolved.
integer _value
The integer value of the evaluated expression if it is soluble.
integer_type type() const
Get the type of the integer
bool insoluble() const
Say whether the expression is insoluble.
bool is_false() const
Say whether the expression is false.
evaluation(int val)
Explicitly construct from int.
bool empty() const
Say whether the expression is empty.
bool is_true() const
Say whether the expression is true.
struct evaluation represents the result of evaluating a putative expression.
size_t _rparen_off
Text offset of right parenethesis, if any.
evaluation(integer const &val)
Explicitly construct from an integer.
unsigned short & net_infix_ops()
Get/set the residual number of binary operators in the expression, after simplification.