Expression Class Reference

#include <expr.h>

Inheritance diagram for Expression:

BinaryExpression UnaryExpression ValueExpression List of all members.

Public Methods

 Expression (enum token t)
virtual ~Expression ()
far Value evaluate ()

Static Public Methods

far Expression * parse (const char *&line)

Protected Types

enum  token {
  T_NAME, T_DIGIT, T_MINUS, T_PLUS,
  T_AND, T_OR, T_XOR, T_MUL,
  T_DIV, T_NOT, T_PARENT_OPEN, T_PARENT_CLOSE,
  T_UNKNOWN, T_EOF
}

Protected Methods

virtual far Value eval ()

Static Protected Methods

bank enum token get_token (const char *&line)
bank void rewind (enum token t, const char *&line)
bank Expression * parse_unary (const char *&line)
bank Expression * parse_binary (const char *&line, unsigned char prio)
bank Expression * parse_term (const char *&line)
bank int get_value (const char *&line, Value &value)
bank unsigned char get_priority (enum token t)

Protected Attributes

enum token type_

Detailed Description

Root of expression tree.

Definition at line 42 of file expr.h.The documentation for this class was generated from the following files: