diff options
Diffstat (limited to 'org/ao_abstract_doc_source.org')
-rw-r--r-- | org/ao_abstract_doc_source.org | 112 |
1 files changed, 56 insertions, 56 deletions
diff --git a/org/ao_abstract_doc_source.org b/org/ao_abstract_doc_source.org index 6694fa0..0a53bf7 100644 --- a/org/ao_abstract_doc_source.org +++ b/org/ao_abstract_doc_source.org @@ -3,10 +3,10 @@ #+EMAIL: ralph.amissah@gmail.com #+STARTUP: indent #+LANGUAGE: en -#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil -:t f:t *:t <:t +#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t #+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc #+OPTIONS: author:nil email:nil creator:nil timestamp:nil -#+OPTIONS: ^:nil _:nil +#+PROPERTY: header-args :padline no :exports none :noweb yes #+EXPORT_SELECT_TAGS: export #+EXPORT_EXCLUDE_TAGS: noexport #+FILETAGS: :sdp:rel:ao: @@ -17,7 +17,7 @@ Process markup document, create document abstraction. ** initialize #+name: abs_init -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d /+ initialize +/ mixin ObjectSetters; mixin AssertionsOnMarkupDocumentStructure; @@ -152,7 +152,7 @@ auto dochead_metadata = parseJSON(header_metadata_jsonstr).object; ** loop: process document body [+7] *** scope :scope: #+name: abs_loop_body_00 -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d /* scope */ scope(exit) { } @@ -177,7 +177,7 @@ debug(srclines) { #+END_SRC *** check whether ocn is on or turned off :ocn: #+name: abs_loop_body_00 -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d if ((!line.empty) && (ft["ocn_status_multi_obj"] == 0)) { /* not multi-line object, check whether ocn is on or turned off */ if (match(line, rgx.ocn_block_marks)) { @@ -221,7 +221,7 @@ if ((!line.empty) && (ft["ocn_status_multi_obj"] == 0)) { *** separate regular markup text from code blocks [+6] **** code blocks :block:code: #+name: abs_loop_body_00 -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d if (ft["code"] == 1) { /* block object: code */ if (ft["curly_code"] == 1) { @@ -256,14 +256,14 @@ if (ft["code"] == 1) { #+END_SRC **** non code objects (other blocks or regular text) [+5] :non_code: #+name: abs_loop_body_00 -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (!match(line, rgx.regular_parse_skip)) { /* object other than code block object (includes regular text paragraph) */ #+END_SRC ***** within block group [+1] :block:active: ****** within block group: biblio :biblio: #+name: abs_loop_body_non_code_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d if (((match(line, rgx.heading_biblio) || (ft["heading_biblio"] == 1))) && (!match(line, rgx.heading)) @@ -351,7 +351,7 @@ if (((match(line, rgx.heading_biblio) #+END_SRC ****** within block group: poem :poem: #+name: abs_loop_body_non_code_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (ft["poem"] == 1) { /* within block object: poem */ if (ft["curly_poem"] == 1) { @@ -552,7 +552,7 @@ if (((match(line, rgx.heading_biblio) #+END_SRC ****** within block group: group :group: #+name: abs_loop_body_non_code_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d /* within block object: group */ } else if (ft["group"] == 1) { if (ft["curly_group"] == 1) { @@ -587,7 +587,7 @@ if (((match(line, rgx.heading_biblio) #+END_SRC ****** within block group: block :block: #+name: abs_loop_body_non_code_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (ft["block"] == 1) { /* within block object: block */ if (ft["curly_block"] == 1) { @@ -622,7 +622,7 @@ if (((match(line, rgx.heading_biblio) #+END_SRC ****** within block group: quote :quote: #+name: abs_loop_body_non_code_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (ft["quote"] == 1) { /* within block object: quote */ if (ft["curly_quote"] == 1) { @@ -657,7 +657,7 @@ if (((match(line, rgx.heading_biblio) #+END_SRC ****** within block group: table :table: #+name: abs_loop_body_non_code_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (ft["table"] == 1) { /* within block object: table */ if (ft["curly_table"] == 1) { @@ -692,13 +692,13 @@ if (((match(line, rgx.heading_biblio) #+END_SRC ***** not identified as being within block group [+4] #+name: abs_loop_body_non_code_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else { /* not within a block group */ #+END_SRC ****** assert #+name: abs_loop_body_open_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d assert( (ft["blocks"] == 0) || (ft["blocks"] == 2), @@ -709,7 +709,7 @@ assertions_flag_types_block_status_none_or_closed(ft); ****** open curly block group [+1] :block:curly:open: ******* open block group: code :code: #+name: abs_loop_body_open_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d if (auto m = match(line, rgx.block_curly_code_open)) { /* curly code open */ debug(code) { // code (curly) open @@ -726,7 +726,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******* open block group: poem :poem: #+name: abs_loop_body_open_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (auto m = match(line, rgx.block_curly_poem_open)) { /* curly poem open */ object.remove("obj"); @@ -751,7 +751,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******* open block group: group :group: #+name: abs_loop_body_open_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (auto m = match(line, rgx.block_curly_group_open)) { /* curly group open */ debug(group) { // group (curly) open @@ -768,7 +768,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******* open block group: block :block: #+name: abs_loop_body_open_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (auto m = match(line, rgx.block_curly_block_open)) { /* curly block open */ debug(block) { // block (curly) open @@ -785,7 +785,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******* open block group: quote :quote: #+name: abs_loop_body_open_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (auto m = match(line, rgx.block_curly_quote_open)) { /* curly quote open */ debug(quote) { // quote (curly) open @@ -802,7 +802,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******* open block group: table :table: #+name: abs_loop_body_open_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (auto m = match(line, rgx.block_curly_table_open)) { /* curly table open */ debug(table) { // table (curly) open @@ -820,7 +820,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { ****** open tic block group [+1] :block:tic:open: ******* open block group: code :code: #+name: abs_loop_body_open_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (auto m = match(line, rgx.block_tic_code_open)) { /* tic code open */ debug(code) { // code (tic) open @@ -837,7 +837,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******* open block group: poem :poem: #+name: abs_loop_body_open_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (auto m = match(line, rgx.block_tic_poem_open)) { /* tic poem open */ object.remove("obj"); @@ -862,7 +862,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******* open block group: group :group: #+name: abs_loop_body_open_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (auto m = match(line, rgx.block_tic_group_open)) { /* tic group open */ debug(group) { // group (tic) open @@ -879,7 +879,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******* open block group: block :block: #+name: abs_loop_body_open_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (auto m = match(line, rgx.block_tic_block_open)) { /* tic block open */ debug(block) { // block (tic) open @@ -896,7 +896,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******* open block group: quote :quote: #+name: abs_loop_body_open_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (auto m = match(line, rgx.block_tic_quote_open)) { /* tic quote open */ debug(quote) { // quote (tic) open @@ -913,7 +913,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******* open block group: table :table: #+name: abs_loop_body_open_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (auto m = match(line, rgx.block_tic_table_open)) { /* tic table open */ debug(table) { // table (tic) open @@ -930,14 +930,14 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ****** line not empty [+3] #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (!line.empty) { /* line not empty */ /* non blocks (headers, paragraphs) & closed blocks */ #+END_SRC ******* asserts :assert: #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d assert( !line.empty, "line tested, line not empty surely" @@ -962,7 +962,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******* book index :bookindex: #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d if (auto m = match(line, rgx.book_index)) { /* match book_index */ debug(bookindexmatch) { // book index @@ -1005,13 +1005,13 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******* not book index [+2] #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else { /* not book_index */ #+END_SRC ******** matched: comment :comment:match: #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d if (auto m = match(line, rgx.comment)) { /* matched comment */ debug(comment) { @@ -1039,7 +1039,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******** matched: header make :header:make:match: #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (auto m = match(line, rgx.header_make)) { /* matched header_make */ debug(header1) { // header @@ -1055,7 +1055,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******** matched: header metadata :header:metadata:match: #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (auto m = match(line, rgx.header_metadata)) { /* matched header_metadata */ debug(header1) { // header @@ -1071,7 +1071,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******** flag set: header make :header:make:flag: #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (ft["header_make"] == 1 && (line_occur["header_make"] > 0)) { /* header_make flag set */ @@ -1086,7 +1086,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******** flag set: header metadata :header:metadata:flag: #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (ft["header_metadata"] == 1 && (line_occur["header_metadata"] > 0)) { /* header_metadata flag set */ @@ -1101,7 +1101,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******** flag not set & line not exist: heading or para [+1] #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (((line_occur["para"] == 0) && (line_occur["heading"] == 0)) && ((ft["para"] == 0) @@ -1110,7 +1110,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ********* headings found :heading: #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d if ((to!string(dochead_make["make"]["headings"]).length > 2) && (ft["make_headings"] == 0)) { /* headings found */ @@ -1180,7 +1180,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ********* headings make set :heading: #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d if ((ft["make_headings"] == 1) && ((line_occur["para"] == 0) && (line_occur["heading"] == 0)) @@ -1233,7 +1233,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ********* headings match :heading: #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d if (auto m = match(line, rgx.heading)) { /* heading match */ ft["heading"] = 1; @@ -1360,7 +1360,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ********* para matches :para: #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (line_occur["para"] == 0) { /* para matches */ if (auto m = match(line, rgx.para_indent)) { @@ -1411,7 +1411,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******** line exist: header make :header:make: #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (line_occur["header_make"] > 0) { /* header_make */ // should be caught by sub-header @@ -1423,7 +1423,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******** line exist: header metadata :header:metadata: #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (line_occur["header_metadata"] > 0) { /* header_metadata */ // should be caught by sub-header @@ -1435,7 +1435,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******** line exist: heading :heading: #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (line_occur["heading"] > 0) { /* heading */ debug(heading) { // heading @@ -1446,7 +1446,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ******** line exist: para :para: #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (line_occur["para"] > 0) { /* paragraph */ debug(para) { @@ -1459,7 +1459,7 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ****** line empty, with block flag #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if (ft["blocks"] == 2) { /* line empty, with blocks flag */ assert( @@ -1674,13 +1674,13 @@ if (auto m = match(line, rgx.block_curly_code_open)) { #+END_SRC ****** line empty [+1] #+name: abs_loop_body_not_block_obj -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else { /* line empty */ #+END_SRC ******* assert line empty :assert: #+name: abs_loop_body_not_block_obj_line_empty -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d /* line.empty, post contents, empty variables: */ assert( line.empty, @@ -1693,7 +1693,7 @@ assert( #+END_SRC ******* header_make instructions :header:make:instructions: #+name: abs_loop_body_not_block_obj_line_empty -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d if ((ft["header_make"] == 1) && (line_occur["header_make"] > 0)) { /* header_make instructions (current line empty) */ @@ -1718,7 +1718,7 @@ if ((ft["header_make"] == 1) #+END_SRC ******* header_metadata :header:metadata: #+name: abs_loop_body_not_block_obj_line_empty -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if ((ft["header_metadata"] == 1) && (line_occur["header_metadata"] > 0)) { /* header_metadata (current line empty) */ @@ -1745,7 +1745,7 @@ if ((ft["header_make"] == 1) #+END_SRC ******* heading object :heading:object: #+name: abs_loop_body_not_block_obj_line_empty -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if ((ft["heading"] == 1) && (line_occur["heading"] > 0)) { /* heading object (current line empty) */ @@ -1803,7 +1803,7 @@ if ((ft["header_make"] == 1) #+END_SRC ******* paragraph object :paragraph:object: #+name: abs_loop_body_not_block_obj_line_empty -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } else if ((ft["para"] == 1) && (line_occur["para"] > 0)) { /* paragraph object (current line empty) */ ocn = ocn_emit(ft["ocn_status"]); @@ -1863,14 +1863,14 @@ if ((ft["header_make"] == 1) #+END_SRC *** close non code objects (regular text) #+name: abs_loop_body_00_closed -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d } // close else for line empty } // close else for not the above } // close after non code, other blocks or regular text #+END_SRC *** regular text objects #+name: abs_loop_body_01 -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d if (((contents_arbitrary_max_length_set[counter-1]["is"] == "para") || (contents_arbitrary_max_length_set[counter-1]["is"] == "heading")) && (counter-1 > previous_count)) { @@ -1887,7 +1887,7 @@ if (((contents_arbitrary_max_length_set[counter-1]["is"] == "para") ** post loop processing #+name: abs_post -#+BEGIN_SRC d :exports none +#+BEGIN_SRC d debug(objectrelated2) { // check tell_l("blue", line); } @@ -1989,7 +1989,7 @@ return t; * tangles :tangle: ** code structure: :ao_abstract_doc_source.d: #+name: tangle_ao_abstract_doc_source -#+BEGIN_SRC d :tangle ../lib/sdp/ao_abstract_doc_source.d :padline no :exports none :noweb yes +#+BEGIN_SRC d :tangle ../lib/sdp/ao_abstract_doc_source.d /* document abstraction ao_abstract_doc_source.d |