@guardian-network/policy-dsl 0.3.2
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/README.md +82 -0
- package/dist/antlr/generated/grammar/LacLangLexer.d.ts +53 -0
- package/dist/antlr/generated/grammar/LacLangLexer.d.ts.map +1 -0
- package/dist/antlr/generated/grammar/LacLangLexer.js +322 -0
- package/dist/antlr/generated/grammar/LacLangLexer.js.map +1 -0
- package/dist/antlr/generated/grammar/LacLangListener.d.ts +39 -0
- package/dist/antlr/generated/grammar/LacLangListener.d.ts.map +1 -0
- package/dist/antlr/generated/grammar/LacLangListener.js +3 -0
- package/dist/antlr/generated/grammar/LacLangListener.js.map +1 -0
- package/dist/antlr/generated/grammar/LacLangParser.d.ts +231 -0
- package/dist/antlr/generated/grammar/LacLangParser.d.ts.map +1 -0
- package/dist/antlr/generated/grammar/LacLangParser.js +1399 -0
- package/dist/antlr/generated/grammar/LacLangParser.js.map +1 -0
- package/dist/antlr/index.d.ts +4 -0
- package/dist/antlr/index.d.ts.map +1 -0
- package/dist/antlr/index.js +20 -0
- package/dist/antlr/index.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +23 -0
- package/dist/index.js.map +1 -0
- package/dist/ir-generation/hashing.helper.d.ts +3 -0
- package/dist/ir-generation/hashing.helper.d.ts.map +1 -0
- package/dist/ir-generation/hashing.helper.js +12 -0
- package/dist/ir-generation/hashing.helper.js.map +1 -0
- package/dist/ir-generation/index.d.ts +3 -0
- package/dist/ir-generation/index.d.ts.map +1 -0
- package/dist/ir-generation/index.js +19 -0
- package/dist/ir-generation/index.js.map +1 -0
- package/dist/ir-generation/parsed-state-to-ir.transformer.d.ts +11 -0
- package/dist/ir-generation/parsed-state-to-ir.transformer.d.ts.map +1 -0
- package/dist/ir-generation/parsed-state-to-ir.transformer.js +30 -0
- package/dist/ir-generation/parsed-state-to-ir.transformer.js.map +1 -0
- package/dist/transpiler/Transpiler.d.ts +17 -0
- package/dist/transpiler/Transpiler.d.ts.map +1 -0
- package/dist/transpiler/Transpiler.js +43 -0
- package/dist/transpiler/Transpiler.js.map +1 -0
- package/dist/transpiler/errors/ErrorFactory.d.ts +22 -0
- package/dist/transpiler/errors/ErrorFactory.d.ts.map +1 -0
- package/dist/transpiler/errors/ErrorFactory.js +62 -0
- package/dist/transpiler/errors/ErrorFactory.js.map +1 -0
- package/dist/transpiler/errors/helpers.d.ts +3 -0
- package/dist/transpiler/errors/helpers.d.ts.map +1 -0
- package/dist/transpiler/errors/helpers.js +6 -0
- package/dist/transpiler/errors/helpers.js.map +1 -0
- package/dist/transpiler/errors/index.d.ts +2 -0
- package/dist/transpiler/errors/index.d.ts.map +1 -0
- package/dist/transpiler/errors/index.js +18 -0
- package/dist/transpiler/errors/index.js.map +1 -0
- package/dist/transpiler/errors/validation-errors.d.ts +57 -0
- package/dist/transpiler/errors/validation-errors.d.ts.map +1 -0
- package/dist/transpiler/errors/validation-errors.js +132 -0
- package/dist/transpiler/errors/validation-errors.js.map +1 -0
- package/dist/transpiler/helpers/formatter.d.ts +10 -0
- package/dist/transpiler/helpers/formatter.d.ts.map +1 -0
- package/dist/transpiler/helpers/formatter.js +140 -0
- package/dist/transpiler/helpers/formatter.js.map +1 -0
- package/dist/transpiler/helpers/index.d.ts +5 -0
- package/dist/transpiler/helpers/index.d.ts.map +1 -0
- package/dist/transpiler/helpers/index.js +21 -0
- package/dist/transpiler/helpers/index.js.map +1 -0
- package/dist/transpiler/helpers/resources.helper.d.ts +4 -0
- package/dist/transpiler/helpers/resources.helper.d.ts.map +1 -0
- package/dist/transpiler/helpers/resources.helper.js +50 -0
- package/dist/transpiler/helpers/resources.helper.js.map +1 -0
- package/dist/transpiler/helpers/types.d.ts +12 -0
- package/dist/transpiler/helpers/types.d.ts.map +1 -0
- package/dist/transpiler/helpers/types.js +3 -0
- package/dist/transpiler/helpers/types.js.map +1 -0
- package/dist/transpiler/helpers/validations.helper.d.ts +8 -0
- package/dist/transpiler/helpers/validations.helper.d.ts.map +1 -0
- package/dist/transpiler/helpers/validations.helper.js +41 -0
- package/dist/transpiler/helpers/validations.helper.js.map +1 -0
- package/dist/transpiler/index.d.ts +3 -0
- package/dist/transpiler/index.d.ts.map +1 -0
- package/dist/transpiler/index.js +21 -0
- package/dist/transpiler/index.js.map +1 -0
- package/dist/transpiler/listener.d.ts +17 -0
- package/dist/transpiler/listener.d.ts.map +1 -0
- package/dist/transpiler/listener.js +94 -0
- package/dist/transpiler/listener.js.map +1 -0
- package/dist/transpiler/state/LatentState.d.ts +30 -0
- package/dist/transpiler/state/LatentState.d.ts.map +1 -0
- package/dist/transpiler/state/LatentState.js +130 -0
- package/dist/transpiler/state/LatentState.js.map +1 -0
- package/dist/transpiler/state/index.d.ts +3 -0
- package/dist/transpiler/state/index.d.ts.map +1 -0
- package/dist/transpiler/state/index.js +19 -0
- package/dist/transpiler/state/index.js.map +1 -0
- package/dist/transpiler/state/types.d.ts +42 -0
- package/dist/transpiler/state/types.d.ts.map +1 -0
- package/dist/transpiler/state/types.js +3 -0
- package/dist/transpiler/state/types.js.map +1 -0
- package/package.json +79 -0
- package/src/antlr/generated/grammar/LacLang.interp +88 -0
- package/src/antlr/generated/grammar/LacLang.tokens +52 -0
- package/src/antlr/generated/grammar/LacLangLexer.interp +108 -0
- package/src/antlr/generated/grammar/LacLangLexer.tokens +52 -0
- package/src/antlr/generated/grammar/LacLangLexer.ts +331 -0
- package/src/antlr/generated/grammar/LacLangListener.ts +216 -0
- package/src/antlr/generated/grammar/LacLangParser.ts +1484 -0
- package/src/antlr/index.ts +3 -0
- package/src/index.ts +3 -0
- package/src/ir-generation/hashing.helper.ts +13 -0
- package/src/ir-generation/index.ts +2 -0
- package/src/ir-generation/parsed-state-to-ir.transformer.ts +50 -0
- package/src/transpiler/Transpiler.ts +58 -0
- package/src/transpiler/errors/ErrorFactory.ts +130 -0
- package/src/transpiler/errors/helpers.ts +4 -0
- package/src/transpiler/errors/index.ts +1 -0
- package/src/transpiler/errors/validation-errors.ts +157 -0
- package/src/transpiler/helpers/formatter.ts +173 -0
- package/src/transpiler/helpers/index.ts +4 -0
- package/src/transpiler/helpers/resources.helper.ts +83 -0
- package/src/transpiler/helpers/types.ts +23 -0
- package/src/transpiler/helpers/validations.helper.ts +69 -0
- package/src/transpiler/index.ts +2 -0
- package/src/transpiler/listener.ts +180 -0
- package/src/transpiler/state/LatentState.ts +202 -0
- package/src/transpiler/state/index.ts +2 -0
- package/src/transpiler/state/types.ts +50 -0
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CannotInferValueTypeError = exports.SelfReferenceDSLError = exports.CyclicReferenceDSLError = exports.NoEvaluateStatementError = exports.NonInjectedVariablesNotAllowedError = exports.ImportAmbiguityError = exports.UnkownDirectiveError = exports.EvaluateTypeNotBoolError = exports.ImpropperInitArgsMutabilityError = exports.InstanceNotDefinedError = exports.ConstantNotDefinedError = exports.VariableNotDefinedError = exports.ArtifactNotDefinedError = exports.EvaluateAlreadyDeclaredError = exports.InstanceAlreadyDefinedError = exports.ArtifactAlreadyDefinedError = exports.VariableAlreadyDefinedError = exports.ConstantIsAlreadyDefinedError = void 0;
|
|
4
|
+
const shared_1 = require("@guardian-network/shared");
|
|
5
|
+
const helpers_1 = require("./helpers");
|
|
6
|
+
class ConstantIsAlreadyDefinedError extends shared_1.BaseError {
|
|
7
|
+
static create = (name, selfContext, collisionContext) => {
|
|
8
|
+
const errorMessage = `Constant ${name} declared on ${(0, helpers_1.formatTranspileErrorLocation)(selfContext)} was already defined on ${(0, helpers_1.formatTranspileErrorLocation)(collisionContext)}`;
|
|
9
|
+
return this.build(errorMessage);
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
exports.ConstantIsAlreadyDefinedError = ConstantIsAlreadyDefinedError;
|
|
13
|
+
class VariableAlreadyDefinedError extends shared_1.BaseError {
|
|
14
|
+
static create = (name, selfContext, collisionContext) => {
|
|
15
|
+
const errorMessage = `Variable ${name} declared on ${(0, helpers_1.formatTranspileErrorLocation)(selfContext)} was already defined on ${(0, helpers_1.formatTranspileErrorLocation)(collisionContext)}`;
|
|
16
|
+
return this.build(errorMessage);
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
exports.VariableAlreadyDefinedError = VariableAlreadyDefinedError;
|
|
20
|
+
class ArtifactAlreadyDefinedError extends shared_1.BaseError {
|
|
21
|
+
static create = (name, selfContext, collisionContext) => {
|
|
22
|
+
const errorMessage = `Artifact ${name} declared on ${(0, helpers_1.formatTranspileErrorLocation)(selfContext)} was already defined on ${(0, helpers_1.formatTranspileErrorLocation)(collisionContext)}`;
|
|
23
|
+
return this.build(errorMessage);
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
exports.ArtifactAlreadyDefinedError = ArtifactAlreadyDefinedError;
|
|
27
|
+
class InstanceAlreadyDefinedError extends shared_1.BaseError {
|
|
28
|
+
static create = (name, selfContext, collisionContext) => {
|
|
29
|
+
const errorMessage = `Instance ${name} declared on ${(0, helpers_1.formatTranspileErrorLocation)(selfContext)} was already defined on ${(0, helpers_1.formatTranspileErrorLocation)(collisionContext)}`;
|
|
30
|
+
return this.build(errorMessage);
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
exports.InstanceAlreadyDefinedError = InstanceAlreadyDefinedError;
|
|
34
|
+
class EvaluateAlreadyDeclaredError extends shared_1.BaseError {
|
|
35
|
+
static create = (selfContext, collisionContext) => {
|
|
36
|
+
const errorMessage = `Evaluate statement can only be declared once, but was declared on ${(0, helpers_1.formatTranspileErrorLocation)(selfContext)} being already defined on ${(0, helpers_1.formatTranspileErrorLocation)(collisionContext)}`;
|
|
37
|
+
return this.build(errorMessage);
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
exports.EvaluateAlreadyDeclaredError = EvaluateAlreadyDeclaredError;
|
|
41
|
+
class ArtifactNotDefinedError extends shared_1.BaseError {
|
|
42
|
+
static create = (name, selfContext) => {
|
|
43
|
+
const errorMessage = `Artifact ${name} (referenced ${(0, helpers_1.formatTranspileErrorLocation)(selfContext)}) was not found in the scope`;
|
|
44
|
+
return this.build(errorMessage);
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
exports.ArtifactNotDefinedError = ArtifactNotDefinedError;
|
|
48
|
+
class VariableNotDefinedError extends shared_1.BaseError {
|
|
49
|
+
static create = (name, selfContext) => {
|
|
50
|
+
const errorMessage = `Variable ${name} (referenced ${(0, helpers_1.formatTranspileErrorLocation)(selfContext)}) was not found in the scope`;
|
|
51
|
+
return this.build(errorMessage);
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
exports.VariableNotDefinedError = VariableNotDefinedError;
|
|
55
|
+
class ConstantNotDefinedError extends shared_1.BaseError {
|
|
56
|
+
static create = (name, selfContext) => {
|
|
57
|
+
const errorMessage = `Constant ${name} (referenced ${(0, helpers_1.formatTranspileErrorLocation)(selfContext)}) was not found in the scope`;
|
|
58
|
+
return this.build(errorMessage);
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
exports.ConstantNotDefinedError = ConstantNotDefinedError;
|
|
62
|
+
class InstanceNotDefinedError extends shared_1.BaseError {
|
|
63
|
+
static create = (name, selfContext) => {
|
|
64
|
+
const errorMessage = `Instance ${name} (referenced ${(0, helpers_1.formatTranspileErrorLocation)(selfContext)}) was not found in the scope`;
|
|
65
|
+
return this.build(errorMessage);
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
exports.InstanceNotDefinedError = InstanceNotDefinedError;
|
|
69
|
+
class ImpropperInitArgsMutabilityError extends shared_1.BaseError {
|
|
70
|
+
static create = (name, selfContext) => {
|
|
71
|
+
const errorMessage = `Variable ${name} (referenced ${(0, helpers_1.formatTranspileErrorLocation)(selfContext)}) must be constant to be an initialization argument`;
|
|
72
|
+
return this.build(errorMessage);
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
exports.ImpropperInitArgsMutabilityError = ImpropperInitArgsMutabilityError;
|
|
76
|
+
class EvaluateTypeNotBoolError extends shared_1.BaseError {
|
|
77
|
+
static create = (name, selfContext, referenceContext) => {
|
|
78
|
+
const errorMessage = `Type of ${name} instance return value (defined ${(0, helpers_1.formatTranspileErrorLocation)(referenceContext)}) (referenced ${(0, helpers_1.formatTranspileErrorLocation)(selfContext)}) must be boolean to be used as a root`;
|
|
79
|
+
return this.build(errorMessage);
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
exports.EvaluateTypeNotBoolError = EvaluateTypeNotBoolError;
|
|
83
|
+
class UnkownDirectiveError extends shared_1.BaseError {
|
|
84
|
+
static create = (name, selfContext) => {
|
|
85
|
+
const errorMessage = `Unknown directive ${name} (dispatched ${(0, helpers_1.formatTranspileErrorLocation)(selfContext)})`;
|
|
86
|
+
return this.build(errorMessage);
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
exports.UnkownDirectiveError = UnkownDirectiveError;
|
|
90
|
+
class ImportAmbiguityError extends shared_1.BaseError {
|
|
91
|
+
static create = (troublePropertyName, message) => {
|
|
92
|
+
const errorMessage = `Importing ${troublePropertyName} error: ${message}`;
|
|
93
|
+
return this.build(errorMessage);
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
exports.ImportAmbiguityError = ImportAmbiguityError;
|
|
97
|
+
class NonInjectedVariablesNotAllowedError extends shared_1.BaseError {
|
|
98
|
+
static create = (name, selfContext) => {
|
|
99
|
+
const errorMessage = `Variable ${name} (declared ${(0, helpers_1.formatTranspileErrorLocation)(selfContext)}) must be "injected" because of corresponding directive`;
|
|
100
|
+
return this.build(errorMessage);
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
exports.NonInjectedVariablesNotAllowedError = NonInjectedVariablesNotAllowedError;
|
|
104
|
+
class NoEvaluateStatementError extends shared_1.BaseError {
|
|
105
|
+
static create = () => {
|
|
106
|
+
const errorMessage = `The program must include evaluate statement to define graph root node`;
|
|
107
|
+
return this.build(errorMessage);
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
exports.NoEvaluateStatementError = NoEvaluateStatementError;
|
|
111
|
+
class CyclicReferenceDSLError extends shared_1.BaseError {
|
|
112
|
+
static create = (selfName, referenceName, selfContext, referenceContext) => {
|
|
113
|
+
const errorMessage = `Instance ${selfName} (defined ${(0, helpers_1.formatTranspileErrorLocation)(selfContext)}) is referenced in instance ${referenceName} (defined ${(0, helpers_1.formatTranspileErrorLocation)(referenceContext)}) in a cyclic manner`;
|
|
114
|
+
return this.build(errorMessage);
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
exports.CyclicReferenceDSLError = CyclicReferenceDSLError;
|
|
118
|
+
class SelfReferenceDSLError extends shared_1.BaseError {
|
|
119
|
+
static create = (name, selfContext) => {
|
|
120
|
+
const errorMessage = `Instance ${name} (defined ${(0, helpers_1.formatTranspileErrorLocation)(selfContext)}) is referenced in its own arguments`;
|
|
121
|
+
return this.build(errorMessage);
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
exports.SelfReferenceDSLError = SelfReferenceDSLError;
|
|
125
|
+
class CannotInferValueTypeError extends shared_1.BaseError {
|
|
126
|
+
static create = (value, selfContext) => {
|
|
127
|
+
const errorMessage = `Can not infer type of a literal value ${value} (encountered ${(0, helpers_1.formatTranspileErrorLocation)(selfContext)})`;
|
|
128
|
+
return this.build(errorMessage);
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
exports.CannotInferValueTypeError = CannotInferValueTypeError;
|
|
132
|
+
//# sourceMappingURL=validation-errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation-errors.js","sourceRoot":"","sources":["../../../src/transpiler/errors/validation-errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { InstanceConfig, TypedValue } from '@guardian-network/shared';
|
|
2
|
+
import { InstanceDeclarationContext } from '../../antlr';
|
|
3
|
+
import { LatentState } from '../state/LatentState';
|
|
4
|
+
import { Artifacts } from '../state/types';
|
|
5
|
+
export declare const extractAndLookupExecArguments: (ctx: InstanceDeclarationContext, latentState: LatentState) => TypedValue[];
|
|
6
|
+
export declare const extractAndLookupInitArguments: (ctx: InstanceDeclarationContext, latentState: LatentState) => TypedValue[] | null;
|
|
7
|
+
export declare const extractReferenceNodeIds: (config: InstanceConfig) => string[];
|
|
8
|
+
export declare const dereferenceArtifact: (ctx: InstanceDeclarationContext, artifactsMap: Artifacts) => string;
|
|
9
|
+
export declare const formatInstanceReference: (nodeId: string) => string;
|
|
10
|
+
//# sourceMappingURL=formatter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatter.d.ts","sourceRoot":"","sources":["../../../src/transpiler/helpers/formatter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAkB,MAAM,aAAa,CAAC;AAEzE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAG3C,eAAO,MAAM,6BAA6B,QACnC,0BAA0B,eAClB,WAAW,KACvB,UAAU,EAgDZ,CAAC;AAEF,eAAO,MAAM,6BAA6B,QACnC,0BAA0B,eAClB,WAAW,KACvB,UAAU,EAAE,GAAG,IAwCjB,CAAC;AAEF,eAAO,MAAM,uBAAuB,WAAY,cAAc,aAO7D,CAAC;AAEF,eAAO,MAAM,mBAAmB,QACzB,0BAA0B,gBACjB,SAAS,WAgBxB,CAAC;AAsCF,eAAO,MAAM,uBAAuB,WAAY,MAAM,WAErD,CAAC"}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.formatInstanceReference = exports.dereferenceArtifact = exports.extractReferenceNodeIds = exports.extractAndLookupInitArguments = exports.extractAndLookupExecArguments = void 0;
|
|
4
|
+
const ErrorFactory_1 = require("../errors/ErrorFactory");
|
|
5
|
+
const validations_helper_1 = require("./validations.helper");
|
|
6
|
+
const extractAndLookupExecArguments = (ctx, latentState) => {
|
|
7
|
+
if (!ctx.argumentsList())
|
|
8
|
+
return [];
|
|
9
|
+
return ctx
|
|
10
|
+
.argumentsList()
|
|
11
|
+
.identifier_or_literal()
|
|
12
|
+
.map((el) => {
|
|
13
|
+
if (el.literal()) {
|
|
14
|
+
return inferTypedValue(el.literal());
|
|
15
|
+
}
|
|
16
|
+
const name = el.text;
|
|
17
|
+
const refConst = latentState.constants.get(name);
|
|
18
|
+
if (!refConst) {
|
|
19
|
+
const refVar = latentState.variables.get(name);
|
|
20
|
+
if (!refVar) {
|
|
21
|
+
const refInst = (0, validations_helper_1.lookupOrThrow)(name, latentState.instancesByName, ErrorFactory_1.ErrorFactory.variableNotDefined(name, el.ruleContext));
|
|
22
|
+
return {
|
|
23
|
+
value: (0, exports.formatInstanceReference)(refInst.id),
|
|
24
|
+
type: refInst.type,
|
|
25
|
+
substitution: true,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
else
|
|
29
|
+
return {
|
|
30
|
+
value: 'var' + name + `$${refVar.injection}`,
|
|
31
|
+
type: refVar.type,
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
if (refConst.type == 'bytes') {
|
|
36
|
+
return {
|
|
37
|
+
value: formatBytesLiteral(refConst.value),
|
|
38
|
+
type: refConst.type,
|
|
39
|
+
constant: true,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
else
|
|
43
|
+
return {
|
|
44
|
+
value: refConst.value,
|
|
45
|
+
type: refConst.type,
|
|
46
|
+
constant: true,
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
};
|
|
51
|
+
exports.extractAndLookupExecArguments = extractAndLookupExecArguments;
|
|
52
|
+
const extractAndLookupInitArguments = (ctx, latentState) => {
|
|
53
|
+
if (!ctx.WITH_KEYWORD())
|
|
54
|
+
return null;
|
|
55
|
+
if (!ctx.constantsList())
|
|
56
|
+
return [];
|
|
57
|
+
return ctx
|
|
58
|
+
.constantsList()
|
|
59
|
+
.argumentsList()
|
|
60
|
+
.identifier_or_literal()
|
|
61
|
+
.map((el) => {
|
|
62
|
+
if (!!el.literal()) {
|
|
63
|
+
return inferTypedValue(el.literal());
|
|
64
|
+
}
|
|
65
|
+
const name = el.text;
|
|
66
|
+
const refConst = latentState.constants.get(name);
|
|
67
|
+
if (refConst) {
|
|
68
|
+
if (refConst.type == 'bytes') {
|
|
69
|
+
return {
|
|
70
|
+
value: formatBytesLiteral(refConst.value),
|
|
71
|
+
type: refConst.type,
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
else
|
|
75
|
+
return {
|
|
76
|
+
value: refConst.value,
|
|
77
|
+
type: refConst.type,
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
(0, validations_helper_1.lookupOrThrow)(name, latentState.variables, ErrorFactory_1.ErrorFactory.constantNotDefined(name, el.ruleContext));
|
|
82
|
+
throw ErrorFactory_1.ErrorFactory.impropperInitArgsMutabilityMode(name, el.ruleContext);
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
};
|
|
86
|
+
exports.extractAndLookupInitArguments = extractAndLookupInitArguments;
|
|
87
|
+
const extractReferenceNodeIds = (config) => {
|
|
88
|
+
const substitutions = config.execArguments.filter((arg) => arg.substitution);
|
|
89
|
+
const referencesNodeIdList = substitutions.map(({ value }) => value.replaceAll('|', ''));
|
|
90
|
+
return referencesNodeIdList;
|
|
91
|
+
};
|
|
92
|
+
exports.extractReferenceNodeIds = extractReferenceNodeIds;
|
|
93
|
+
const dereferenceArtifact = (ctx, artifactsMap) => {
|
|
94
|
+
if (ctx.identifier_or_literal().literal()) {
|
|
95
|
+
const artifactDereferenced = ctx.identifier_or_literal().literal().text;
|
|
96
|
+
return artifactDereferenced;
|
|
97
|
+
}
|
|
98
|
+
const artifactName = ctx.identifier_or_literal().IDENTIFIER().text;
|
|
99
|
+
const { address } = (0, validations_helper_1.lookupOrThrow)(artifactName, artifactsMap, ErrorFactory_1.ErrorFactory.artifactNotDefined(artifactName, ctx));
|
|
100
|
+
const artifactDereferenced = address;
|
|
101
|
+
return artifactDereferenced;
|
|
102
|
+
};
|
|
103
|
+
exports.dereferenceArtifact = dereferenceArtifact;
|
|
104
|
+
const inferTypedValue = (ctx) => {
|
|
105
|
+
let type;
|
|
106
|
+
let value = ctx.text;
|
|
107
|
+
switch (true) {
|
|
108
|
+
case !!ctx.ADDRESS_LITERAL():
|
|
109
|
+
type = 'address';
|
|
110
|
+
break;
|
|
111
|
+
case !!ctx.BOOL_LITERAL():
|
|
112
|
+
type = 'bool';
|
|
113
|
+
break;
|
|
114
|
+
case !!ctx.STRING_LITERAL():
|
|
115
|
+
type = 'string';
|
|
116
|
+
break;
|
|
117
|
+
case !!ctx.BYTES_LITERAL():
|
|
118
|
+
type = 'bytes';
|
|
119
|
+
value = formatBytesLiteral(value);
|
|
120
|
+
break;
|
|
121
|
+
case !!ctx.NUMBER_LITERAL():
|
|
122
|
+
type = 'number';
|
|
123
|
+
break;
|
|
124
|
+
default:
|
|
125
|
+
throw ErrorFactory_1.ErrorFactory.cannotInferValueType(ctx.text, ctx);
|
|
126
|
+
}
|
|
127
|
+
return {
|
|
128
|
+
type,
|
|
129
|
+
value,
|
|
130
|
+
constant: true,
|
|
131
|
+
};
|
|
132
|
+
};
|
|
133
|
+
const formatBytesLiteral = (value) => {
|
|
134
|
+
return value.replace(/^'|'$/g, '');
|
|
135
|
+
};
|
|
136
|
+
const formatInstanceReference = (nodeId) => {
|
|
137
|
+
return `|${nodeId}|`;
|
|
138
|
+
};
|
|
139
|
+
exports.formatInstanceReference = formatInstanceReference;
|
|
140
|
+
//# sourceMappingURL=formatter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatter.js","sourceRoot":"","sources":["../../../src/transpiler/helpers/formatter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/transpiler/helpers/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,SAAS,CAAC;AACxB,cAAc,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./formatter"), exports);
|
|
18
|
+
__exportStar(require("./resources.helper"), exports);
|
|
19
|
+
__exportStar(require("./types"), exports);
|
|
20
|
+
__exportStar(require("./validations.helper"), exports);
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/transpiler/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,qDAAmC;AACnC,0CAAwB;AACxB,uDAAqC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resources.helper.d.ts","sourceRoot":"","sources":["../../../src/transpiler/helpers/resources.helper.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,UAAU,QAAS,MAAM,YACgB,CAAC;AACvD,eAAO,MAAM,kBAAkB,QAAS,MAAM,YACG,CAAC;AA8BlD,eAAO,MAAM,YAAY,QAAS,MAAM,KAAG,MAqB1C,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.fetchContent = exports.isLocalRelativeUrl = exports.isLocalUrl = void 0;
|
|
7
|
+
const node_fs_1 = require("node:fs");
|
|
8
|
+
const sync_fetch_1 = __importDefault(require("sync-fetch"));
|
|
9
|
+
const DEFAULT_ENCODING = 'utf-8';
|
|
10
|
+
const isLocalUrl = (url) => /^([a-zA-Z]:)?(\\|\/)([^\\\/]+(\\|\/)?)+$/.test(url);
|
|
11
|
+
exports.isLocalUrl = isLocalUrl;
|
|
12
|
+
const isLocalRelativeUrl = (url) => /^(\.\.\/|\.\/)?([^\\\/]+(\\|\/)?)+$/.test(url);
|
|
13
|
+
exports.isLocalRelativeUrl = isLocalRelativeUrl;
|
|
14
|
+
const isHttpsUrl = (url) => /^https?:\/\//.test(url);
|
|
15
|
+
const isSshUrl = (url) => /^git@[^:]+:[^/]+\/.+\.git$/.test(url);
|
|
16
|
+
const fetchContent = (url) => {
|
|
17
|
+
let content;
|
|
18
|
+
switch (true) {
|
|
19
|
+
case isSshUrl(url):
|
|
20
|
+
throw new Error('Not implemented import resource type: SSH');
|
|
21
|
+
case isHttpsUrl(url):
|
|
22
|
+
content = readFromHttp(url);
|
|
23
|
+
break;
|
|
24
|
+
case (0, exports.isLocalUrl)(url):
|
|
25
|
+
case (0, exports.isLocalRelativeUrl)(url):
|
|
26
|
+
content = readFromFile(url);
|
|
27
|
+
break;
|
|
28
|
+
default:
|
|
29
|
+
throw new Error(`Not supported import resource type: ${url}`);
|
|
30
|
+
}
|
|
31
|
+
return content;
|
|
32
|
+
};
|
|
33
|
+
exports.fetchContent = fetchContent;
|
|
34
|
+
const readFromFile = (filePath) => {
|
|
35
|
+
try {
|
|
36
|
+
const content = (0, node_fs_1.readFileSync)(filePath, DEFAULT_ENCODING);
|
|
37
|
+
return content;
|
|
38
|
+
}
|
|
39
|
+
catch (error) {
|
|
40
|
+
throw new Error(`Error reading file at ${filePath} with description ${error.message}`);
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
const readFromHttp = (url) => {
|
|
44
|
+
const response = (0, sync_fetch_1.default)(url);
|
|
45
|
+
if (!response.ok) {
|
|
46
|
+
throw new Error(`Failed to fetch file from remote URL: ${url}, status: ${response.status} ${response.statusText}`);
|
|
47
|
+
}
|
|
48
|
+
return response.text();
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=resources.helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resources.helper.js","sourceRoot":"","sources":["../../../src/transpiler/helpers/resources.helper.ts"],"names":[],"mappings":";;;;;;AAAA,qCAAuC;AACvC,4DAAmC;AAEnC,MAAM,gBAAgB,GAAG,OAAO,CAAC;AAE1B,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,EAAE,CACxC,0CAA0C,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAD1C,QAAA,UAAU,cACgC;AAChD,MAAM,kBAAkB,GAAG,CAAC,GAAW,EAAE,EAAE,CAChD,qCAAqC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AADrC,QAAA,kBAAkB,sBACmB;AAElD,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,4BAA4B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AA2BlE,MAAM,YAAY,GAAG,CAAC,GAAW,EAAU,EAAE;IAClD,IAAI,OAAe,CAAC;IAEpB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ,CAAC,GAAG,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAE/D,KAAK,UAAU,CAAC,GAAG,CAAC;YAClB,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;YAC5B,MAAM;QAER,KAAK,IAAA,kBAAU,EAAC,GAAG,CAAC,CAAC;QACrB,KAAK,IAAA,0BAAkB,EAAC,GAAG,CAAC;YAC1B,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;YAC5B,MAAM;QAER;YACE,MAAM,IAAI,KAAK,CAAC,uCAAuC,GAAG,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AArBW,QAAA,YAAY,gBAqBvB;AAEF,MAAM,YAAY,GAAG,CAAC,QAAgB,EAAU,EAAE;IAChD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAA,sBAAY,EAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QACzD,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,yBAAyB,QAAQ,qBAAqB,KAAK,CAAC,OAAO,EAAE,CACtE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,GAAW,EAAU,EAAE;IAC3C,MAAM,QAAQ,GAAG,IAAA,oBAAS,EAAC,GAAG,CAAC,CAAC;IAEhC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,yCAAyC,GAAG,aAAa,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAClG,CAAC;IACJ,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { InstanceConfigArgumentsOnly, NodeTreeInitData as ParsingResult } from '@guardian-network/shared';
|
|
2
|
+
export type InnerValidationMiddleware = (artifactAddress: string, currentInstanceConfig: InstanceConfigArgumentsOnly) => Promise<void>;
|
|
3
|
+
export type OuterValidationMiddlerware = (output: ParsingResult[]) => Promise<void>;
|
|
4
|
+
export type ValidationMiddlware = {
|
|
5
|
+
innerValidations: InnerValidationMiddleware;
|
|
6
|
+
outerValidations: OuterValidationMiddlerware;
|
|
7
|
+
};
|
|
8
|
+
export type TranspilerConfig = {
|
|
9
|
+
partialSources?: boolean;
|
|
10
|
+
sourcesDir: string;
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/transpiler/helpers/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC3B,gBAAgB,IAAI,aAAa,EAClC,MAAM,0BAA0B,CAAC;AAElC,MAAM,MAAM,yBAAyB,GAAG,CACtC,eAAe,EAAE,MAAM,EACvB,qBAAqB,EAAE,2BAA2B,KAC/C,OAAO,CAAC,IAAI,CAAC,CAAC;AAEnB,MAAM,MAAM,0BAA0B,GAAG,CACvC,MAAM,EAAE,aAAa,EAAE,KACpB,OAAO,CAAC,IAAI,CAAC,CAAC;AAEnB,MAAM,MAAM,mBAAmB,GAAG;IAChC,gBAAgB,EAAE,yBAAyB,CAAC;IAC5C,gBAAgB,EAAE,0BAA0B,CAAC;CAC9C,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/transpiler/helpers/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { TypedValue } from '@guardian-network/shared';
|
|
2
|
+
import { ParserRuleContext } from 'antlr4ts';
|
|
3
|
+
import { InstancesById, InstancesByName } from '../state/types';
|
|
4
|
+
export declare const lookupOrThrow: <T>(key: string, storage: Map<string, T>, error: Error) => NonNullable<T>;
|
|
5
|
+
export declare const lookupAndThrow: <T>(key: string, storage: Map<string, T>, errorMorph: (item: T) => Error) => void;
|
|
6
|
+
export declare const findCycleAndThrow: (instancesByNameMap: InstancesByName, instancesByIdMap: InstancesById) => void;
|
|
7
|
+
export declare const findSelfReferenceAndThrow: (instanceName: string, instanceId: string, execArguments: TypedValue[], ctx: ParserRuleContext) => void;
|
|
8
|
+
//# sourceMappingURL=validations.helper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validations.helper.d.ts","sourceRoot":"","sources":["../../../src/transpiler/helpers/validations.helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAG7C,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEhE,eAAO,MAAM,aAAa,GAAI,CAAC,OACxB,MAAM,WACF,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,SAChB,KAAK,mBAOb,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,CAAC,OACzB,MAAM,WACF,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,cACX,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,SAK/B,CAAC;AAEF,eAAO,MAAM,iBAAiB,uBACR,eAAe,oBACjB,aAAa,SAsBhC,CAAC;AAEF,eAAO,MAAM,yBAAyB,iBACtB,MAAM,cACR,MAAM,iBACH,UAAU,EAAE,OACtB,iBAAiB,SAUvB,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.findSelfReferenceAndThrow = exports.findCycleAndThrow = exports.lookupAndThrow = exports.lookupOrThrow = void 0;
|
|
4
|
+
const shared_1 = require("@guardian-network/shared");
|
|
5
|
+
const ErrorFactory_1 = require("../errors/ErrorFactory");
|
|
6
|
+
const helpers_1 = require("../helpers");
|
|
7
|
+
const lookupOrThrow = (key, storage, error) => {
|
|
8
|
+
const item = storage.get(key);
|
|
9
|
+
if (!item)
|
|
10
|
+
throw error;
|
|
11
|
+
return item;
|
|
12
|
+
};
|
|
13
|
+
exports.lookupOrThrow = lookupOrThrow;
|
|
14
|
+
const lookupAndThrow = (key, storage, errorMorph) => {
|
|
15
|
+
const item = storage.get(key);
|
|
16
|
+
if (!!item)
|
|
17
|
+
throw errorMorph(item);
|
|
18
|
+
};
|
|
19
|
+
exports.lookupAndThrow = lookupAndThrow;
|
|
20
|
+
const findCycleAndThrow = (instancesByNameMap, instancesByIdMap) => {
|
|
21
|
+
const instancesList = (0, shared_1.mapToArray)(instancesByNameMap);
|
|
22
|
+
const nodesList = instancesList.map((instance) => ({
|
|
23
|
+
id: instance.id,
|
|
24
|
+
references: (0, helpers_1.extractReferenceNodeIds)(instance.config),
|
|
25
|
+
}));
|
|
26
|
+
const cycleFound = (0, shared_1.findCycle)(nodesList);
|
|
27
|
+
if (!!cycleFound) {
|
|
28
|
+
const invokingNode = instancesByIdMap.get(cycleFound.parentNodeId);
|
|
29
|
+
const referencedNode = instancesByIdMap.get(cycleFound.nodeId);
|
|
30
|
+
throw ErrorFactory_1.ErrorFactory.cyclicReferenceDSL(invokingNode.name, referencedNode.name, invokingNode.ctx, referencedNode.ctx);
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
exports.findCycleAndThrow = findCycleAndThrow;
|
|
34
|
+
const findSelfReferenceAndThrow = (instanceName, instanceId, execArguments, ctx) => {
|
|
35
|
+
const maybeSelfReference = execArguments.find(({ substitution, value }) => !!substitution && value == (0, helpers_1.formatInstanceReference)(instanceId));
|
|
36
|
+
if (!!maybeSelfReference) {
|
|
37
|
+
throw ErrorFactory_1.ErrorFactory.selfReferenceDSL(instanceName, ctx);
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
exports.findSelfReferenceAndThrow = findSelfReferenceAndThrow;
|
|
41
|
+
//# sourceMappingURL=validations.helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validations.helper.js","sourceRoot":"","sources":["../../../src/transpiler/helpers/validations.helper.ts"],"names":[],"mappings":";;;AAAA,qDAA6E;AAE7E,yDAAsD;AACtD,wCAA8E;AAGvE,MAAM,aAAa,GAAG,CAC3B,GAAW,EACX,OAAuB,EACvB,KAAY,EACZ,EAAE;IACF,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAE9B,IAAI,CAAC,IAAI;QAAE,MAAM,KAAK,CAAC;IAEvB,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAVW,QAAA,aAAa,iBAUxB;AAEK,MAAM,cAAc,GAAG,CAC5B,GAAW,EACX,OAAuB,EACvB,UAA8B,EAC9B,EAAE;IACF,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAE9B,IAAI,CAAC,CAAC,IAAI;QAAE,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC;AACrC,CAAC,CAAC;AARW,QAAA,cAAc,kBAQzB;AAEK,MAAM,iBAAiB,GAAG,CAC/B,kBAAmC,EACnC,gBAA+B,EAC/B,EAAE;IACF,MAAM,aAAa,GAAG,IAAA,mBAAU,EAAC,kBAAkB,CAAC,CAAC;IAErD,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjD,EAAE,EAAE,QAAQ,CAAC,EAAE;QACf,UAAU,EAAE,IAAA,iCAAuB,EAAC,QAAQ,CAAC,MAAM,CAAC;KACrD,CAAC,CAAC,CAAC;IAEJ,MAAM,UAAU,GAAG,IAAA,kBAAS,EAAC,SAAS,CAAC,CAAC;IAExC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;QACjB,MAAM,YAAY,GAAG,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAE,CAAC;QACpE,MAAM,cAAc,GAAG,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAE,CAAC;QAEhE,MAAM,2BAAY,CAAC,kBAAkB,CACnC,YAAY,CAAC,IAAI,EACjB,cAAc,CAAC,IAAI,EACnB,YAAY,CAAC,GAAG,EAChB,cAAc,CAAC,GAAG,CACnB,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAxBW,QAAA,iBAAiB,qBAwB5B;AAEK,MAAM,yBAAyB,GAAG,CACvC,YAAoB,EACpB,UAAkB,EAClB,aAA2B,EAC3B,GAAsB,EACtB,EAAE;IACF,MAAM,kBAAkB,GAAG,aAAa,CAAC,IAAI,CAC3C,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,EAAE,CAC1B,CAAC,CAAC,YAAY,IAAI,KAAK,IAAI,IAAA,iCAAuB,EAAC,UAAU,CAAC,CACjE,CAAC;IAEF,IAAI,CAAC,CAAC,kBAAkB,EAAE,CAAC;QACzB,MAAM,2BAAY,CAAC,gBAAgB,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;IACzD,CAAC;AACH,CAAC,CAAC;AAdW,QAAA,yBAAyB,6BAcpC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/transpiler/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.Transpiler = void 0;
|
|
18
|
+
__exportStar(require("./helpers"), exports);
|
|
19
|
+
var Transpiler_1 = require("./Transpiler");
|
|
20
|
+
Object.defineProperty(exports, "Transpiler", { enumerable: true, get: function () { return Transpiler_1.Transpiler; } });
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/transpiler/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,2CAA0C;AAAjC,wGAAA,UAAU,OAAA"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ArtifactDeclarationContext, ConstantDeclarationContext, DirectiveContext, EvaluateStatementContext, ImportStatementContext, InstanceDeclarationContext, LacLangListener, ProgramContext, VarDeclarationContext } from '../antlr';
|
|
2
|
+
import { TranspilerConfig } from './helpers';
|
|
3
|
+
import { LatentState } from './state/LatentState';
|
|
4
|
+
export declare class LacLangTranspiler implements LacLangListener {
|
|
5
|
+
latentState: LatentState;
|
|
6
|
+
private config;
|
|
7
|
+
constructor(options: TranspilerConfig);
|
|
8
|
+
enterDirective(ctx: DirectiveContext): void;
|
|
9
|
+
enterImportStatement(ctx: ImportStatementContext): void;
|
|
10
|
+
enterVarDeclaration(ctx: VarDeclarationContext): void;
|
|
11
|
+
enterConstantDeclaration(ctx: ConstantDeclarationContext): void;
|
|
12
|
+
enterArtifactDeclaration(ctx: ArtifactDeclarationContext): void;
|
|
13
|
+
enterInstanceDeclaration(ctx: InstanceDeclarationContext): void;
|
|
14
|
+
enterEvaluateStatement(ctx: EvaluateStatementContext): void;
|
|
15
|
+
exitProgram(_: ProgramContext): void;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=listener.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"listener.d.ts","sourceRoot":"","sources":["../../src/transpiler/listener.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,EAC1B,gBAAgB,EAChB,wBAAwB,EACxB,sBAAsB,EACtB,0BAA0B,EAC1B,eAAe,EACf,cAAc,EACd,qBAAqB,EACtB,MAAM,UAAU,CAAC;AAGlB,OAAO,EAOL,gBAAgB,EACjB,MAAM,WAAW,CAAC;AAOnB,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlD,qBAAa,iBAAkB,YAAW,eAAe;IAChD,WAAW,EAAE,WAAW,CAAqB;IACpD,OAAO,CAAC,MAAM,CAAmB;gBAErB,OAAO,EAAE,gBAAgB;IAIrC,cAAc,CAAC,GAAG,EAAE,gBAAgB;IAapC,oBAAoB,CAAC,GAAG,EAAE,sBAAsB;IAmBhD,mBAAmB,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI;IAUrD,wBAAwB,CAAC,GAAG,EAAE,0BAA0B;IAUxD,wBAAwB,CAAC,GAAG,EAAE,0BAA0B;IAUxD,wBAAwB,CAAC,GAAG,EAAE,0BAA0B;IAiDxD,sBAAsB,CAAC,GAAG,EAAE,wBAAwB;IAuBpD,WAAW,CAAC,CAAC,EAAE,cAAc;CAI9B"}
|