8#ifndef ORCUS_SPREADSHEET_TYPES_HPP
9#define ORCUS_SPREADSHEET_TYPES_HPP
16#include <initializer_list>
22namespace orcus {
namespace spreadsheet {
29using sheet_t = int32_t;
31using color_elem_t = uint8_t;
33using col_width_t = uint16_t;
35using row_height_t = uint16_t;
37using string_id_t = uint32_t;
39using pivot_cache_id_t = uint32_t;
47ORCUS_DLLPUBLIC col_width_t get_default_column_width();
55ORCUS_DLLPUBLIC row_height_t get_default_row_height();
60enum class error_value_t
87enum class border_direction_t
113enum class border_style_t
138enum class fill_pattern_t
166enum class strikethrough_style_t
183enum class strikethrough_type_t
196enum class strikethrough_width_t
211enum class strikethrough_text_t
224enum class formula_grammar_t
260enum class formula_ref_context_t
269 named_expression_base,
282enum class formula_error_policy_t
294enum class underline_t
336enum class underline_width_t
356enum class underline_mode_t
369enum class underline_type_t
381enum class hor_alignment_t
395enum class ver_alignment_t
409enum class xf_category_t
425enum class data_table_type_t
435enum class totals_row_function_t
452enum class conditional_format_t
466enum class condition_operator_t
503enum class condition_type_t
519enum class condition_date_t
541enum class databar_axis_t
551enum class pivot_cache_group_by_t
644ORCUS_DLLPUBLIC
bool operator== (
const range_t& left,
const range_t& right);
645ORCUS_DLLPUBLIC
bool operator!= (
const range_t& left,
const range_t& right);
650ORCUS_DLLPUBLIC
bool operator< (
const range_t& left,
const range_t& right);
651ORCUS_DLLPUBLIC
bool operator> (
const range_t& left,
const range_t& right);
656ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os,
const address_t& v);
657ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os,
const src_address_t& v);
658ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os,
const range_t& v);
678ORCUS_DLLPUBLIC totals_row_function_t to_totals_row_function_enum(std::string_view s);
688ORCUS_DLLPUBLIC pivot_cache_group_by_t to_pivot_cache_group_by_enum(std::string_view s);
698ORCUS_DLLPUBLIC error_value_t to_error_value_enum(std::string_view s);
709ORCUS_DLLPUBLIC
color_rgb_t to_color_rgb(std::string_view s);
720ORCUS_DLLPUBLIC
color_rgb_t to_color_rgb_from_name(std::string_view s);
729ORCUS_DLLPUBLIC formula_error_policy_t to_formula_error_policy(std::string_view s);
731ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os, error_value_t ev);
732ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os, border_style_t border);
733ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os, formula_grammar_t grammar);
734ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os, underline_t uline);
735ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os, underline_width_t ulwidth);
736ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os, underline_mode_t ulmode);
737ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os, underline_type_t ultype);
738ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os, hor_alignment_t halign);
739ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os, ver_alignment_t valign);
740ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os,
const color_rgb_t& color);
741ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os,
const fill_pattern_t& fill);
742ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os,
const strikethrough_style_t& ss);
743ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os,
const strikethrough_type_t& st);
744ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os,
const strikethrough_width_t& sw);
745ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os,
const strikethrough_text_t& st);