diff options
-rw-r--r-- | src/item.cc | 7 | ||||
-rw-r--r-- | src/item.h | 2 |
2 files changed, 9 insertions, 0 deletions
diff --git a/src/item.cc b/src/item.cc index 5262d1db..17d46652 100644 --- a/src/item.cc +++ b/src/item.cc @@ -398,6 +398,13 @@ value_t get_comment(item_t& item) } } +void item_t::define(const symbol_t::kind_t, const string& name, + expr_t::ptr_op_t def) +{ + bind_scope_t bound_scope(*scope_t::default_scope, *this); + set_tag(name, def->calc(bound_scope)); +} + expr_t::ptr_op_t item_t::lookup(const symbol_t::kind_t kind, const string& name) { @@ -216,6 +216,8 @@ public: return _state; } + virtual void define(const symbol_t::kind_t, const string&, + expr_t::ptr_op_t); virtual expr_t::ptr_op_t lookup(const symbol_t::kind_t kind, const string& name); |