aboutsummaryrefslogtreecommitdiffhomepage
path: root/lib/sdp/sdp.d
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sdp/sdp.d')
-rw-r--r--lib/sdp/sdp.d194
1 files changed, 0 insertions, 194 deletions
diff --git a/lib/sdp/sdp.d b/lib/sdp/sdp.d
deleted file mode 100644
index 6c10a83..0000000
--- a/lib/sdp/sdp.d
+++ /dev/null
@@ -1,194 +0,0 @@
-#!/usr/bin/env rdmd
-/*
- sdp
- sdp.d
-*/
-import
- std.stdio,
- std.file,
- std.exception,
- // std.path,
- std.regex,
- std.utf,
- std.string,
- std.array,
- std.json,
- std.process,
- std.typecons,
- std.algorithm,
- std.range,
- std.container,
- std.traits,
- // std.variant,
- lib.sdp.ao_output_debugs, // ao_output_debugs.d ao_output_debugs.org
- lib.sdp.ao_defaults, // ao_defaults.d ao_defaults.arg
- lib.sdp.ao_rgx, // ao_rgx.d ao_rgx.org
- lib.sdp.ao_interface, // ao_interface.d ao_interface.arg
- lib.sdp.ao_emitter, // ao_emitter.d ao_emitter.org
- lib.sdp.ao_scan_inserts, // ao_scan_inserts.d ao_scan_inserts.org
- lib.sdp.ao_markup_source_raw, // ao_markup_source_raw.d ao_markup_source_raw.org
- lib.sdp.ao_abstract_doc_source, // ao_abstract_doc_source.d ao_abstract_doc_source.org
- lib.sdp.ao_assertions, // ao_assertions.d ao_assertions.org
- lib.sdp.ao_object_setter, // ao_object_setter.d ao_object_setter.org
- lib.sdp.ao_utils; // ao_utils.d ao_utils.org
- // std.conv;
-import std.conv : to;
-mixin RgxInit; mixin Interfaces; mixin Emitters;
-void main(string[] argv) {
- mixin SiSUheader;
- mixin SiSUbiblio;
- mixin SiSUrgxInitFlags;
- mixin SiSUmarkupRaw;
- mixin SiSUdocInserts;
- mixin SiSUdocAbstraction;
- mixin SiSUoutputDebugs;
- mixin ScreenTxtColors;
- auto cli = new CLI();
- auto raw = new MarkupRaw();
- auto abs = new Abstraction();
- auto dbg = new SDPoutputDebugs();
- // struct DocumentParts {
- // string[string][] contents;
- // JSONValue[string] metadata_json;
- // JSONValue[string] make_json;
- // string[][string][string] bookindex_unordered_hashes;
- // JSONValue[] biblio;
- // }
- char[][] msc;
- string[1000] fns_src;
- string flag_action;
- string[string] actions;
- int file_count;
- actions = [
- "assert" : "yes",
- ];
- auto rgx = new Rgx();
- scope(success) {
- debug(checkdoc) {
- writeln(
- scr_txt_color["cyan"],
- "~ run complete, ok ~ ",
- scr_txt_color["off"],
- );
- }
- // writeln("0");
- }
- scope(failure) {
- debug(checkdoc) {
- writeln(
- scr_txt_color["fucshia"],
- "~ run failure ~",
- scr_txt_color["off"],
- );
- }
- // writeln("1");
- }
- foreach(cmdlnins; argv) {
- if (match(cmdlnins, rgx.flag_action)) {
- flag_action ~= " " ~ cmdlnins;
- actions = cli.extract_actions(cmdlnins, actions);
- } else if (match(cmdlnins, rgx.src_pth)) {
- fns_src[file_count] = cmdlnins;
- file_count++;
- }
- }
- foreach(fn_src; fns_src) {
- if (!empty(fn_src)) {
- scope(success) {
- debug(checkdoc) {
- writeln(
- scr_txt_color["green"],
- "~ document complete, ok ~ ",
- scr_txt_color["off"],
- fn_src
- );
- }
- // writeln("0");
- }
- scope(failure) {
- debug(checkdoc) {
- writeln(
- scr_txt_color["red"],
- "~ document run failure ~",
- scr_txt_color["off"],
- fn_src
- );
- }
- // writeln("1");
- }
- enforce(
- match(fn_src, rgx.src_pth),
- "not a sisu markup filename"
- );
- auto markup_sourcefile_content =
- raw.markupSourceContentRawLineArray(fn_src); // alternative call
- // raw.markupSourceLineArray(raw.markupSourceString(fn_src)); // alternative calls (milliseconds faster?)
- debug(insert) {
- string[string] sysenv;
- sysenv["pwd"] = shell("pwd");
- writeln(sysenv["pwd"]);
- auto m = match(fn_src, rgx.src_pth);
- // auto m = match(fn_src, rgx.src_pth);
- auto markup_src_file_path = m.captures[1];
- writeln("markup source file path: ", markup_src_file_path); // writeln(m.captures[1]);
- writeln(m.captures[2]);
- }
- if (match(fn_src, rgx.src_fn_master)) {
- /* if master file scan document source for document imports (inserted sub-documents) */
- auto ins = new Inserts();
- auto markup_master_sourcefile_content =
- ins.scan_doc_source(markup_sourcefile_content, fn_src);
- msc = markup_master_sourcefile_content;
- } else if (match(fn_src, rgx.src_fn)) {
- msc = markup_sourcefile_content;
- } else {
- writeln("not a recognized filename");
- }
- debug(raw) {
- foreach (line; msc) {
- writeln(line);
- }
- }
- /* process document ao_abstract_doc_source SiSUdocAbstraction::Abstraction return abstraction as tuple */
- auto t =
- abs.abstract_doc_source(msc);
- static assert(!isTypeTuple!(t));
- auto contents = t[0];
- // static assert(!isIterable!(contents));
- auto metadata_json = t[1];
- auto make_json = t[2];
- auto bookindex_unordered_hashes = t[3];
- auto biblio = t[4];
- // destroy(t);
- // DocumentParts
- debug(checkdoc) {
- dbg.abstract_doc_source_debugs(
- contents,
- make_json,
- metadata_json,
- bookindex_unordered_hashes,
- biblio,
- fn_src,
- actions
- );
- }
- // compose abstract document markup state
- // append book index
- scope(exit) {
- destroy(msc);
- destroy(t);
- destroy(contents);
- destroy(make_json);
- destroy(metadata_json);
- destroy(bookindex_unordered_hashes);
- destroy(fn_src);
- destroy(biblio);
- }
- } else {
- /* no recognized filename provided */
- writeln("no recognized filename");
- break;
- // terminate, stop
- }
- }
-}