54#define POST_VIRTUAL 0x0010
55#define POST_MUST_BALANCE 0x0020
56#define POST_CALCULATED 0x0040
57#define POST_COST_CALCULATED 0x0080
58#define POST_COST_IN_FULL 0x0100
59#define POST_COST_FIXATED 0x0200
60#define POST_COST_VIRTUAL 0x0400
61#define POST_ANONYMIZED 0x0800
62#define POST_DEFERRED 0x1000
115 std::ostringstream buf;
116 buf <<
_f(
"posting at line %1%") %
pos->beg_line;
119 return string(
_(
"generated posting"));
166 struct xdata_t :
public supports_flags<uint_least16_t>
168#define POST_EXT_RECEIVED 0x0001
169#define POST_EXT_HANDLED 0x0002
170#define POST_EXT_DISPLAYED 0x0004
171#define POST_EXT_DIRECT_AMT 0x0008
172#define POST_EXT_SORT_CALC 0x0010
173#define POST_EXT_COMPOUND 0x0020
174#define POST_EXT_VISITED 0x0040
175#define POST_EXT_MATCHES 0x0080
176#define POST_EXT_CONSIDERED 0x0100
217 return static_cast<bool>(
xdata_);
253 gregorian::date_duration duration =
255 if (duration.days() == 0) {
256 return ((left->
pos ? left->
pos->sequence : 0) <
257 (right->
pos ? right->
pos->sequence : 0));
259 return duration.days() < 0;
#define TRACE_CTOR(cls, args)
#define POST_MUST_BALANCE
void put_post(property_tree::ptree &pt, const post_t &post)
boost::gregorian::date date_t
void extend_post(post_t &post, journal_t &journal)
boost::posix_time::ptime datetime_t
Encapsulate infinite-precision commoditized amounts.
intrusive_ptr< op_t > ptr_op_t
bool has_flags(const flags_t arg) const
virtual void copy_details(const item_t &item)
optional< position_t > pos
optional< expr_t > amount_expr
virtual void copy_details(const item_t &item)
virtual optional< date_t > aux_date() const
post_t(account_t *_account=NULL, flags_t _flags=0x00)
const xdata_t & xdata() const
const account_t * reported_account() const
amount_t resolve_expr(scope_t &scope, expr_t &expr)
optional< datetime_t > checkout
std::size_t xact_id() const
virtual bool has_tag(const mask_t &tag_mask, const optional< mask_t > &value_mask=none, bool inherit=true) const
virtual date_t primary_date() const
virtual date_t value_date() const
post_t(account_t *_account, const amount_t &_amount, flags_t _flags=0x00, const optional< string > &_note=none)
virtual optional< value_t > get_tag(const string &tag, bool inherit=true) const
void set_payee(const string &payee)
std::size_t account_id() const
void set_reported_account(account_t *account)
virtual string description()
post_t(const post_t &post)
optional< amount_t > assigned_amount
bool must_balance() const
optional< xdata_t > xdata_
virtual optional< value_t > get_tag(const mask_t &tag_mask, const optional< mask_t > &value_mask=none, bool inherit=true) const
virtual expr_t::ptr_op_t lookup(const symbol_t::kind_t kind, const string &name)
account_t * reported_account()
void add_to_value(value_t &value, const optional< expr_t & > &expr=none) const
optional< amount_t > cost
virtual bool has_tag(const string &tag, bool inherit=true) const
optional< datetime_t > checkin
optional< amount_t > given_cost
virtual date_t date() const
string payee_from_tag() const
xdata_t(const xdata_t &other)
std::list< sort_value_t > sort_values
bool operator()(const post_t *left, const post_t *right) const
Dynamic type representing various numeric types.