septima-lang 0.0.12 → 0.0.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/septima.d.ts +1 -0
- package/dist/src/septima.js +10 -2
- package/package.json +1 -1
package/dist/src/septima.d.ts
CHANGED
|
@@ -36,6 +36,7 @@ export declare class Septima {
|
|
|
36
36
|
constructor(sourceRoot?: string);
|
|
37
37
|
compileSync(fileName: string, readFile: SyncCodeReader): Executable;
|
|
38
38
|
compile(fileName: string, readFile: CodeReader): Promise<Executable>;
|
|
39
|
+
private relativize;
|
|
39
40
|
private getExecutableFor;
|
|
40
41
|
private execute;
|
|
41
42
|
/**
|
package/dist/src/septima.js
CHANGED
|
@@ -66,15 +66,23 @@ class Septima {
|
|
|
66
66
|
(0, should_never_happen_1.shouldNeverHappen)(res);
|
|
67
67
|
}
|
|
68
68
|
compileSync(fileName, readFile) {
|
|
69
|
+
fileName = this.relativize(fileName);
|
|
69
70
|
const acc = [fileName];
|
|
70
71
|
this.pumpSync(acc, readFile);
|
|
71
72
|
return this.getExecutableFor(fileName);
|
|
72
73
|
}
|
|
73
74
|
async compile(fileName, readFile) {
|
|
75
|
+
fileName = this.relativize(fileName);
|
|
74
76
|
const acc = [fileName];
|
|
75
77
|
await this.pump(acc, readFile);
|
|
76
78
|
return this.getExecutableFor(fileName);
|
|
77
79
|
}
|
|
80
|
+
relativize(fileName) {
|
|
81
|
+
if (path.isAbsolute(fileName)) {
|
|
82
|
+
return path.relative(this.sourceRoot, fileName);
|
|
83
|
+
}
|
|
84
|
+
return fileName;
|
|
85
|
+
}
|
|
78
86
|
getExecutableFor(fileName) {
|
|
79
87
|
// Verify that a unit for the main file exists
|
|
80
88
|
this.unitOf(undefined, fileName);
|
|
@@ -134,7 +142,7 @@ class Septima {
|
|
|
134
142
|
}
|
|
135
143
|
getPathFromSourceRoot(startingPoint, relativePath) {
|
|
136
144
|
if (path.isAbsolute(relativePath)) {
|
|
137
|
-
throw new Error(`An absolute path is not allowed
|
|
145
|
+
throw new Error(`An absolute path is not allowed in import (got: ${relativePath})`);
|
|
138
146
|
}
|
|
139
147
|
const joined = startingPoint === undefined ? relativePath : path.join(path.dirname(startingPoint), relativePath);
|
|
140
148
|
const ret = path.normalize(joined);
|
|
@@ -179,4 +187,4 @@ class Septima {
|
|
|
179
187
|
}
|
|
180
188
|
}
|
|
181
189
|
exports.Septima = Septima;
|
|
182
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
190
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VwdGltYS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXB0aW1hLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMkNBQTRCO0FBRzVCLHVDQUFrQztBQUNsQyxxQ0FBaUM7QUFDakMscUNBQTRFO0FBQzVFLHVDQUE4QztBQUM5Qyx1Q0FBbUM7QUFDbkMsK0RBQXlEO0FBQ3pELCtDQUEwQztBQXVCMUMsTUFBYSxPQUFPO0lBb0NsQixZQUE2QixhQUFhLEVBQUU7UUFBZixlQUFVLEdBQVYsVUFBVSxDQUFLO1FBRjNCLGlCQUFZLEdBQUcsSUFBSSxHQUFHLEVBQXNCLENBQUE7SUFFZCxDQUFDO0lBbkNoRDs7Ozs7Ozs7OztPQVVHO0lBQ0gsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFhLEVBQUUsT0FBaUIsRUFBRSxPQUFnQyxFQUFFO1FBQzdFLE1BQU0sTUFBTSxHQUNWLE9BQU8sRUFBRSxNQUFNO1lBQ2YsQ0FBQyxDQUFDLENBQWEsRUFBRSxFQUFFO2dCQUNqQixNQUFNLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtZQUM1QixDQUFDLENBQUMsQ0FBQTtRQUVKLE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQTtRQUMzQixNQUFNLFVBQVUsR0FBMkIsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFBO1FBQ2hFLE1BQU0sUUFBUSxHQUFHLENBQUMsQ0FBUyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDN0MsTUFBTSxHQUFHLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUN2RSxJQUFJLEdBQUcsQ0FBQyxHQUFHLEtBQUssSUFBSSxFQUFFO1lBQ3BCLE9BQU8sR0FBRyxDQUFDLEtBQUssQ0FB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
|