From 3f393a3c2955c5af64cab3f22b776b96aebebd66 Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Fri, 25 Jan 2019 12:34:03 -0500 Subject: rearrange some code --- org/meta_abstraction.org | 211 +++++++++++++++++++++++++++++++---------------- 1 file changed, 142 insertions(+), 69 deletions(-) (limited to 'org/meta_abstraction.org') diff --git a/org/meta_abstraction.org b/org/meta_abstraction.org index 5249df1..10eeddd 100644 --- a/org/meta_abstraction.org +++ b/org/meta_abstraction.org @@ -635,7 +635,7 @@ debug(srclines) { #+name: abs_in_loop_body_00 #+BEGIN_SRC d if (!line.empty) { - obj_type_status = _check_ocn_status_(line, obj_type_status); + obj_type_status = line._check_ocn_status_(obj_type_status); } #+END_SRC @@ -645,7 +645,7 @@ if (!line.empty) { #+name: abs_in_loop_body_00_code_block #+BEGIN_SRC d /+ block object: code +/ -_code_block_(line, an_object, obj_type_status); +line._code_block_(an_object, obj_type_status); continue; #+END_SRC @@ -665,7 +665,7 @@ if (line.matchFirst(rgx.heading_biblio) obj_type_status["biblio_section"] = State.on; obj_type_status["blurb_section"] = State.off; if (opt_action.backmatter && opt_action.section_biblio) { - _biblio_block_(line, obj_type_status, bib_entry, biblio_entry_str_json, biblio_arr_json); + line._biblio_block_(obj_type_status, bib_entry, biblio_entry_str_json, biblio_arr_json); debug(bibliobuild) { writeln("- ", biblio_entry_str_json); writeln("-> ", biblio_arr_json.length); @@ -754,7 +754,7 @@ if there is a glossary section you need to: tag_assoc[comp_obj_heading_.tags.anchor_tag_html]["seg_lv4"] = comp_obj_heading_.tags.in_segment_html; tag_assoc[comp_obj_heading_.tags.segment_anchor_tag_epub]["seg_lv1_to_4"] = comp_obj_heading_.tags.segment_anchor_tag_epub; } else { - _para_match_(line, an_object, an_object_key, indent, bullet, obj_type_status, line_occur); + line._para_match_(an_object, an_object_key, indent, bullet, obj_type_status, line_occur); comp_obj_para = comp_obj_para.init; comp_obj_para.metainfo.is_of_part = "backmatter"; comp_obj_para.metainfo.is_of_section = "glossary"; @@ -906,7 +906,7 @@ if there is a blurb section you need to: tag_assoc[comp_obj_heading_.tags.anchor_tag_html]["seg_lv4"] = comp_obj_heading_.tags.in_segment_html; tag_assoc[comp_obj_heading_.tags.segment_anchor_tag_epub]["seg_lv1_to_4"] = comp_obj_heading_.tags.segment_anchor_tag_epub; } else { - _para_match_(line, an_object, an_object_key, indent, bullet, obj_type_status, line_occur); + line._para_match_(an_object, an_object_key, indent, bullet, obj_type_status, line_occur); comp_obj_para = comp_obj_para.init; comp_obj_para.metainfo.is_of_part = "backmatter"; comp_obj_para.metainfo.is_of_section = "blurb"; @@ -935,9 +935,9 @@ if there is a blurb section you need to: #+BEGIN_SRC d } else if (obj_type_status["quote"] == TriState.on) { /+ within block object: quote +/ - line = _doc_header_and_make_substitutions_(line, conf_make_meta); - line = _doc_header_and_make_substitutions_fontface_(line, conf_make_meta); - _quote_block_(line, an_object, obj_type_status); + line = line._doc_header_and_make_substitutions_(conf_make_meta); + line = line._doc_header_and_make_substitutions_fontface_(conf_make_meta); + line._quote_block_(an_object, obj_type_status); continue; #+END_SRC @@ -948,11 +948,11 @@ if there is a blurb section you need to: /+ within block object: group +/ } else if (obj_type_status["group"] == TriState.on) { /+ within block object: group +/ - line = _doc_header_and_make_substitutions_(line, conf_make_meta); - line = _doc_header_and_make_substitutions_fontface_(line, conf_make_meta); + line = line._doc_header_and_make_substitutions_(conf_make_meta); + line = line._doc_header_and_make_substitutions_fontface_(conf_make_meta); line = line .replaceAll(rgx.para_delimiter, mkup.br_paragraph ~ "$1"); - _group_block_(line, an_object, obj_type_status); + line._group_block_(an_object, obj_type_status); continue; #+END_SRC @@ -962,8 +962,8 @@ if there is a blurb section you need to: #+BEGIN_SRC d } else if (obj_type_status["block"] == TriState.on) { /+ within block object: block +/ - line = _doc_header_and_make_substitutions_(line, conf_make_meta); - line = _doc_header_and_make_substitutions_fontface_(line, conf_make_meta); + line = line._doc_header_and_make_substitutions_(conf_make_meta); + line = line._doc_header_and_make_substitutions_fontface_(conf_make_meta); if (auto m = line.match(rgx.spaces_line_start)) { line = line .replaceAll(rgx.spaces_line_start, (m.captures[1]).translate([ ' ' : mkup.nbsp ])); @@ -972,7 +972,7 @@ if there is a blurb section you need to: line = line .replaceAll(rgx.spaces_multiple, (m.captures[1]).translate([ ' ' : mkup.nbsp ])); } - _block_block_(line, an_object, obj_type_status); + line._block_block_(an_object, obj_type_status); continue; #+END_SRC @@ -982,7 +982,7 @@ if there is a blurb section you need to: #+BEGIN_SRC d } else if (obj_type_status["poem"] == TriState.on) { /+ within block object: poem +/ - _poem_block_(line, an_object, obj_type_status, cntr, object_number_poem, conf_make_meta, tag_in_seg); + line._poem_block_(an_object, obj_type_status, cntr, object_number_poem, conf_make_meta, tag_in_seg); continue; #+END_SRC @@ -992,7 +992,7 @@ if there is a blurb section you need to: #+BEGIN_SRC d } else if (obj_type_status["table"] == TriState.on) { /+ within block object: table +/ - _table_block_(line, an_object, obj_type_status, conf_make_meta); + line._table_block_(an_object, obj_type_status, conf_make_meta); continue; #+END_SRC @@ -1019,7 +1019,7 @@ if (line.matchFirst(rgx.block_poem_open)) { processing.remove("verse"); object_number_poem["start"] = obj_cite_digits.object_number.to!string; } -_start_block_(line, obj_type_status, object_number_poem); +line._start_block_(obj_type_status, object_number_poem); continue; #+END_SRC @@ -1060,7 +1060,7 @@ if (line.matchFirst(rgx.book_index) || line.matchFirst(rgx.book_index_open) || obj_type_status["book_index"] == State.on ) { /+ book_index +/ - _book_index_(line, book_idx_tmp, an_object, obj_type_status, opt_action); + line._book_index_(book_idx_tmp, an_object, obj_type_status, opt_action); #+END_SRC ******* not book index [+1] @@ -1106,7 +1106,7 @@ if (line.matchFirst(rgx.book_index) if ((conf_make_meta.make.headings.length > 2) && (obj_type_status["make_headings"] == State.off)) { /+ heading found +/ - _heading_found_(line, conf_make_meta.make.headings, heading_match_str, heading_match_rgx, obj_type_status); + line._heading_found_(conf_make_meta.make.headings, heading_match_str, heading_match_rgx, obj_type_status); } if ((obj_type_status["make_headings"] == State.on) && ((line_occur["para"] == State.off) @@ -1114,7 +1114,7 @@ if (line.matchFirst(rgx.book_index) && ((obj_type_status["para"] == State.off) && (obj_type_status["heading"] == State.off))) { /+ heading make set +/ - line = _heading_make_set_(line, line_occur, heading_match_rgx, obj_type_status); + line = line._heading_make_set_(line_occur, heading_match_rgx, obj_type_status); } /+ TODO node info: all headings identified at this point, - extract node info here?? @@ -1124,14 +1124,14 @@ if (line.matchFirst(rgx.book_index) +/ if (line.matchFirst(rgx.heading)) { /+ heading match +/ - line = _doc_header_and_make_substitutions_(line, conf_make_meta); - _heading_matched_(line, line_occur, an_object, an_object_key, lv, collapsed_lev, obj_type_status, conf_make_meta); + line = line._doc_header_and_make_substitutions_(conf_make_meta); + line._heading_matched_(line_occur, an_object, an_object_key, lv, collapsed_lev, obj_type_status, conf_make_meta); } else if (line_occur["para"] == State.off) { /+ para match +/ an_object_key="body_nugget"; - line = _doc_header_and_make_substitutions_(line, conf_make_meta); - line = _doc_header_and_make_substitutions_fontface_(line, conf_make_meta); - _para_match_(line, an_object, an_object_key, indent, bullet, obj_type_status, line_occur); + line = line._doc_header_and_make_substitutions_(conf_make_meta); + line = line._doc_header_and_make_substitutions_fontface_(conf_make_meta); + line._para_match_(an_object, an_object_key, indent, bullet, obj_type_status, line_occur); } #+END_SRC @@ -1157,8 +1157,8 @@ if (line.matchFirst(rgx.book_index) debug(para) { writeln(an_object_key, "-> ", line); } - line = _doc_header_and_make_substitutions_(line, conf_make_meta); - line = _doc_header_and_make_substitutions_fontface_(line, conf_make_meta); + line = line._doc_header_and_make_substitutions_(conf_make_meta); + line = line._doc_header_and_make_substitutions_fontface_(conf_make_meta); an_object[an_object_key] ~= " " ~ line; ++line_occur["para"]; } @@ -1384,7 +1384,7 @@ if ((obj_type_status["heading"] == State.on) comp_obj_para.has.inline_links = substantive_obj_misc_tuple[sObj.links]; comp_obj_para.has.image_without_dimensions = substantive_obj_misc_tuple[sObj.image_no_dimensions]; the_document_body_section ~= comp_obj_para; - tag_assoc = inline_para_link_anchor(an_object, tag_in_seg, tag_assoc); + tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); _common_reset_(line_occur, an_object, obj_type_status); indent=[ "hang_position" : 0, @@ -2258,7 +2258,7 @@ string[] segnames_lv0_to_4; #+name: abs_post #+BEGIN_SRC d -auto _image_dimensions(M,O)(M manifest_matter, O obj) { +auto _image_dimensions(O,M)(O obj, M manifest_matter) { if (obj.has.image_without_dimensions) { import std.math; import imageformats; @@ -2353,10 +2353,10 @@ foreach (ref obj; the_document_head_section) { || (opt_action.epub) || (opt_action.sqlite_discrete) || (opt_action.sqlite_update)) { - obj = obj_dom_structure_set_markup_tags(obj, dom_structure_markedup_tags_status, obj.metainfo.heading_lev_markup); - obj = obj_dom_set_collapsed_tags(obj, dom_structure_collapsed_tags_status, obj.metainfo.heading_lev_collapsed); + obj = obj.obj_dom_structure_set_markup_tags(dom_structure_markedup_tags_status, obj.metainfo.heading_lev_markup); + obj = obj.obj_dom_set_collapsed_tags(dom_structure_collapsed_tags_status, obj.metainfo.heading_lev_collapsed); } - obj = obj_heading_ancestors(obj, lv_ancestors_txt); + obj = obj.obj_heading_ancestors(lv_ancestors_txt); } obj = _links(obj); } @@ -2387,10 +2387,10 @@ if (the_table_of_contents_section.length > 1) { || (opt_action.epub) || (opt_action.sqlite_discrete) || (opt_action.sqlite_update)) { - obj = obj_dom_structure_set_markup_tags(obj, dom_structure_markedup_tags_status, obj.metainfo.heading_lev_markup); - obj = obj_dom_set_collapsed_tags(obj, dom_structure_collapsed_tags_status, obj.metainfo.heading_lev_collapsed); + obj = obj.obj_dom_structure_set_markup_tags(dom_structure_markedup_tags_status, obj.metainfo.heading_lev_markup); + obj = obj.obj_dom_set_collapsed_tags(dom_structure_collapsed_tags_status, obj.metainfo.heading_lev_collapsed); } - obj = obj_heading_ancestors(obj, lv_ancestors_txt); + obj = obj.obj_heading_ancestors(lv_ancestors_txt); } obj = _links(obj); } @@ -2437,13 +2437,13 @@ if (the_document_body_section.length > 1) { || (opt_action.epub) || (opt_action.sqlite_discrete) || (opt_action.sqlite_update)) { - obj = obj_dom_structure_set_markup_tags(obj, dom_structure_markedup_tags_status, obj.metainfo.heading_lev_markup); - obj = obj_dom_set_collapsed_tags(obj, dom_structure_collapsed_tags_status, obj.metainfo.heading_lev_collapsed); + obj = obj.obj_dom_structure_set_markup_tags(dom_structure_markedup_tags_status, obj.metainfo.heading_lev_markup); + obj = obj.obj_dom_set_collapsed_tags(dom_structure_collapsed_tags_status, obj.metainfo.heading_lev_collapsed); } - obj = obj_heading_ancestors(obj, lv_ancestors_txt); + obj = obj.obj_heading_ancestors(lv_ancestors_txt); } else if (obj.metainfo.is_a == "para") { _images ~= extract_images(obj.text); - obj = _image_dimensions(manifest_matter, obj); + obj = _image_dimensions(obj, manifest_matter); } obj = _links(obj); } @@ -2489,10 +2489,10 @@ if (the_endnotes_section.length > 1) { || (opt_action.epub) || (opt_action.sqlite_discrete) || (opt_action.sqlite_update)) { - obj = obj_dom_structure_set_markup_tags(obj, dom_structure_markedup_tags_status, obj.metainfo.heading_lev_markup); - obj = obj_dom_set_collapsed_tags(obj, dom_structure_collapsed_tags_status, obj.metainfo.heading_lev_collapsed); + obj = obj.obj_dom_structure_set_markup_tags(dom_structure_markedup_tags_status, obj.metainfo.heading_lev_markup); + obj = obj.obj_dom_set_collapsed_tags(dom_structure_collapsed_tags_status, obj.metainfo.heading_lev_collapsed); } - obj = obj_heading_ancestors(obj, lv_ancestors_txt); + obj = obj.obj_heading_ancestors(lv_ancestors_txt); } obj = _links(obj); } @@ -2533,10 +2533,10 @@ if (the_glossary_section.length > 1) { || (opt_action.epub) || (opt_action.sqlite_discrete) || (opt_action.sqlite_update)) { - obj = obj_dom_structure_set_markup_tags(obj, dom_structure_markedup_tags_status, obj.metainfo.heading_lev_markup); - obj = obj_dom_set_collapsed_tags(obj, dom_structure_collapsed_tags_status, obj.metainfo.heading_lev_collapsed); + obj = obj.obj_dom_structure_set_markup_tags(dom_structure_markedup_tags_status, obj.metainfo.heading_lev_markup); + obj = obj.obj_dom_set_collapsed_tags(dom_structure_collapsed_tags_status, obj.metainfo.heading_lev_collapsed); } - obj = obj_heading_ancestors(obj, lv_ancestors_txt); + obj = obj.obj_heading_ancestors(lv_ancestors_txt); } else if (obj.metainfo.is_a == "glossary") { obj_cite_digits = ocn_emit(OCNstatus.on); obj.metainfo.ocn = obj_cite_digits.object_number; @@ -2581,10 +2581,10 @@ if (the_bibliography_section.length > 1) { || (opt_action.epub) || (opt_action.sqlite_discrete) || (opt_action.sqlite_update)) { - obj = obj_dom_structure_set_markup_tags(obj, dom_structure_markedup_tags_status, obj.metainfo.heading_lev_markup); - obj = obj_dom_set_collapsed_tags(obj, dom_structure_collapsed_tags_status, obj.metainfo.heading_lev_collapsed); + obj = obj.obj_dom_structure_set_markup_tags(dom_structure_markedup_tags_status, obj.metainfo.heading_lev_markup); + obj = obj.obj_dom_set_collapsed_tags(dom_structure_collapsed_tags_status, obj.metainfo.heading_lev_collapsed); } - obj = obj_heading_ancestors(obj, lv_ancestors_txt); + obj = obj.obj_heading_ancestors(lv_ancestors_txt); } else if (obj.metainfo.is_a == "bibliography") { obj_cite_digits = ocn_emit(OCNstatus.on); obj.metainfo.ocn = obj_cite_digits.object_number; @@ -2636,10 +2636,10 @@ if (the_bookindex_section.length > 1) { || (opt_action.epub) || (opt_action.sqlite_discrete) || (opt_action.sqlite_update)) { - obj = obj_dom_structure_set_markup_tags(obj, dom_structure_markedup_tags_status, obj.metainfo.heading_lev_markup); - obj = obj_dom_set_collapsed_tags(obj, dom_structure_collapsed_tags_status, obj.metainfo.heading_lev_collapsed); + obj = obj.obj_dom_structure_set_markup_tags(dom_structure_markedup_tags_status, obj.metainfo.heading_lev_markup); + obj = obj.obj_dom_set_collapsed_tags(dom_structure_collapsed_tags_status, obj.metainfo.heading_lev_collapsed); } - obj = obj_heading_ancestors(obj, lv_ancestors_txt); + obj = obj.obj_heading_ancestors(lv_ancestors_txt); } else if (obj.metainfo.is_a == "bookindex") { obj_cite_digits = ocn_emit(OCNstatus.bkidx); obj.metainfo.ocn = obj_cite_digits.object_number; @@ -2688,10 +2688,10 @@ if (the_blurb_section.length > 1) { || (opt_action.epub) || (opt_action.sqlite_discrete) || (opt_action.sqlite_update)) { - obj = obj_dom_structure_set_markup_tags(obj, dom_structure_markedup_tags_status, obj.metainfo.heading_lev_markup); - obj = obj_dom_set_collapsed_tags(obj, dom_structure_collapsed_tags_status, obj.metainfo.heading_lev_collapsed); + obj = obj.obj_dom_structure_set_markup_tags(dom_structure_markedup_tags_status, obj.metainfo.heading_lev_markup); + obj = obj.obj_dom_set_collapsed_tags(dom_structure_collapsed_tags_status, obj.metainfo.heading_lev_collapsed); } - obj = obj_heading_ancestors(obj, lv_ancestors_txt); + obj = obj.obj_heading_ancestors(lv_ancestors_txt); } else if (obj.metainfo.is_a == "blurb") { obj_cite_digits = ocn_emit(OCNstatus.off); obj.metainfo.object_number_off = obj_cite_digits.off; @@ -2830,9 +2830,9 @@ comp_obj_heading_.metainfo.parent_ocn = 0; comp_obj_heading_.metainfo.parent_lev_markup = 0; comp_obj_heading_.metainfo.dom_structure_markedup_tags_status = dom_structure_markedup_tags_status.dup; comp_obj_heading_.metainfo.dom_structure_collapsed_tags_status = dom_structure_collapsed_tags_status.dup; -comp_obj_heading_ = obj_dom_structure_set_markup_tags(comp_obj_heading_, dom_structure_markedup_tags_status, 0); -comp_obj_heading_ = obj_dom_set_collapsed_tags(comp_obj_heading_, dom_structure_collapsed_tags_status, 0); -comp_obj_heading_ = obj_heading_ancestors(comp_obj_heading_, lv_ancestors_txt); +comp_obj_heading_ = comp_obj_heading_.obj_dom_structure_set_markup_tags(dom_structure_markedup_tags_status, 0); +comp_obj_heading_ = comp_obj_heading_.obj_dom_set_collapsed_tags(dom_structure_collapsed_tags_status, 0); +comp_obj_heading_ = comp_obj_heading_.obj_heading_ancestors(lv_ancestors_txt); // the_dom_tail_section ~= comp_obj_heading_; // remove tail for now, decide on later #+END_SRC @@ -3145,6 +3145,12 @@ void _start_block_(L,T,N)( static auto rgx = Rgx(); string code_block_syntax = ""; bool code_block_numbered = false; +#+END_SRC + +******* code + +#+name: abs_functions_block +#+BEGIN_SRC d if (auto m = line.matchFirst(rgx.block_curly_code_open)) { /+ curly code open +/ code_block_syntax = (m.captures[1]) ? m.captures[1].to!string : ""; @@ -3159,6 +3165,12 @@ void _start_block_(L,T,N)( obj_type_status["blocks"] = TriState.on; obj_type_status["code"] = TriState.on; obj_type_status["curly_code"] = TriState.on; +#+END_SRC + +******* poem + +#+name: abs_functions_block +#+BEGIN_SRC d } else if (line.matchFirst(rgx.block_curly_poem_open)) { /+ curly poem open +/ debug(poem) { // poem (curly) open @@ -3172,6 +3184,12 @@ void _start_block_(L,T,N)( obj_type_status["verse_new"] = State.on; obj_type_status["poem"] = TriState.on; obj_type_status["curly_poem"] = TriState.on; +#+END_SRC + +******* group + +#+name: abs_functions_block +#+BEGIN_SRC d } else if (line.matchFirst(rgx.block_curly_group_open)) { /+ curly group open +/ debug(group) { // group (curly) open @@ -3183,6 +3201,12 @@ void _start_block_(L,T,N)( obj_type_status["blocks"] = TriState.on; obj_type_status["group"] = TriState.on; obj_type_status["curly_group"] = TriState.on; +#+END_SRC + +******* block + +#+name: abs_functions_block +#+BEGIN_SRC d } else if (line.matchFirst(rgx.block_curly_block_open)) { /+ curly block open +/ debug(block) { // block (curly) open @@ -3194,6 +3218,12 @@ void _start_block_(L,T,N)( obj_type_status["blocks"] = TriState.on; obj_type_status["block"] = TriState.on; obj_type_status["curly_block"] = TriState.on; +#+END_SRC + +******* quote + +#+name: abs_functions_block +#+BEGIN_SRC d } else if (line.matchFirst(rgx.block_curly_quote_open)) { /+ curly quote open +/ debug(quote) { // quote (curly) open @@ -3205,6 +3235,12 @@ void _start_block_(L,T,N)( obj_type_status["blocks"] = TriState.on; obj_type_status["quote"] = TriState.on; obj_type_status["curly_quote"] = TriState.on; +#+END_SRC + +******* table + +#+name: abs_functions_block +#+BEGIN_SRC d } else if (auto m = line.matchFirst(rgx.block_curly_table_open)) { /+ curly table open +/ debug(table) { // table (curly) open @@ -3218,6 +3254,12 @@ void _start_block_(L,T,N)( obj_type_status["blocks"] = TriState.on; obj_type_status["table"] = TriState.on; obj_type_status["curly_table"] = TriState.on; +#+END_SRC + +******* table special + +#+name: abs_functions_block +#+BEGIN_SRC d } else if (auto m = line.matchFirst(rgx.block_curly_table_special_markup)) { /+ table: special table block markup syntax! +/ an_object["table_head"] = m.captures[1].to!string; @@ -3228,6 +3270,7 @@ void _start_block_(L,T,N)( #+END_SRC ****** block (various) tic open :tic: +******* code #+name: abs_functions_block #+BEGIN_SRC d @@ -3245,6 +3288,12 @@ void _start_block_(L,T,N)( obj_type_status["blocks"] = TriState.on; obj_type_status["code"] = TriState.on; obj_type_status["tic_code"] = TriState.on; +#+END_SRC + +******* poem + +#+name: abs_functions_block +#+BEGIN_SRC d } else if (line.matchFirst(rgx.block_tic_poem_open)) { /+ tic poem open +/ debug(poem) { // poem (tic) open @@ -3258,6 +3307,12 @@ void _start_block_(L,T,N)( obj_type_status["verse_new"] = State.on; obj_type_status["poem"] = TriState.on; obj_type_status["tic_poem"] = TriState.on; +#+END_SRC + +******* group + +#+name: abs_functions_block +#+BEGIN_SRC d } else if (line.matchFirst(rgx.block_tic_group_open)) { /+ tic group open +/ debug(group) { // group (tic) open @@ -3269,6 +3324,12 @@ void _start_block_(L,T,N)( obj_type_status["blocks"] = TriState.on; obj_type_status["group"] = TriState.on; obj_type_status["tic_group"] = TriState.on; +#+END_SRC + +******* block + +#+name: abs_functions_block +#+BEGIN_SRC d } else if (line.matchFirst(rgx.block_tic_block_open)) { /+ tic block open +/ debug(block) { // block (tic) open @@ -3280,6 +3341,12 @@ void _start_block_(L,T,N)( obj_type_status["blocks"] = TriState.on; obj_type_status["block"] = TriState.on; obj_type_status["tic_block"] = TriState.on; +#+END_SRC + +******* quote + +#+name: abs_functions_block +#+BEGIN_SRC d } else if (line.matchFirst(rgx.block_tic_quote_open)) { /+ tic quote open +/ debug(quote) { // quote (tic) open @@ -3291,6 +3358,12 @@ void _start_block_(L,T,N)( obj_type_status["blocks"] = TriState.on; obj_type_status["quote"] = TriState.on; obj_type_status["tic_quote"] = TriState.on; +#+END_SRC + +******* table + +#+name: abs_functions_block +#+BEGIN_SRC d } else if (auto m = line.matchFirst(rgx.block_tic_table_open)) { /+ tic table open +/ debug(table) { // table (tic) open @@ -3783,7 +3856,7 @@ void _poem_block_(L,O,T,C,N,CMM,Ts)( comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; the_document_body_section ~= comp_obj_block; - tag_assoc = inline_para_link_anchor(an_object, tag_in_seg, tag_assoc); + tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); } object_reset(an_object); processing.remove("verse"); @@ -3846,7 +3919,7 @@ void _poem_block_(L,O,T,C,N,CMM,Ts)( comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; the_document_body_section ~= comp_obj_block; - tag_assoc = inline_para_link_anchor(an_object, tag_in_seg, tag_assoc); + tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); object_reset(an_object); processing.remove("verse"); ++cntr; @@ -3892,7 +3965,7 @@ void _poem_block_(L,O,T,C,N,CMM,Ts)( comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; the_document_body_section ~= comp_obj_block; - tag_assoc = inline_para_link_anchor(an_object, tag_in_seg, tag_assoc); + tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); object_number_poem["end"] = obj_cite_digits.object_number.to!string; object_reset(an_object); processing.remove("verse"); @@ -3955,7 +4028,7 @@ void _poem_block_(L,O,T,C,N,CMM,Ts)( comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; the_document_body_section ~= comp_obj_block; - tag_assoc = inline_para_link_anchor(an_object, tag_in_seg, tag_assoc); + tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); object_reset(an_object); processing.remove("verse"); ++cntr; @@ -4094,8 +4167,8 @@ void _table_closed_make_special_notation_table_(N,CMM)( comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; comp_obj_block.metainfo.object_number_type = obj_cite_digits.type; - comp_obj_block = table_instructions(comp_obj_block, an_object["table_head"]); - comp_obj_block = table_substantive_munge_special(comp_obj_block, an_object["substantive"]); + comp_obj_block = comp_obj_block.table_instructions(an_object["table_head"]); + comp_obj_block = comp_obj_block.table_substantive_munge_special(an_object["substantive"]); the_document_body_section ~= comp_obj_block; object_reset(an_object); processing.remove("verse"); @@ -4182,7 +4255,7 @@ void _block_flag_line_empty_(B,N,CMM,Ts)( comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; the_document_body_section ~= comp_obj_block; - tag_assoc = inline_para_link_anchor(an_object, tag_in_seg, tag_assoc); + tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); obj_type_status["blocks"] = TriState.off; obj_type_status["quote"] = TriState.off; object_reset(an_object); @@ -4237,7 +4310,7 @@ void _block_flag_line_empty_(B,N,CMM,Ts)( comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; the_document_body_section ~= comp_obj_block; - tag_assoc = inline_para_link_anchor(an_object, tag_in_seg, tag_assoc); + tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); obj_type_status["blocks"] = TriState.off; obj_type_status["group"] = TriState.off; object_reset(an_object); @@ -4434,8 +4507,8 @@ void _block_flag_line_empty_(B,N,CMM,Ts)( comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; comp_obj_block.metainfo.object_number_type = obj_cite_digits.type; - comp_obj_block = table_instructions(comp_obj_block, an_object["table_head"]); - comp_obj_block = table_substantive_munge(comp_obj_block, an_object["substantive"]); + comp_obj_block = comp_obj_block.table_instructions(an_object["table_head"]); + comp_obj_block = comp_obj_block.table_substantive_munge(an_object["substantive"]); the_document_body_section ~= comp_obj_block; obj_type_status["blocks"] = TriState.off; obj_type_status["table"] = TriState.off; @@ -5138,7 +5211,7 @@ auto table_substantive_munge(O,T)( _table_cols = col.split(rgx.table_col_delimiter); _table ~= _table_cols; } - table_object = table_array_munge(table_object, _table); + table_object = table_object.table_array_munge(_table); return table_object; } #+END_SRC @@ -5160,7 +5233,7 @@ auto table_substantive_munge_special(O,T)( _table_cols = col.split(rgx.table_col_delimiter_special); _table ~= _table_cols; } - table_object = table_array_munge(table_object, _table); + table_object = table_object.table_array_munge(_table); return table_object; } #+END_SRC -- cgit v1.2.3