summaryrefslogtreecommitdiff
path: root/src/op.h
diff options
context:
space:
mode:
authorJohn Wiegley <johnw@newartisans.com>2009-02-07 18:42:12 -0400
committerJohn Wiegley <johnw@newartisans.com>2009-02-07 18:42:12 -0400
commit0c8970584e2b3a09673c60f6a32c2f0ac51db230 (patch)
tree273d22650313c32dc530e693111c315da2df770f /src/op.h
parent1de748fc133b005f44ca0a3fe496aede3ae4c35d (diff)
downloadfork-ledger-0c8970584e2b3a09673c60f6a32c2f0ac51db230.tar.gz
fork-ledger-0c8970584e2b3a09673c60f6a32c2f0ac51db230.tar.bz2
fork-ledger-0c8970584e2b3a09673c60f6a32c2f0ac51db230.zip
Removed handling of the unnused INDEX operator.
Diffstat (limited to 'src/op.h')
-rw-r--r--src/op.h22
1 files changed, 3 insertions, 19 deletions
diff --git a/src/op.h b/src/op.h
index ad900cc5..344c752f 100644
--- a/src/op.h
+++ b/src/op.h
@@ -67,19 +67,17 @@ private:
mutable short refc;
ptr_op_t left_;
- variant<std::size_t, // used by constant INDEX
+ variant<ptr_op_t, // used by all binary operators
value_t, // used by constant VALUE
string, // used by constant IDENT
- function_t, // used by terminal FUNCTION
- ptr_op_t> // used by all binary operators
- data;
+ function_t // used by terminal FUNCTION
+ > data;
public:
enum kind_t {
// Constants
VALUE,
IDENT,
- INDEX,
CONSTANTS,
@@ -138,20 +136,6 @@ public:
assert(refc == 0);
}
- bool is_index() const {
- return data.type() == typeid(std::size_t);
- }
- std::size_t& as_index_lval() {
- assert(kind == INDEX);
- return boost::get<std::size_t>(data);
- }
- const std::size_t& as_index() const {
- return const_cast<op_t *>(this)->as_index_lval();
- }
- void set_index(std::size_t val) {
- data = val;
- }
-
bool is_value() const {
if (kind == VALUE) {
assert(data.type() == typeid(value_t));