Lines 44-49
Link Here
|
44 |
#include "expr.h" |
44 |
#include "expr.h" |
45 |
#include "unistring.h" |
45 |
#include "unistring.h" |
|
|
46 |
#include <memory> |
46 |
namespace ledger { |
47 |
namespace ledger { |
Lines 65-71
class format_t : public expr_base_t<string>, public noncopyable
Link Here
|
65 |
std::size_t min_width; |
66 |
std::size_t min_width; |
66 |
std::size_t max_width; |
67 |
std::size_t max_width; |
67 |
variant<string, expr_t> data; |
68 |
variant<string, expr_t> data; |
68 |
scoped_ptr<struct element_t> next; |
69 |
std::unique_ptr<struct element_t> next; |
69 |
element_t() throw() |
70 |
element_t() throw() |
70 |
: supports_flags<>(), type(STRING), min_width(0), max_width(0) { |
71 |
: supports_flags<>(), type(STRING), min_width(0), max_width(0) { |
Lines 103-109
class format_t : public expr_base_t<string>, public noncopyable
Link Here
|
103 |
void dump(std::ostream& out) const; |
104 |
void dump(std::ostream& out) const; |
104 |
}; |
105 |
}; |
105 |
scoped_ptr<element_t> elements; |
106 |
std::unique_ptr<element_t> elements; |
106 |
public: |
107 |
public: |
107 |
static enum elision_style_t { |
108 |
static enum elision_style_t { |