+/* Extra styling for a pivot_value.
+
+ This is logically part of pivot_value itself. It is broken into a separate
+ structure to save memory because it is rarely used. */
+struct pivot_value_ex
+ {
+ struct font_style *font_style;
+ struct cell_style *cell_style;
+
+ char **subscripts;
+ size_t n_subscripts;
+
+ size_t *footnote_indexes;
+ size_t n_footnotes;
+ };
+
+static inline const struct pivot_value_ex *
+pivot_value_ex (const struct pivot_value *value)
+{
+ static const struct pivot_value_ex empty_ex = { .font_style = NULL };
+ return value->ex ? value->ex : &empty_ex;
+}
+
+struct pivot_value_ex *pivot_value_ex_rw (struct pivot_value *);
+struct pivot_value_ex *pivot_value_ex_clone (const struct pivot_value_ex *);
+void pivot_value_ex_destroy (struct pivot_value_ex *);
+\f