aboutsummaryrefslogtreecommitdiffhomepage
path: root/org/ao_abstract_doc_source.org
diff options
context:
space:
mode:
Diffstat (limited to 'org/ao_abstract_doc_source.org')
-rw-r--r--org/ao_abstract_doc_source.org129
1 files changed, 65 insertions, 64 deletions
diff --git a/org/ao_abstract_doc_source.org b/org/ao_abstract_doc_source.org
index e413570..897a3b7 100644
--- a/org/ao_abstract_doc_source.org
+++ b/org/ao_abstract_doc_source.org
@@ -14,7 +14,7 @@
[[./sdp.org][sdp]] [[./][org/]]
* 0. Code Skeleton / Outline / Structure (tangles) :tangle:io:file:
-** 1. ao abstract doc source: :ao_abstract_doc_source.d:
+** 1. ao abstract doc source: :ao_abstract_doc_source:
#+BEGIN_SRC d :tangle ../src/sdp/ao_abstract_doc_source.d
/++
@@ -128,7 +128,7 @@ template SiSUdocAbstraction() {
} /+ ← closed: template SiSUdocAbstraction +/
#+END_SRC
-** 2. ao object setter: :ao_object_setter.d:
+** 2. ao object setter: :ao_object_setter:
#+BEGIN_SRC d :tangle ../src/sdp/ao_object_setter.d
/++
@@ -145,8 +145,8 @@ template ObjectSetter() {
* 1. Document Abstraction :abstract:process:
Process markup document, create document abstraction.
-** _1. pre loop processing_ :pre:
-*** imports :imports:
+** _1. pre loop processing_ :pre:
+*** imports :imports:
[[./ao_defaults.org][ao_defaults]]
@@ -158,7 +158,7 @@ import
ao_rgx; // sdp/ao_rgx.d
#+END_SRC
-*** mixins :mixins:
+*** mixins :mixins:
#+name: abs_mixins
#+BEGIN_SRC d
@@ -166,7 +166,7 @@ mixin ObjectSetter;
mixin InternalMarkup;
#+END_SRC
-*** initialize :initialize:
+*** initialize :initialize:
#+name: abs_init_struct
#+BEGIN_SRC d
@@ -483,8 +483,8 @@ auto munge = ObjInlineMarkupMunge();
string[][string] lev4_subtoc;
#+END_SRC
-** _2. loop: process document body_ [+6] :loop:
-*** loop scope :scope:
+** _2. loop: process document body_ [+6] :loop:
+*** loop scope :scope:
#+name: abs_in_loop_body_00
#+BEGIN_SRC d
@@ -515,7 +515,7 @@ debug(srclines) {
}
#+END_SRC
-*** check whether obj_cite_number is on or turned off :ocn:
+*** check whether obj_cite_number is on or turned off :ocn:
#+name: abs_in_loop_body_00
#+BEGIN_SRC d
@@ -525,7 +525,7 @@ if (!line.empty) {
#+END_SRC
*** [#A] separate regular markup text from code blocks [+5]
-**** code blocks :block:code:
+**** code blocks :block:code:
#+name: abs_in_loop_body_00_code_block
#+BEGIN_SRC d
@@ -534,9 +534,9 @@ _code_block_(line, an_object, type);
continue;
#+END_SRC
-**** non code objects (other blocks or regular text) [+4] :non_code:
-***** in section (biblio, glossary, blurb) (block group) [+1] :block:active:
-****** within section: biblio :biblio:
+**** non code objects (other blocks or regular text) [+4] :non_code:
+***** in section (biblio, glossary, blurb) (block group) [+1] :block:active:
+****** within section: biblio :biblio:
#+name: abs_in_loop_body_non_code_obj
#+BEGIN_SRC d
@@ -559,7 +559,7 @@ if ((matchFirst(line, rgx.heading_biblio)
continue;
#+END_SRC
-****** within section: glossary :glossary:
+****** within section: glossary :glossary:
if there is a glossary section you need to:
- extract it
@@ -643,7 +643,7 @@ if there is a glossary section you need to:
continue;
#+END_SRC
-****** within section: blurb :blurb:
+****** within section: blurb :blurb:
if there is a blurb section you need to:
- extract it
@@ -741,8 +741,8 @@ if there is a blurb section you need to:
continue;
#+END_SRC
-***** in blocks [+1] :block:active:
-****** within block: poem :poem:
+***** in blocks [+1] :block:active:
+****** within block: poem :poem:
#+name: abs_in_loop_body_non_code_obj
#+BEGIN_SRC d
@@ -752,7 +752,7 @@ if there is a blurb section you need to:
continue;
#+END_SRC
-****** within block: group :group:
+****** within block: group :group:
#+name: abs_in_loop_body_non_code_obj
#+BEGIN_SRC d
@@ -763,7 +763,7 @@ if there is a blurb section you need to:
continue;
#+END_SRC
-****** within block: block :block:
+****** within block: block :block:
#+name: abs_in_loop_body_non_code_obj
#+BEGIN_SRC d
@@ -773,7 +773,7 @@ if there is a blurb section you need to:
continue;
#+END_SRC
-****** within block: quote :quote:
+****** within block: quote :quote:
#+name: abs_in_loop_body_non_code_obj
#+BEGIN_SRC d
@@ -783,7 +783,7 @@ if there is a blurb section you need to:
continue;
#+END_SRC
-****** within block: table :table:
+****** within block: table :table:
#+name: abs_in_loop_body_non_code_obj
#+BEGIN_SRC d
@@ -821,7 +821,7 @@ continue;
#+END_SRC
****** line not empty [+2]
-******* asserts :assert:
+******* asserts :assert:
#+name: abs_in_loop_body_not_block_obj
#+BEGIN_SRC d
@@ -848,7 +848,7 @@ if (type["blocks"] == TriState.closing) {
}
#+END_SRC
-******* book index :bookindex:
+******* book index :bookindex:
#+name: abs_in_loop_body_not_block_obj
#+BEGIN_SRC d
@@ -867,7 +867,7 @@ if ((matchFirst(line, rgx.book_index))
/+ not book_index +/
#+END_SRC
-******** matched: comment :comment:match:
+******** matched: comment :comment:match:
#+name: abs_in_loop_body_not_block_obj
#+BEGIN_SRC d
@@ -889,7 +889,7 @@ if ((matchFirst(line, rgx.book_index))
++cntr;
#+END_SRC
-******** flag not set & line not exist: heading or para :heading:paragraph:
+******** flag not set & line not exist: heading or para :heading:paragraph:
#+name: abs_in_loop_body_not_block_obj
#+BEGIN_SRC d
@@ -928,7 +928,7 @@ if ((matchFirst(line, rgx.book_index))
}
#+END_SRC
-******** line exist: heading :heading:
+******** line exist: heading :heading:
#+name: abs_in_loop_body_not_block_obj
#+BEGIN_SRC d
@@ -941,7 +941,7 @@ if ((matchFirst(line, rgx.book_index))
++line_occur["heading"];
#+END_SRC
-******** line exist: para :para:
+******** line exist: para :para:
#+name: abs_in_loop_body_not_block_obj
#+BEGIN_SRC d
@@ -976,7 +976,7 @@ _block_flag_line_empty_(
****** line empty [+1]
-******* assert line empty :assert:
+******* assert line empty :assert:
#+name: abs_in_loop_body_not_block_obj_line_empty
#+BEGIN_SRC d
@@ -990,7 +990,7 @@ assert(
);
#+END_SRC
-******* heading object :heading:object:
+******* heading object :heading:object:
#+name: abs_in_loop_body_not_block_obj_line_empty
#+BEGIN_SRC d
@@ -1065,7 +1065,7 @@ if ((type["heading"] == State.on)
++cntr;
#+END_SRC
-******* paragraph object :paragraph:object:
+******* paragraph object :paragraph:object:
#+name: abs_in_loop_body_not_block_obj_line_empty
#+BEGIN_SRC d
@@ -1121,7 +1121,7 @@ if ((type["heading"] == State.on)
*** close non code objects (regular text)
-*** regular text objects :text:paragraph:
+*** regular text objects :text:paragraph:
#+name: abs_in_loop_body_01
#+BEGIN_SRC d
@@ -1154,7 +1154,7 @@ if (the_document_body_section.length > 0) {
}
#+END_SRC
-** _3. post loop processing_ :post:
+** _3. post main-loop processing_ :post:
*** misc
#+name: abs_post
@@ -1175,7 +1175,7 @@ debug(objectrelated2) { // check
#+END_SRC
*** tie up preparation of document sections
-**** endnotes section (scroll & seg) :endnotes:
+**** endnotes section (scroll & seg) :endnotes:
#+name: abs_post
#+BEGIN_SRC d
@@ -1196,7 +1196,7 @@ debug(endnotes) {
}
#+END_SRC
-**** no glossary section? :glossary:
+**** no glossary section? :glossary:
#+name: abs_post
#+BEGIN_SRC d
@@ -1224,7 +1224,7 @@ debug(glossary) {
}
#+END_SRC
-**** bibliography section (objects) :bibliography:
+**** bibliography section (objects) :bibliography:
#+name: abs_post
#+BEGIN_SRC d
@@ -1360,7 +1360,7 @@ auto biblio_entry_tags_jsonstr = `{
"id" : ""
}`; // is: book, article, magazine, newspaper, blog, other
-**** bookindex section (scroll & seg) :book:index:
+**** bookindex section (scroll & seg) :book:index:
#+name: abs_post
#+BEGIN_SRC d
@@ -1382,7 +1382,7 @@ debug(bookindex) { // bookindex
}
#+END_SRC
-**** no blurb section? :blurb:
+**** no blurb section? :blurb:
#+name: abs_post
#+BEGIN_SRC d
@@ -1411,7 +1411,7 @@ debug(blurb) {
}
#+END_SRC
-**** toc backmatter, table of contents backmatter (scroll & seg) :contents:
+**** toc backmatter, table of contents backmatter (scroll & seg) :contents:
#+name: abs_post
#+BEGIN_SRC d
@@ -1548,7 +1548,8 @@ the_document_head_section ~= the_document_body_section[0];
the_document_body_section=the_document_body_section[1..$];
#+END_SRC
-**** loop: backmatter loop up to lev4: html_segnames, set backmatter pointers
+*** TODO minor loops :post:
+**** 1. loop: backmatter loop up to lev4: html_segnames, set backmatter pointers
could optimise by
- skipping second and third pass unless the output html seg or epub is being made!
@@ -1623,7 +1624,7 @@ if (the_blurb_section.length > 1) {
}
#+END_SRC
-**** [#A] loop: all objects structural relationships (sections, segments, objects)
+**** 2. loop: all objects structural relationships (sections, segments, objects)
needed for DOM structure, segnames & subtoc, backmatter pointers
@@ -1911,7 +1912,8 @@ if (the_blurb_section.length > 1) {
}
#+END_SRC
-*** [#B] the document :document:
+** _4. return document tuple_ :post:
+*** the document :document:
#+name: abs_post
#+BEGIN_SRC d
@@ -1946,7 +1948,7 @@ destroy(the_bookindex_section);
destroy(the_blurb_section);
#+END_SRC
-*** [#A] return document tuple :return:tuple:
+*** _return document tuple_ :return:tuple:
#+name: abs_post
#+BEGIN_SRC d
@@ -1957,7 +1959,7 @@ auto t = tuple(
return t;
#+END_SRC
-** 4. Functions :abstract:function:
+** 5. Functions :abstract:function:
functions used in document abstraction
@@ -2255,7 +2257,6 @@ void _code_block_(
#+END_SRC
***** biblio block :biblio:
-
****** biblio tag map
#+name: abs_functions_block_biblio
@@ -3054,7 +3055,7 @@ void _block_flag_line_empty_(
}
#+END_SRC
-*** book index :bookindex:
+*** book index :bookindex:
#+name: abs_functions_book_index
#+BEGIN_SRC d
@@ -3200,7 +3201,7 @@ auto _heading_found_(
}
#+END_SRC
-**** TODO heading make set :heading:
+**** TODO heading make set :heading:
#+name: abs_functions_heading
#+BEGIN_SRC d
@@ -3262,7 +3263,7 @@ auto _heading_make_set_(
}
#+END_SRC
-**** heading match :heading:
+**** heading match :heading:
#+name: abs_functions_heading
#+BEGIN_SRC d
@@ -3489,7 +3490,7 @@ struct OCNemitter {
}
#+END_SRC
-***** object inline markup munge :markup:inline:
+***** object inline markup munge :markup:inline:
#+name: ao_emitters_obj_inline_markup_munge
#+BEGIN_SRC d
@@ -3724,7 +3725,7 @@ struct ObjInlineMarkupMunge {
}
#+END_SRC
-***** toc, tags, object inline markup :markup:inline:
+***** toc, tags, object inline markup :markup:inline:
****** open
#+name: ao_emitters_obj_inline_markup
@@ -3734,7 +3735,7 @@ struct ObjInlineMarkup {
string[string] obj_txt;
#+END_SRC
-****** object inline markup and anchor tags :markup:inline:
+****** object inline markup and anchor tags :markup:inline:
#+name: ao_emitters_obj_inline_markup_and_anchor_tags
#+BEGIN_SRC d
@@ -3805,7 +3806,7 @@ struct ObjInlineMarkup {
}
#+END_SRC
-****** toc, table of contents build, gather headings :markup:inline:
+****** toc, table of contents build, gather headings :markup:inline:
#+name: ao_emitters_obj_inline_markup_table_of_contents
#+BEGIN_SRC d
@@ -4181,7 +4182,7 @@ private:
}
#+END_SRC
-***** object attrib :attributes:
+***** object attrib :attributes:
****** attributes structure open, public
#+name: ao_emitters_obj_attributes
@@ -4481,8 +4482,8 @@ struct ObjAttributes {
}
#+END_SRC
-**** book index :book:index:
-***** book index nugget hash :hash:nugget:
+**** book index :book:index:
+***** book index nugget hash :hash:nugget:
#+name: ao_emitters_book_index_nugget
#+BEGIN_SRC d
@@ -4561,7 +4562,7 @@ struct BookIndexNuggetHash {
}
#+END_SRC
-***** book index (sort &) report indented :report:indented:
+***** book index (sort &) report indented :report:indented:
#+name: ao_emitters_book_index_report_indented
#+BEGIN_SRC d
@@ -4593,7 +4594,7 @@ struct BookIndexReportIndent {
}
#+END_SRC
-***** book index (sort &) report section :report:section:
+***** book index (sort &) report section :report:section:
****** book index struct open
#+name: ao_emitters_book_index_report_section
@@ -4636,7 +4637,7 @@ struct BookIndexReportSection {
}
#+END_SRC
-****** book index (sort &) build section :report:section:
+****** book index (sort &) build section :report:section:
#+name: ao_emitters_book_index_report_section
#+BEGIN_SRC d
@@ -4779,7 +4780,7 @@ struct BookIndexReportSection {
}
#+END_SRC
-**** (end)notes section :endnotes:section:
+**** (end)notes section :endnotes:section:
#+name: ao_emitters_endnotes
#+BEGIN_SRC d
@@ -4966,7 +4967,7 @@ struct NotesSection {
}
#+END_SRC
-**** bibliography :bibliography:
+**** bibliography :bibliography:
***** biblio struct open
#+name: ao_emitters_bibliography
@@ -5083,7 +5084,7 @@ struct Bibliography {
}
#+END_SRC
-**** node structure metadata :structure:metadata:node:
+**** node structure metadata :structure:metadata:node:
***** metadata node struct open
#+name: ao_emitters_metadata
@@ -5336,8 +5337,8 @@ struct NodeStructureMetadata {
}
#+END_SRC
-*** function assertions :assertions:
-**** mixin template: assertions on markup document structure :doc_structure:
+*** function assertions :assertions:
+**** mixin template: assertions on markup document structure :doc_structure:
#+name: abs_functions_assertions
#+BEGIN_SRC d
@@ -5518,7 +5519,7 @@ auto assertions_doc_structure(
}
#+END_SRC
-**** mixin template: assertions on blocks :blocks:
+**** mixin template: assertions on blocks :blocks:
#+name: abs_functions_assertions
#+BEGIN_SRC d
@@ -5550,7 +5551,7 @@ auto assertions_flag_types_block_status_none_or_closed(int[string] type) {
set abstracted objects for downstream processing
-** initialize structs :struct:
+** initialize structs :struct:
*** heading attribute
#+name: ao_structs_init