diff options
author | John Wiegley <johnw@newartisans.com> | 2010-06-13 03:54:36 -0400 |
---|---|---|
committer | John Wiegley <johnw@newartisans.com> | 2010-06-13 03:54:36 -0400 |
commit | 44a5103e1ce9f968df02ac6e1f86fcf9415a1983 (patch) | |
tree | 6dba3e3fcbfb32b294d7c2bbbd84c953d2ef8b2f /src/value.cc | |
parent | f3fa011d39336f9a13ad1f09016e30f88e09ba56 (diff) | |
download | fork-ledger-44a5103e1ce9f968df02ac6e1f86fcf9415a1983.tar.gz fork-ledger-44a5103e1ce9f968df02ac6e1f86fcf9415a1983.tar.bz2 fork-ledger-44a5103e1ce9f968df02ac6e1f86fcf9415a1983.zip |
Moved value_t::label() to value.cc
Diffstat (limited to 'src/value.cc')
-rw-r--r-- | src/value.cc | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/value.cc b/src/value.cc index f03b4017..fd49e85c 100644 --- a/src/value.cc +++ b/src/value.cc @@ -1700,6 +1700,45 @@ value_t value_t::strip_annotations(const keep_details_t& what_to_keep) const return NULL_VALUE; } +string value_t::label(optional<type_t> the_type) const +{ + switch (the_type ? *the_type : type()) { + case VOID: + return _("an uninitialized value"); + case BOOLEAN: + return _("a boolean"); + case DATETIME: + return _("a date/time"); + case DATE: + return _("a date"); + case INTEGER: + return _("an integer"); + case AMOUNT: + return _("an amount"); + case BALANCE: + return _("a balance"); + case STRING: + return _("a string"); + case MASK: + return _("a regexp"); + case SEQUENCE: + return _("a sequence"); + case SCOPE: + return _("a scope"); + case ANY: + if (as_any().type() == typeid(expr_t::ptr_op_t)) + return _("an expr"); + else + return _("an object"); + break; + default: + assert(false); + break; + } + assert(false); + return _("<invalid>"); +} + void value_t::print(std::ostream& out, const int first_width, const int latter_width, |