diff options
Diffstat (limited to 'org/ao_abstract_doc_source.org')
-rw-r--r-- | org/ao_abstract_doc_source.org | 40 |
1 files changed, 15 insertions, 25 deletions
diff --git a/org/ao_abstract_doc_source.org b/org/ao_abstract_doc_source.org index 1942b5e..75c581d 100644 --- a/org/ao_abstract_doc_source.org +++ b/org/ao_abstract_doc_source.org @@ -47,14 +47,11 @@ mixin InternalMarkup; #+name: abs_init_struct #+BEGIN_SRC d /+ initialize +/ - auto rgx = Rgx(); ObjComposite[] contents_the_objects; - string[string] an_object, processing; auto set_abstract_object = ObjectAbstractSet(); auto note_section = NotesSection(); - /+ enum +/ enum State { off, on } enum TriState { off, on, closing } // make aware, possibility of third state @@ -71,33 +68,27 @@ enum DocStructMarkupHeading { content_non_header } // header section A-D; header text 1-4 enum DocStructCollapsedHeading { lv0, lv1, lv2, lv3, lv4, lv5, lv6, lv7 } // not yet used - /+ biblio variables +/ string biblio_tag_name, biblio_tag_entry, st; string[] biblio_arr_json; JSONValue[] bib_arr_json; int bib_entry; - /+ counters +/ long counter, previous_count; int[string] line_occur; int verse_line, heading_pointer; - /+ paragraph attributes +/ string[string] indent; bool bullet = true; string content_non_header = "8"; - auto obj_im = ObjInlineMarkup(); auto obj_att = ObjAttrib(); - /+ ocn +/ int obj_cite_number, obj_cite_number_; auto object_citation_number = OCNemitter(); int obj_cite_number_emit(int obj_cite_number_status_flag) { return object_citation_number.obj_cite_number_emitter(obj_cite_number_status_flag); } - /+ book index variables +/ string book_idx_tmp; string[][string][string] bookindex_unordered_hashes; @@ -105,7 +96,6 @@ auto bookindex_extract_hash = BookIndexNuggetHash(); string[][string][string] bkidx_hash(string bookindex_section, int obj_cite_number) { return bookindex_extract_hash.bookindex_nugget_hash(bookindex_section, obj_cite_number); } - /+ node +/ string node; auto node_construct = NodeStructureMetadata(); @@ -400,6 +390,7 @@ if (matchFirst(line, rgx.block_open)) { #+END_SRC ******* asserts :assert: + #+name: abs_in_loop_body_not_block_obj #+BEGIN_SRC d assert( @@ -424,7 +415,9 @@ if (matchFirst(line, rgx.block_open)) { ); } #+END_SRC + ******* book index :bookindex: + #+name: abs_in_loop_body_not_block_obj #+BEGIN_SRC d if ((matchFirst(line, rgx.book_index)) @@ -435,12 +428,15 @@ if (matchFirst(line, rgx.block_open)) { #+END_SRC ******* not book index [+1] + #+name: abs_in_loop_body_not_block_obj #+BEGIN_SRC d } else { /+ not book_index +/ #+END_SRC + ******** matched: comment :comment:match: + #+name: abs_in_loop_body_not_block_obj #+BEGIN_SRC d if (auto m = matchFirst(line, rgx.comment)) { @@ -455,7 +451,9 @@ if (matchFirst(line, rgx.block_open)) { processing.remove("verse"); ++counter; #+END_SRC + ******** flag not set & line not exist: heading or para :heading:paragraph: + #+name: abs_in_loop_body_not_block_obj #+BEGIN_SRC d } else if (((line_occur["para"] == State.off) @@ -488,6 +486,7 @@ if (matchFirst(line, rgx.block_open)) { #+END_SRC ******** line exist: heading :heading: + #+name: abs_in_loop_body_not_block_obj #+BEGIN_SRC d } else if (line_occur["heading"] > State.off) { @@ -498,7 +497,9 @@ if (matchFirst(line, rgx.block_open)) { an_object["obj"] ~= line ~= "\n"; ++line_occur["heading"]; #+END_SRC + ******** line exist: para :para: + #+name: abs_in_loop_body_not_block_obj #+BEGIN_SRC d } else if (line_occur["para"] > State.off) { @@ -511,6 +512,7 @@ if (matchFirst(line, rgx.block_open)) { } } #+END_SRC + ****** line empty, with block flag #+name: abs_in_loop_body_not_block_obj @@ -1996,7 +1998,6 @@ auto book_index( } #+END_SRC - ** heading or paragraph :heading:paragraph: *** heading found :heading: @@ -3467,6 +3468,7 @@ struct NodeStructureMetadata { #+END_SRC **** metadata (check) + #+name: ao_emitters #+BEGIN_SRC d string node_emitter_heading( @@ -3867,6 +3869,7 @@ auto assertions_flag_types_block_status_none_or_closed(int[string] type) { set abstracted objects for downstream processing ** structs :struct: + #+name: ao_structs #+BEGIN_SRC d struct HeadingAttrib { @@ -4026,16 +4029,12 @@ auto contents_block_obj_cite_number_string( template SiSUdocAbstraction() { private: struct Abstraction { - /+ ↓ abstraction imports +/ <<abs_imports>> - /+ ↓ abstraction mixins +/ <<abs_mixins>> - /+ ↓ abstraction struct init +/ <<abs_init_struct>> - /+ ↓ abstract marked up document +/ auto abstract_doc_source( char[][] markup_sourcefile_content, @@ -4045,11 +4044,9 @@ template SiSUdocAbstraction() { /+ ↓ abstraction init +/ <<abs_init_rest>> /+ abstraction init ↑ +/ - /+ ↓ loop markup document/text line by line +/ srcDocLoop: foreach (line; markup_sourcefile_content) { - /+ ↓ markup document/text line by line +/ <<abs_in_loop_body_00>> <<abs_in_loop_body_non_code_obj>> @@ -4059,29 +4056,23 @@ template SiSUdocAbstraction() { <<abs_in_loop_body_00_closed>> <<abs_in_loop_body_01>> } /+ ← closed: loop markup document/text line by line +/ - /+ ↓ post loop markup document/text +/ <<abs_post>> /+ post loop markup document/text ↑ +/ - } /+ ← closed: abstract doc source +/ - /+ ↓ abstraction functions +/ <<abs_functions>> /+ abstraction functions ↑ +/ - /+ ↓ abstraction function emitters +/ <<ao_emitters>> /+ abstraction functions emitters ↑ +/ - /+ ↓ abstraction functions assertions +/ <<abs_functions_assertions>> /+ abstraction functions assertions ↑ +/ - } /+ ← closed: struct Abstraction +/ - } /+ ← closed: template SiSUdocAbstraction +/ #+END_SRC + ** ao_object_setter: :ao_object_setter.d: #+BEGIN_SRC d :tangle ../src/sdp/ao_object_setter.d @@ -4092,7 +4083,6 @@ template SiSUdocAbstraction() { template ObjectSetter() { /+ structs +/ <<ao_structs>> - /+ structs setter +/ struct ObjectAbstractSet { import std.conv : to; |