aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorRalph Amissah <ralph@amissah.com>2016-06-29 22:28:53 -0400
committerRalph Amissah <ralph@amissah.com>2019-04-04 14:48:18 -0400
commit1d30d4b2225be7f152de94b007d81a5d7b7a1c3a (patch)
tree36a5a30d607b4ace9d9be006700d98fcf1a16f34 /src
parentregisters, minor cleaning (diff)
associated array instead of json
Diffstat (limited to 'src')
-rwxr-xr-xsrc/sdp.d31
-rw-r--r--src/sdp/ao_abstract_doc_source.d6
-rw-r--r--src/sdp/ao_defaults.d229
-rw-r--r--src/sdp/ao_header_extract.d10
-rw-r--r--src/sdp/ao_header_extract_native.d78
-rw-r--r--src/sdp/ao_header_extract_sdlang.d463
6 files changed, 586 insertions, 231 deletions
diff --git a/src/sdp.d b/src/sdp.d
index c032607..c8be571 100755
--- a/src/sdp.d
+++ b/src/sdp.d
@@ -72,7 +72,7 @@ struct SDPoutput {
auto html=SDPoutputHTML();
html.css_write;
html.scroll(contents, bookindex_unordered_hashes, biblio, fn_src, opt_action_bool);
- // html.scroll(contents, bookindex_unordered_hashes, biblio, dochead_make_json, dochead_meta_json, fn_src, opt_action_bool);
+ // html.scroll(contents, bookindex_unordered_hashes, biblio, dochead_make_aa, dochead_meta_aa, fn_src, opt_action_bool);
}
if (opt_action_bool["epub"]) {
writeln("epub processing");
@@ -116,8 +116,8 @@ void main(string[] args) {
/+
struct DocumentParts {
string[string][] contents;
- JSONValue[string] meta_json;
- JSONValue[string] make_json;
+ string[string][string] meta_aa;
+ string[string][string] make_aa;
string[][string][string] bookindex_unordered_hashes;
JSONValue[] biblio;
}
@@ -208,9 +208,10 @@ void main(string[] args) {
}
auto conf = ConfigHub();
auto sdl_root_configuration = conf.configSDLang("conf.sdl");
- auto sdl_root_document_make = conf.configSDLang("sisu_document_make");
+ auto sdl_root_doc_make = conf.configSDLang("sisu_document_make");
auto confsdl = HeaderExtractSDL();
- auto conf_doc_make_json = confsdl.documentMakeSDLangToJSONmake(sdl_root_document_make);
+ auto conf_settings_aa = confsdl.configSettingsSDLangToAAmake(sdl_root_configuration);
+ auto conf_doc_make_aa = confsdl.documentMakeSDLangToAAmake(sdl_root_doc_make);
foreach(fn_src; fns_src) {
// foreach(fn_src; fns_src) {
if (!empty(fn_src)) {
@@ -245,12 +246,12 @@ void main(string[] args) {
writeln(header_and_content_tuple.length);
writeln(sourcefile_content[0]);
}
- auto header_make_and_meta_tuple = head.headerContentJSON(header, conf_doc_make_json);
+ auto header_make_and_meta_tuple = head.headerContentAA(header, conf_doc_make_aa);
static assert(!isTypeTuple!(header_make_and_meta_tuple));
- JSONValue[string] dochead_make_json = header_make_and_meta_tuple[0];
- JSONValue[string] dochead_meta_json = header_make_and_meta_tuple[1];
+ string[string][string] dochead_make_aa = header_make_and_meta_tuple[0];
+ string[string][string] dochead_meta_aa = header_make_and_meta_tuple[1];
/+ ↓ process document, return abstraction as tuple +/
- auto t = abs.abstract_doc_source(sourcefile_content, dochead_make_json, dochead_meta_json);
+ auto t = abs.abstract_doc_source(sourcefile_content, dochead_make_aa, dochead_meta_aa);
static assert(!isTypeTuple!(t));
auto doc_ao_contents = t[0]; // contents ~ endnotes ~ bookindex;
// static assert(!isIterable!(doc_ao_contents));
@@ -263,8 +264,8 @@ void main(string[] args) {
doc_ao_contents,
doc_ao_bookindex_unordered_hashes,
doc_ao_biblio,
- dochead_make_json,
- dochead_meta_json,
+ dochead_make_aa,
+ dochead_meta_aa,
fn_src,
opt_action_bool
);
@@ -274,8 +275,8 @@ void main(string[] args) {
doc_ao_contents,
doc_ao_bookindex_unordered_hashes,
doc_ao_biblio,
- // doc_ao_make_json,
- // doc_ao_meta_json,
+ // doc_ao_make_aa,
+ // doc_ao_meta_aa,
fn_src,
opt_action_bool
);
@@ -289,8 +290,8 @@ void main(string[] args) {
destroy(sourcefile_content);
destroy(t);
destroy(doc_ao_contents);
- // destroy(doc_ao_make_json);
- // destroy(doc_ao_meta_json);
+ // destroy(doc_ao_make_aa);
+ // destroy(doc_ao_meta_aa);
// destroy(doc_ao_bookindex_unordered_hashes);
destroy(doc_ao_biblio);
destroy(fn_src);
diff --git a/src/sdp/ao_abstract_doc_source.d b/src/sdp/ao_abstract_doc_source.d
index 8c19bf3..27a78b7 100644
--- a/src/sdp/ao_abstract_doc_source.d
+++ b/src/sdp/ao_abstract_doc_source.d
@@ -122,8 +122,8 @@ template SiSUdocAbstraction() {
/+ ↓ abstract marked up document +/
auto abstract_doc_source(
char[][] markup_sourcefile_content,
- JSONValue[string] dochead_make_json,
- JSONValue[string] dochead_meta_json
+ string[string][string] dochead_make_json,
+ string[string][string] dochead_meta_json
) {
/+ ↓ abstraction init +/
scope(success) {
@@ -1768,7 +1768,7 @@ template SiSUdocAbstraction() {
ref int[string] lv,
ref int[string] collapsed_lev,
ref int[string] type,
- ref JSONValue[string] dochead_meta_json
+ ref string[string][string] dochead_meta_json
) {
if (auto m = match(line, rgx.heading)) {
/+ heading match +/
diff --git a/src/sdp/ao_defaults.d b/src/sdp/ao_defaults.d
index dda08f7..f344fe7 100644
--- a/src/sdp/ao_defaults.d
+++ b/src/sdp/ao_defaults.d
@@ -3,89 +3,146 @@
ao_defaults.d
+/
template SiSUregisters() {
- string make_jsonstr = `{
- "make": {
- "bold" : "",
- "breaks" : "",
- "cover_image" : "",
- "css" : "",
- "emphasis" : "",
- "footer" : "",
- "headings" : "",
- "home_button_image" : "",
- "home_button_text" : "",
- "italics" : "",
- "num_top" : "",
- "substitute" : "",
- "texpdf_font" : ""
- }
- }`;
- auto meta_jsonstr = `{
- "classify": {
- "dewey" : "",
- "keywords" : "",
- "loc" : "",
- "subject" : "",
- "topic_register" : ""
- },
- "creator": {
- "author" : "",
- "author_email" : "",
- "illustrator" : "",
- "translator" : ""
- },
- "date": {
- "added_to_site" : "",
- "available" : "",
- "created" : "",
- "issued" : "",
- "modified" : "",
- "published" : "",
- "valid" : ""
- },
- "identifier": {
- "isbn" : "",
- "oclc" : "",
- "pg" : ""
- },
- "links": {
- "link" : ""
- },
- "notes": {
- "abstract" : "",
- "description" : ""
- },
- "original": {
- "language" : "",
- "source" : "",
- "title" : ""
- },
- "publisher": {
- "name" : ""
- },
- "rights": {
- "copyright" : "",
- "cover" : "",
- "illustrations" : "",
- "license" : ""
- },
- "title": {
- "edition" : "",
- "full" : "",
- "language" : "",
- "main" : "",
- "note" : "",
- "sub" : ""
- }
- }`; // links
- auto pointer_head_sub_classify =
- [
- "dewey",
- "keywords", //
- "loc",
- "subject",
- "topic_register"
+ string[string][string] conf_aa() {
+ auto conf_ = [
+ "webserv": [
+ "url_root" : "",
+ "path" : "~/sdp_www" ,
+ "images" : "" ,
+ "cgi" : "/usr/local/lib/sdp-cgi"
+ ],
+ "webserv_cgi": [
+ "host" : "localhost",
+ "base_path" : "",
+ "port" : "8081",
+ "user" : "",
+ "file_links" : "www.sisudoc.org"
+ ],
+ "processing": [
+ "path" : "~",
+ "dir" : "_sisu_processing",
+ "concord_max" : "400000"
+ ],
+ "flag": [
+ "act0" : "--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --xhtml --xml-sax --xml-dom --sqlite --manifest --verbose",
+ "act1" : "--digest --text --html --manifest",
+ "act2" : "--digest --text --html --epub --pdf --manifest",
+ "act3" : "--digest --qrcode --text --html --epub --concordance --pdf --manifest",
+ "act4" : "--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --manifest",
+ "act5" : "--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --sqlite --manifest",
+ "act6" : "--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --xhtml --xml-sax --xml-dom --sqlite --manifest",
+ "act7" : "--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --xhtml --xml-sax --xml-dom --sqlite --source --sisupod --manifest",
+ "act8" : "--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --xhtml --xml-sax --xml-dom --pg --update --manifest",
+ "act9" : "--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --xhtml --xml-sax --xml-dom --pg --update --source --sisupod --manifest"
+ ],
+ "default": [
+ "papersize" : "a4,letter",
+ "text_wrap" : "78",
+ "emphasis" : "bold",
+ "language" : "en",
+ "digest" : "sha256"
+ ],
+ "permission": [
+ "share_source" : ""
+ ],
+ "program_select": [
+ "editor" : "vim",
+ "epub_viewer" : "ebook-viewer",
+ "html_viewer" : "xombrero",
+ "odf_viewer" : "lowriter",
+ "pdf_viewer" : "evince",
+ "xml_viewer" : "xml-viewer"
+ ],
+ "search": [
+ "flag" : "",
+ "action" : "",
+ "db" : "",
+ "title" : ""
+ ]
];
+ return conf_;
+ }
+ string[string][string] make_aa() {
+ auto make_ = [
+ "make": [
+ "bold" : "",
+ "breaks" : "",
+ "cover_image" : "",
+ "css" : "",
+ "emphasis" : "",
+ "footer" : "",
+ "headings" : "",
+ "home_button_image" : "",
+ "home_button_text" : "",
+ "italics" : "",
+ "num_top" : "",
+ "substitute" : "",
+ "texpdf_font" : ""
+ ]
+ ];
+ return make_;
+ }
+ string[string][string] meta_aa() {
+ auto meta_ = [
+ "classify": [
+ "dewey" : "",
+ "keywords" : "",
+ "loc" : "",
+ "subject" : "",
+ "topic_register" : ""
+ ],
+ "creator": [
+ "author" : "",
+ "author_email" : "",
+ "illustrator" : "",
+ "translator" : ""
+ ],
+ "date": [
+ "added_to_site" : "",
+ "available" : "",
+ "created" : "",
+ "issued" : "",
+ "modified" : "",
+ "published" : "",
+ "valid" : ""
+ ],
+ "identifier": [
+ "isbn" : "",
+ "oclc" : "",
+ "pg" : ""
+ ],
+ "links": [
+ "link" : ""
+ ],
+ "notes": [
+ "abstract" : "",
+ "description" : ""
+ ],
+ "original": [
+ "language" : "",
+ "source" : "",
+ "title" : ""
+ ],
+ "publisher": [
+ "name" : ""
+ ],
+ "rights": [
+ "copyright" : "",
+ "cover" : "",
+ "illustrations" : "",
+ "license" : ""
+ ],
+ "title": [
+ "edition" : "",
+ "full" : "",
+ "language" : "",
+ "main" : "",
+ "note" : "",
+ "sub" : ""
+ ]
+ ];
+ return meta_;
+ }
auto pointer_head_main =
[
"classify",
@@ -99,6 +156,14 @@ template SiSUregisters() {
"rights",
"title"
];
+ auto pointer_head_sub_classify =
+ [
+ "dewey",
+ "keywords",
+ "loc",
+ "subject",
+ "topic_register"
+ ];
auto pointer_head_sub_creator =
[
"author",
diff --git a/src/sdp/ao_header_extract.d b/src/sdp/ao_header_extract.d
index cf6dca1..f78d7c4 100644
--- a/src/sdp/ao_header_extract.d
+++ b/src/sdp/ao_header_extract.d
@@ -1,5 +1,5 @@
/+
- extract native/orig header return json
+ extract native/orig header return associative array
+/
template SiSUheaderExtractHub() {
private import
@@ -10,13 +10,13 @@ template SiSUheaderExtractHub() {
mixin SiSUheaderExtractNative;
mixin SiSUheaderExtractSDLang;
auto rgx = Rgx();
- private auto headerContentJSON(char[] header_src, JSONValue[string] conf_doc_make_json) {
- auto head_native = HeaderDocMetadataAndMakeNativeToJson();
+ private auto headerContentAA(char[] header_src, string[string][string] conf_doc_make_aa) {
+ auto head_native = HeaderDocMetadataAndMakeNativeToAA();
auto head_sdlang = HeaderExtractSDL();
writeln(__LINE__);
auto header_make_and_meta_tuple = (match(header_src, rgx.native_header_meta_title))
- ? (head_native.headerNativeToJSON(header_src))
- : (head_sdlang.headerSDLangToJSON(header_src, conf_doc_make_json));
+ ? (head_native.headerNativeToAA(header_src))
+ : (head_sdlang.headerSDLangToAA(header_src, conf_doc_make_aa));
writeln(__LINE__);
static assert(!isTypeTuple!(header_make_and_meta_tuple));
return header_make_and_meta_tuple;
diff --git a/src/sdp/ao_header_extract_native.d b/src/sdp/ao_header_extract_native.d
index 2f86d89..7bcf965 100644
--- a/src/sdp/ao_header_extract_native.d
+++ b/src/sdp/ao_header_extract_native.d
@@ -1,5 +1,5 @@
/+
- extract native/orig header return json
+ extract native/orig header return associative array
+/
template SiSUheaderExtractNative() {
private import
@@ -9,17 +9,17 @@ template SiSUheaderExtractNative() {
std.conv : to;
private import
ao_rgx;
- struct HeaderDocMetadataAndMakeNativeToJson {
+ struct HeaderDocMetadataAndMakeNativeToAA {
mixin SiSUregisters;
mixin SiSUrgxInitFlags;
mixin RgxInit;
auto rgx = Rgx();
enum State { off, on }
string hm, hs;
- auto header_metadata_and_make_jsonstr(
+ auto header_metadata_and_make_aa(
string header,
- JSONValue[string] dochead_meta,
- JSONValue[string] dochead_make
+ string[string][string] dochead_meta,
+ string[string][string] dochead_make
)
in { }
body {
@@ -39,13 +39,13 @@ template SiSUheaderExtractNative() {
if (auto m = match(line, rgx.native_header_main)) {
if (!empty(m.captures[2])) {
if (hm == "creator") {
- dochead_meta[hm]["author"].str =
+ dochead_meta[hm]["author"] =
to!string(m.captures[2]);
} else if (hm == "title") {
- dochead_meta[hm]["main"].str =
+ dochead_meta[hm]["main"] =
to!string(m.captures[2]);
} else if (hm == "publisher") {
- dochead_meta[hm]["name"].str =
+ dochead_meta[hm]["name"] =
to!string(m.captures[2]);
}
}
@@ -53,12 +53,12 @@ template SiSUheaderExtractNative() {
if (!empty(s.captures[2])) {
auto hs = to!string(s.captures[1]);
if ((hm == "make" )
- && (dochead_make[hm].type() == JSON_TYPE.OBJECT)) {
+ && (dochead_make[hm])) {
switch (hm) {
case "make":
if (match(hs, rgx.native_subhead_make)) {
- if (dochead_make[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_make[hm][hs].str = to!string(s.captures[2]);
+ if (dochead_make[hm][hs]) {
+ dochead_make[hm][hs] = to!string(s.captures[2]);
}
} else {
writeln("not a valid header type:", hm, ":", hs);
@@ -69,12 +69,12 @@ template SiSUheaderExtractNative() {
default:
break;
}
- } else if (dochead_meta[hm].type() == JSON_TYPE.OBJECT) {
+ } else if (dochead_meta[hm]) {
switch (hm) {
case "creator":
if (match(hs, rgx.native_subhead_creator)) {
- if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_meta[hm][hs].str =
+ if (dochead_meta[hm][hs]) {
+ dochead_meta[hm][hs] =
to!string(s.captures[2]);
}
} else {
@@ -86,11 +86,11 @@ template SiSUheaderExtractNative() {
case "title":
if (match(hs, rgx.native_subhead_title)) {
if ((hs == "subtitle")
- && (dochead_meta[hm]["sub"].type() == JSON_TYPE.STRING)) {
- dochead_meta[hm]["sub"].str =
+ && (dochead_meta[hm]["sub"])) {
+ dochead_meta[hm]["sub"] =
to!string(s.captures[2]);
- } else if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_meta[hm][hs].str =
+ } else if (dochead_meta[hm][hs]) {
+ dochead_meta[hm][hs] =
to!string(s.captures[2]);
}
} else {
@@ -101,8 +101,8 @@ template SiSUheaderExtractNative() {
break;
case "rights":
if (match(hs, rgx.native_subhead_rights)) {
- if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_meta[hm][hs].str =
+ if (dochead_meta[hm][hs]) {
+ dochead_meta[hm][hs] =
to!string(s.captures[2]);
}
} else {
@@ -113,8 +113,8 @@ template SiSUheaderExtractNative() {
break;
case "date":
if (match(hs, rgx.native_subhead_date)) {
- if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_meta[hm][hs].str =
+ if (dochead_meta[hm][hs]) {
+ dochead_meta[hm][hs] =
to!string(s.captures[2]);
}
} else {
@@ -125,8 +125,8 @@ template SiSUheaderExtractNative() {
break;
case "original":
if (match(hs, rgx.native_subhead_original)) {
- if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_meta[hm][hs].str =
+ if (dochead_meta[hm][hs]) {
+ dochead_meta[hm][hs] =
to!string(s.captures[2]);
}
} else {
@@ -137,8 +137,8 @@ template SiSUheaderExtractNative() {
break;
case "classify":
if (match(hs, rgx.native_subhead_classify)) {
- if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_meta[hm][hs].str =
+ if (dochead_meta[hm][hs]) {
+ dochead_meta[hm][hs] =
to!string(s.captures[2]);
}
} else {
@@ -149,8 +149,8 @@ template SiSUheaderExtractNative() {
break;
case "identifier":
if (match(hs, rgx.native_subhead_identifier)) {
- if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_meta[hm][hs].str =
+ if (dochead_meta[hm][hs]) {
+ dochead_meta[hm][hs] =
to!string(s.captures[2]);
}
} else {
@@ -161,8 +161,8 @@ template SiSUheaderExtractNative() {
break;
case "notes":
if (match(hs, rgx.native_subhead_notes)) {
- if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_meta[hm][hs].str =
+ if (dochead_meta[hm][hs]) {
+ dochead_meta[hm][hs] =
to!string(s.captures[2]);
}
} else {
@@ -173,8 +173,8 @@ template SiSUheaderExtractNative() {
break;
case "publisher":
if (match(hs, rgx.native_subhead_publisher)) {
- if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_meta[hm][hs].str =
+ if (dochead_meta[hm][hs]) {
+ dochead_meta[hm][hs] =
to!string(s.captures[2]);
}
} else {
@@ -187,8 +187,8 @@ template SiSUheaderExtractNative() {
destroy(hm);
destroy(hs);
// if (match(hs, rgx.native_subhead_links)) {
- // if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
- // dochead_meta[hm][hs].str = to!string(s.captures[2]);
+ // if (dochead_meta[hm][hs]) {
+ // dochead_meta[hm][hs] = to!string(s.captures[2]);
// }
// } else {
// writeln("not a valid header type:", hm, ":", hs);
@@ -264,7 +264,7 @@ template SiSUheaderExtractNative() {
an_object.remove("is");
an_object.remove("attrib");
}
- private auto headerNativeToJSON(in char[] src_header) {
+ private auto headerNativeToAA(in char[] src_header) {
auto type = flags_type_init;
type = [
"header" : State.off,
@@ -273,9 +273,9 @@ template SiSUheaderExtractNative() {
];
string[string] an_object;
int[string] line_occur;
- auto dochead_make = parseJSON(make_jsonstr).object;
- auto dochead_meta = parseJSON(meta_jsonstr).object;
- auto set_header = HeaderDocMetadataAndMakeNativeToJson();
+ auto dochead_make = make_aa;
+ auto dochead_meta = meta_aa;
+ auto set_header = HeaderDocMetadataAndMakeNativeToAA();
char[][] source_header_arr =
split(cast(char[]) src_header, rgx.line_delimiter);
foreach(header_line; source_header_arr) {
@@ -295,7 +295,7 @@ template SiSUheaderExtractNative() {
if (header_line.length == 0) {
/+ header_make instructions (current line empty) +/
auto dochead_metadata_and_make =
- set_header.header_metadata_and_make_jsonstr(strip(an_object["obj"]), dochead_meta, dochead_make);
+ set_header.header_metadata_and_make_aa(strip(an_object["obj"]), dochead_meta, dochead_make);
static assert(!isTypeTuple!(dochead_metadata_and_make));
dochead_meta = dochead_metadata_and_make[0];
dochead_make = dochead_metadata_and_make[1];
diff --git a/src/sdp/ao_header_extract_sdlang.d b/src/sdp/ao_header_extract_sdlang.d
index 886a2c8..d4e9e36 100644
--- a/src/sdp/ao_header_extract_sdlang.d
+++ b/src/sdp/ao_header_extract_sdlang.d
@@ -10,103 +10,407 @@ template SiSUheaderExtractSDLang() {
mixin SiSUregisters;
mixin RgxInit;
auto rgx = Rgx();
- private auto documentMakeSDLangToJSONmake(Tag document_make_sdlang) {
+ private auto configSettingsSDLangToAAmake(Tag conf_sdlang) {
+ /+ config settings +/
+ string hm;
+ string hs;
+ auto conf = conf_aa;
+ hm = "webserv";
+ if (!(conf_sdlang.maybe.tags[hm].empty)) {
+ hs = "url_root";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "path";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "images";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "cgi";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ }
+ hm = "webserv_cgi";
+ if (!(conf_sdlang.maybe.tags[hm].empty)) {
+ hs = "host";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "base_path";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "port";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "user";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "file_links";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ }
+ hm = "processing";
+ if (!(conf_sdlang.maybe.tags[hm].empty)) {
+ hs = "path";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "dir";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "concord_max";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ }
+ hm = "flag";
+ if (!(conf_sdlang.maybe.tags[hm].empty)) {
+ hs = "act0";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "act0";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "act1";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "act2";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "act3";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "act4";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "act5";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "act6";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "act7";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "act8";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "act9";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ }
+ hm = "default";
+ if (!(conf_sdlang.maybe.tags[hm].empty)) {
+ hs = "papersize";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "text_wrap";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "emphasis";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "language";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "digest";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ }
+ hm = "permission";
+ if (!(conf_sdlang.maybe.tags[hm].empty)) {
+ hs = "share_source";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ }
+ hm = "program_select";
+ if (!(conf_sdlang.maybe.tags[hm].empty)) {
+ hs = "editor";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "epub_viewer";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "html_viewer";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "odf_viewer";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "pdf_viewer";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "xml_viewer";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ }
+ hm = "search";
+ if (!(conf_sdlang.maybe.tags[hm].empty)) {
+ hs = "flag";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "action";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "db";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ hs = "title";
+ if (!(conf_sdlang.tags[hm][0].maybe.attributes[hs].empty)
+ && (conf_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
+ writeln(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ conf[hm][hs] =
+ to!string(conf_sdlang.tags[hm][0].attributes[hs][0].value);
+ }
+ }
+ return conf;
+ }
+ private auto documentMakeSDLangToAAmake(Tag document_make_sdlang) {
/+ dochead +/
string hm;
string hs;
/+ make +/
- auto dochead_make = parseJSON(make_jsonstr).object;
+ auto dochead_make = make_aa;
if (!(document_make_sdlang.maybe.tags["make"].empty)) {
hm = "make";
hs = "bold";
if (!(document_make_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (document_make_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "breaks";
if (!(document_make_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (document_make_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "cover_image";
if (!(document_make_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (document_make_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "css";
if (!(document_make_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (document_make_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "emphasis";
if (!(document_make_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (document_make_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "footer";
if (!(document_make_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (document_make_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "headings";
if (!(document_make_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (document_make_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "home_button_image";
if (!(document_make_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (document_make_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "home_button_text";
if (!(document_make_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (document_make_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "italics";
if (!(document_make_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (document_make_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "num_top";
if (!(document_make_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (document_make_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "substitute";
if (!(document_make_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (document_make_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "texpdf_font";
if (!(document_make_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (document_make_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
}
}
@@ -120,7 +424,7 @@ template SiSUheaderExtractSDLang() {
// if (!(document_make_sdlang.tags[hm][0].maybe.attributes[hs].empty)
// && (document_make_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
// writeln(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
- // dochead_meta[hm][hs].str =
+ // dochead_meta[hm][hs] =
// to!string(document_make_sdlang.tags[hm][0].attributes[hs][0].value);
// }
}
@@ -178,20 +482,7 @@ template SiSUheaderExtractSDLang() {
}
return header_sdlang; // sdlang.ast.Tag
}
- private auto headerSDLangToJSONmake(Tag header_sdlang, JSONValue[string] dochead_make) {
- /+ TODO json next +/
- /+ TODO
- auto dochead_make = parseJSON(make_jsonstr).object;
- auto dochead_meta = parseJSON(meta_jsonstr).object;
- auto hm = to!string(t.captures[1]);
- auto hs = to!string(s.captures[1]);
- if (dochead_make[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_make[hm][hs].str = to!string(s.captures[2]);
- }
- if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_meta[hm][hs].str = to!string(s.captures[2]);
- }
- +/
+ private auto headerSDLangToAAmake(Tag header_sdlang, string[string][string] dochead_make) {
/+ dochead +/
string hm;
string hs;
@@ -202,96 +493,96 @@ template SiSUheaderExtractSDLang() {
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "breaks";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "cover_image";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "css";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "emphasis";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "footer";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "headings";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "home_button_image";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "home_button_text";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "italics";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "num_top";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "substitute";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "texpdf_font";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_make[hm][hs].str =
+ dochead_make[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
}
/+ meta +/
- auto dochead_meta = parseJSON(meta_jsonstr).object;
+ auto dochead_meta = meta_aa;
hm = "title";
if (!(header_sdlang.maybe.tags[hm].empty)) {
/+ TODO Title REQUIRED +/
@@ -299,13 +590,13 @@ template SiSUheaderExtractSDLang() {
if (!(header_sdlang.tags[hm].empty)
&& (header_sdlang.tags[hm][0].values[0].length > 1)) {
writeln(header_sdlang.tags[hm][0].values[0]);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].values[0]);
// to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
} else if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
} else {
writeln("Required header metadata Title, missing");
@@ -314,12 +605,12 @@ template SiSUheaderExtractSDLang() {
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
} else if (!(header_sdlang.tags[hm][0].maybe.attributes["subtitle"].empty)
&& (header_sdlang.tags[hm][0].attributes["subtitle"][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes["subtitle"][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes["subtitle"][0].value);
}
// full title composite (main + sub)
@@ -329,26 +620,26 @@ template SiSUheaderExtractSDLang() {
if (!(header_sdlang.tags[hm][0].maybe.attributes["lang"].empty)
&& (header_sdlang.tags[hm][0].attributes["lang"][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes["lang"][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes["lang"][0].value);
} else if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "edition";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "note";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
}
@@ -364,28 +655,28 @@ template SiSUheaderExtractSDLang() {
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "author_email";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "illustrator";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "translator";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
}
@@ -395,35 +686,35 @@ template SiSUheaderExtractSDLang() {
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "keywords";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "loc";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "subject";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "topic_register";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
}
@@ -433,49 +724,49 @@ template SiSUheaderExtractSDLang() {
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "available";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "created";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "issued";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "modified";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "published";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "valid";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
}
@@ -485,21 +776,21 @@ template SiSUheaderExtractSDLang() {
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "oclc";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "pg";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
}
@@ -512,7 +803,7 @@ template SiSUheaderExtractSDLang() {
// if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
// && (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
// writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- // dochead_meta[hm][hs].str =
+ // dochead_meta[hm][hs] =
// to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
// }
}
@@ -522,14 +813,14 @@ template SiSUheaderExtractSDLang() {
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "description";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
}
@@ -539,21 +830,21 @@ template SiSUheaderExtractSDLang() {
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "source";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "title";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
}
@@ -563,7 +854,7 @@ template SiSUheaderExtractSDLang() {
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
}
@@ -573,41 +864,39 @@ template SiSUheaderExtractSDLang() {
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "cover";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "illustrations";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
hs = "license";
if (!(header_sdlang.tags[hm][0].maybe.attributes[hs].empty)
&& (header_sdlang.tags[hm][0].attributes[hs][0].value.length > 1)) {
writeln(header_sdlang.tags[hm][0].attributes[hs][0].value);
- dochead_meta[hm][hs].str =
+ dochead_meta[hm][hs] =
to!string(header_sdlang.tags[hm][0].attributes[hs][0].value);
}
}
- // writeln(dochead_make);
- // writeln(dochead_meta);
auto t = tuple(dochead_make, dochead_meta);
static assert(!isTypeTuple!(t));
return t;
}
- private auto headerSDLangToJSON(char[] header_sdlang_src, JSONValue[string] conf_doc_make_json) {
+ private auto headerSDLangToAA(char[] header_sdlang_src, string[string][string] conf_doc_make_aa) {
auto header_sdlang_tag = headerSDLangGet(header_sdlang_src); // sdlang.ast.Tag
- auto header_json_tuple = headerSDLangToJSONmake(header_sdlang_tag, conf_doc_make_json);
- return header_json_tuple;
+ auto header_aa_tuple = headerSDLangToAAmake(header_sdlang_tag, conf_doc_make_aa);
+ return header_aa_tuple;
}
}