57 friend class import_factory;
60 document(
const document&) =
delete;
61 document& operator= (
const document&) =
delete;
67 virtual void dump(dump_format_t format,
const std::string& output)
const override;
70 virtual void dump_check(std::ostream& os)
const override;
76 const styles& get_styles()
const;
81 sheet* append_sheet(std::string_view sheet_name);
82 sheet* get_sheet(std::string_view sheet_name);
83 const sheet* get_sheet(std::string_view sheet_name)
const;
84 sheet* get_sheet(sheet_t sheet_pos);
85 const sheet* get_sheet(sheet_t sheet_pos)
const;
98 sheet_t get_sheet_index(std::string_view name)
const;
99 std::string_view get_sheet_name(sheet_t sheet_pos)
const;
111 size_t get_sheet_count()
const;
113 void set_origin_date(
int year,
int month,
int day);
116 void set_formula_grammar(formula_grammar_t grammar);
117 formula_grammar_t get_formula_grammar()
const;
119 const ixion::formula_name_resolver* get_formula_name_resolver(formula_ref_context_t cxt)
const;
121 ixion::model_context& get_model_context();
122 const ixion::model_context& get_model_context()
const;
131 const tables& get_tables()
const;
134 void dump_flat(
const std::string& outdir)
const;
135 void dump_html(const ::std::string& outdir)
const;
136 void dump_json(const ::std::string& outdir)
const;
137 void dump_csv(
const std::string& outdir)
const;
138 void dump_debug_state(
const std::string& outdir)
const;
140 void finalize_import();
141 void insert_dirty_cell(
const ixion::abs_address_t& pos);
144 std::unique_ptr<detail::document_impl> mp_impl;