diff options
-rw-r--r-- | src/account.cc | 6 | ||||
-rw-r--r-- | src/item.cc | 6 |
2 files changed, 12 insertions, 0 deletions
diff --git a/src/account.cc b/src/account.cc index 8d4341e7..e577c48e 100644 --- a/src/account.cc +++ b/src/account.cc @@ -218,6 +218,10 @@ namespace { return true; } + value_t get_addr(account_t& account) { + return long(&account); + } + value_t get_depth_spacer(account_t& account) { std::size_t depth = 0; @@ -296,6 +300,8 @@ expr_t::ptr_op_t account_t::lookup(const symbol_t::kind_t kind, return WRAP_FUNCTOR(get_wrapper<&get_account>); else if (name == "account_base") return WRAP_FUNCTOR(get_wrapper<&get_account_base>); + else if (name == "addr") + return WRAP_FUNCTOR(get_wrapper<&get_addr>); else if (name == "any") return WRAP_FUNCTOR(&fn_any); else if (name == "all") diff --git a/src/item.cc b/src/item.cc index 0a22b260..fea73066 100644 --- a/src/item.cc +++ b/src/item.cc @@ -323,6 +323,10 @@ namespace { return item.pos ? long(item.pos->sequence) : 0L; } + value_t get_addr(item_t& item) { + return long(&item); + } + value_t get_depth(item_t&) { return 0L; } @@ -376,6 +380,8 @@ expr_t::ptr_op_t item_t::lookup(const symbol_t::kind_t kind, return WRAP_FUNCTOR(get_wrapper<&get_actual>); else if (name == "actual_date") return WRAP_FUNCTOR(get_wrapper<&get_actual_date>); + else if (name == "addr") + return WRAP_FUNCTOR(get_wrapper<&get_addr>); break; case 'b': |