diff options
Diffstat (limited to 'src/sisudoc/ocda/abstraction/ssp.d')
| -rw-r--r-- | src/sisudoc/ocda/abstraction/ssp.d | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/sisudoc/ocda/abstraction/ssp.d b/src/sisudoc/ocda/abstraction/ssp.d index 6aa55c2..3e80956 100644 --- a/src/sisudoc/ocda/abstraction/ssp.d +++ b/src/sisudoc/ocda/abstraction/ssp.d @@ -414,7 +414,11 @@ template spineAbstractionTxt() { import std.string; import std.array; mixin sspObjectRecord; - void spineAbstractionTxt(D)(D doc) { + /+ ↓ the whole .ssp for a document, as lines. the file writer below emits + these, and the abstraction db is built by reading them back, so the + database cannot carry anything the .ssp does not + +/ + string[] sspDocumentLines(D)(D doc) { auto doc_abstraction = doc.abstraction; auto doc_matters = doc.matters; string[] output; @@ -556,6 +560,11 @@ template spineAbstractionTxt() { output ~= "}"; output ~= ""; } + return output; + } + void spineAbstractionTxt(D)(D doc) { + auto doc_matters = doc.matters; + string[] output = sspDocumentLines(doc); /+ ↓ write to file +/ /+ path: <output_path>/<language>/abstraction/<doc_uid_out>.ssp +/ string out_root = (doc_matters.output_path.length > 0) |
