aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/sdp/meta/object_setter.d
blob: e4bb05f6cea58a610466567429d2478adf915f8a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
/++
  object setter:
  setting of sisu objects for downstream processing
  meta_object_setter.d
+/
module sdp.meta.object_setter;
template ObjectSetter() {
  /+ structs +/
  struct HeadingAttrib {
    string lev                            = "9";
    int    heading_lev_markup             = 9;
    int    heading_lev_collapsed          = 9;
    int[]  closes_lev_collapsed           = [];
    int[]  closes_lev_markup              = [];
    int    array_ptr                      = 0;
    int    heading_array_ptr_segments     = 0;
  }
  struct ObjGenericComposite {
    // size_t id;
    string                 of_part                      = "";
    string                 of_section                   = "";
    string                 is_of                        = "";
    string                 is_a                         = "";
    string                 text                         = "";
    string                 obj_cite_number              = "";
    string                 obj_cite_number_off          = "";
    string                 obj_cite_number_bkidx        = "";
    int                    obj_cite_number_type         = 0;
    string[]               anchor_tags                  = [];
    int                    indent_base                  = 0;
    int                    indent_hang                  = 0;
    bool                   bullet                       = false;
    bool                   inline_links                 = false;
    bool                   inline_notes_reg             = false;
    bool                   inline_notes_star            = false;
    string                 language                     = ""; // not implemented, consider
    string                 code_block_syntax            = "";
    int                    table_number_of_columns      = 0;
    double[]               table_column_widths          = [];
    string[]               table_column_aligns          = [];
    bool                   table_heading                = false;
    bool                   table_walls                  = false; // not implemented
    int                    ocn                          = 0;
    string                 segment_anchor_tag           = "";
    string                 segname_prev                 = "";
    string                 segname_next                 = "";
    int                    parent_lev_markup            = 0;
    int                    parent_ocn                   = 0;
    int[]                  ancestors                    = [];
    string                 marked_up_level              = "9";
    int                    heading_lev_markup           = 9;
    int                    heading_lev_collapsed        = 9;
    int[]                  dom_markedup                 = [ 0, 0, 0, 0, 0, 0, 0, 0,];
    int[]                  dom_collapsed                = [ 0, 0, 0, 0, 0, 0, 0, 0,];
    int[]                  heading_ancestors            = [ 0, 0, 0, 0, 0, 0, 0, 0,];
    string[]               heading_ancestors_text       = [ "", "", "", "", "", "", "", "", ];
    string[]               lev4_subtoc                  = [];
    int                    heading_array_ptr            = 0;
    int                    ptr_doc_object               = 0;
    int                    ptr_html_segnames            = 0;
    int                    ptr_heading                  = 0;
    int                    array_ptr                    = 0;
    int                    heading_array_ptr_segments   = 0;
    string[string][string] node;
  }
  struct TheObjects {
    ObjGenericComposite[] oca;
  }
}