ifc-expressions
Version:
Parsing and evaluation of IFC expressions
172 lines (171 loc) • 10.8 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.IfcExpressionLexer = void 0;
const antlr = __importStar(require("antlr4ng"));
class IfcExpressionLexer extends antlr.Lexer {
constructor(input) {
super(input);
this.interpreter = new antlr.LexerATNSimulator(this, IfcExpressionLexer._ATN, IfcExpressionLexer.decisionsToDFA, new antlr.PredictionContextCache());
}
get grammarFileName() { return "IfcExpression.g4"; }
get literalNames() { return IfcExpressionLexer.literalNames; }
get symbolicNames() { return IfcExpressionLexer.symbolicNames; }
get ruleNames() { return IfcExpressionLexer.ruleNames; }
get serializedATN() { return IfcExpressionLexer._serializedATN; }
get channelNames() { return IfcExpressionLexer.channelNames; }
get modeNames() { return IfcExpressionLexer.modeNames; }
static get _ATN() {
if (!IfcExpressionLexer.__ATN) {
IfcExpressionLexer.__ATN = new antlr.ATNDeserializer().deserialize(IfcExpressionLexer._serializedATN);
}
return IfcExpressionLexer.__ATN;
}
get vocabulary() {
return IfcExpressionLexer.vocabulary;
}
}
exports.IfcExpressionLexer = IfcExpressionLexer;
IfcExpressionLexer.T__0 = 1;
IfcExpressionLexer.T__1 = 2;
IfcExpressionLexer.T__2 = 3;
IfcExpressionLexer.T__3 = 4;
IfcExpressionLexer.T__4 = 5;
IfcExpressionLexer.T__5 = 6;
IfcExpressionLexer.T__6 = 7;
IfcExpressionLexer.T__7 = 8;
IfcExpressionLexer.T__8 = 9;
IfcExpressionLexer.T__9 = 10;
IfcExpressionLexer.T__10 = 11;
IfcExpressionLexer.T__11 = 12;
IfcExpressionLexer.T__12 = 13;
IfcExpressionLexer.INT = 14;
IfcExpressionLexer.FLOAT = 15;
IfcExpressionLexer.BOOLEAN = 16;
IfcExpressionLexer.LOGICAL_UNKNOWN = 17;
IfcExpressionLexer.DOT = 18;
IfcExpressionLexer.QUOTED_STRING = 19;
IfcExpressionLexer.IDENTIFIER = 20;
IfcExpressionLexer.WS = 21;
IfcExpressionLexer.NEWLINE = 22;
IfcExpressionLexer.BOOLEAN_BINARY_OP = 23;
IfcExpressionLexer.CMP_OP = 24;
IfcExpressionLexer.channelNames = [
"DEFAULT_TOKEN_CHANNEL", "HIDDEN"
];
IfcExpressionLexer.literalNames = [
null, "'--'", "'('", "')'", "'-'", "'^'", "'*'", "'/'", "'+'", "'!'",
"','", "'['", "']'", "'$'", null, null, null, null, "'.'"
];
IfcExpressionLexer.symbolicNames = [
null, null, null, null, null, null, null, null, null, null, null,
null, null, null, "INT", "FLOAT", "BOOLEAN", "LOGICAL_UNKNOWN",
"DOT", "QUOTED_STRING", "IDENTIFIER", "WS", "NEWLINE", "BOOLEAN_BINARY_OP",
"CMP_OP"
];
IfcExpressionLexer.modeNames = [
"DEFAULT_MODE",
];
IfcExpressionLexer.ruleNames = [
"T__0", "T__1", "T__2", "T__3", "T__4", "T__5", "T__6", "T__7",
"T__8", "T__9", "T__10", "T__11", "T__12", "INT", "FLOAT", "BOOLEAN",
"LOGICAL_UNKNOWN", "DOT", "QUOTED_STRING", "IDENTIFIER", "WS", "NEWLINE",
"BOOLEAN_BINARY_OP", "CMP_OP",
];
IfcExpressionLexer._serializedATN = [
4, 0, 24, 188, 6, -1, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5,
2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2, 10, 7, 10, 2, 11, 7, 11, 2, 12, 7, 12, 2,
13, 7, 13, 2, 14, 7, 14, 2, 15, 7, 15, 2, 16, 7, 16, 2, 17, 7, 17, 2, 18, 7, 18, 2, 19, 7,
19, 2, 20, 7, 20, 2, 21, 7, 21, 2, 22, 7, 22, 2, 23, 7, 23, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1,
2, 1, 2, 1, 3, 1, 3, 1, 4, 1, 4, 1, 5, 1, 5, 1, 6, 1, 6, 1, 7, 1, 7, 1, 8, 1, 8, 1, 9, 1, 9, 1,
10, 1, 10, 1, 11, 1, 11, 1, 12, 1, 12, 1, 13, 4, 13, 78, 8, 13, 11, 13, 12, 13, 79, 1, 14,
4, 14, 83, 8, 14, 11, 14, 12, 14, 84, 1, 14, 1, 14, 4, 14, 89, 8, 14, 11, 14, 12, 14, 90,
1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 1, 15,
1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 3, 15, 111, 8, 15, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16,
1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 3, 16, 127, 8, 16, 1, 17,
1, 17, 1, 18, 1, 18, 5, 18, 133, 8, 18, 10, 18, 12, 18, 136, 9, 18, 1, 18, 1, 18, 1, 18,
5, 18, 141, 8, 18, 10, 18, 12, 18, 144, 9, 18, 1, 18, 3, 18, 147, 8, 18, 1, 19, 1, 19,
5, 19, 151, 8, 19, 10, 19, 12, 19, 154, 9, 19, 1, 20, 4, 20, 157, 8, 20, 11, 20, 12, 20,
158, 1, 20, 1, 20, 1, 21, 4, 21, 164, 8, 21, 11, 21, 12, 21, 165, 1, 21, 1, 21, 1, 22,
1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 3, 22, 176, 8, 22, 1, 23, 1, 23, 1, 23, 1, 23, 1, 23,
1, 23, 1, 23, 1, 23, 1, 23, 3, 23, 187, 8, 23, 2, 134, 142, 0, 24, 1, 1, 3, 2, 5, 3, 7, 4,
9, 5, 11, 6, 13, 7, 15, 8, 17, 9, 19, 10, 21, 11, 23, 12, 25, 13, 27, 14, 29, 15, 31, 16,
33, 17, 35, 18, 37, 19, 39, 20, 41, 21, 43, 22, 45, 23, 47, 24, 1, 0, 6, 1, 0, 48, 57,
3, 0, 65, 90, 95, 95, 97, 122, 7, 0, 36, 36, 38, 38, 45, 45, 48, 57, 65, 90, 95, 95, 97,
122, 2, 0, 9, 9, 32, 32, 2, 0, 10, 10, 13, 13, 2, 0, 60, 60, 62, 62, 206, 0, 1, 1, 0, 0,
0, 0, 3, 1, 0, 0, 0, 0, 5, 1, 0, 0, 0, 0, 7, 1, 0, 0, 0, 0, 9, 1, 0, 0, 0, 0, 11, 1, 0, 0, 0, 0,
13, 1, 0, 0, 0, 0, 15, 1, 0, 0, 0, 0, 17, 1, 0, 0, 0, 0, 19, 1, 0, 0, 0, 0, 21, 1, 0, 0, 0, 0,
23, 1, 0, 0, 0, 0, 25, 1, 0, 0, 0, 0, 27, 1, 0, 0, 0, 0, 29, 1, 0, 0, 0, 0, 31, 1, 0, 0, 0, 0,
33, 1, 0, 0, 0, 0, 35, 1, 0, 0, 0, 0, 37, 1, 0, 0, 0, 0, 39, 1, 0, 0, 0, 0, 41, 1, 0, 0, 0, 0,
43, 1, 0, 0, 0, 0, 45, 1, 0, 0, 0, 0, 47, 1, 0, 0, 0, 1, 49, 1, 0, 0, 0, 3, 52, 1, 0, 0, 0, 5,
54, 1, 0, 0, 0, 7, 56, 1, 0, 0, 0, 9, 58, 1, 0, 0, 0, 11, 60, 1, 0, 0, 0, 13, 62, 1, 0, 0, 0,
15, 64, 1, 0, 0, 0, 17, 66, 1, 0, 0, 0, 19, 68, 1, 0, 0, 0, 21, 70, 1, 0, 0, 0, 23, 72, 1,
0, 0, 0, 25, 74, 1, 0, 0, 0, 27, 77, 1, 0, 0, 0, 29, 82, 1, 0, 0, 0, 31, 110, 1, 0, 0, 0, 33,
126, 1, 0, 0, 0, 35, 128, 1, 0, 0, 0, 37, 146, 1, 0, 0, 0, 39, 148, 1, 0, 0, 0, 41, 156,
1, 0, 0, 0, 43, 163, 1, 0, 0, 0, 45, 175, 1, 0, 0, 0, 47, 186, 1, 0, 0, 0, 49, 50, 5, 45,
0, 0, 50, 51, 5, 45, 0, 0, 51, 2, 1, 0, 0, 0, 52, 53, 5, 40, 0, 0, 53, 4, 1, 0, 0, 0, 54, 55,
5, 41, 0, 0, 55, 6, 1, 0, 0, 0, 56, 57, 5, 45, 0, 0, 57, 8, 1, 0, 0, 0, 58, 59, 5, 94, 0, 0,
59, 10, 1, 0, 0, 0, 60, 61, 5, 42, 0, 0, 61, 12, 1, 0, 0, 0, 62, 63, 5, 47, 0, 0, 63, 14,
1, 0, 0, 0, 64, 65, 5, 43, 0, 0, 65, 16, 1, 0, 0, 0, 66, 67, 5, 33, 0, 0, 67, 18, 1, 0, 0,
0, 68, 69, 5, 44, 0, 0, 69, 20, 1, 0, 0, 0, 70, 71, 5, 91, 0, 0, 71, 22, 1, 0, 0, 0, 72, 73,
5, 93, 0, 0, 73, 24, 1, 0, 0, 0, 74, 75, 5, 36, 0, 0, 75, 26, 1, 0, 0, 0, 76, 78, 7, 0, 0,
0, 77, 76, 1, 0, 0, 0, 78, 79, 1, 0, 0, 0, 79, 77, 1, 0, 0, 0, 79, 80, 1, 0, 0, 0, 80, 28,
1, 0, 0, 0, 81, 83, 7, 0, 0, 0, 82, 81, 1, 0, 0, 0, 83, 84, 1, 0, 0, 0, 84, 82, 1, 0, 0, 0,
84, 85, 1, 0, 0, 0, 85, 86, 1, 0, 0, 0, 86, 88, 5, 46, 0, 0, 87, 89, 7, 0, 0, 0, 88, 87, 1,
0, 0, 0, 89, 90, 1, 0, 0, 0, 90, 88, 1, 0, 0, 0, 90, 91, 1, 0, 0, 0, 91, 30, 1, 0, 0, 0, 92,
93, 5, 84, 0, 0, 93, 94, 5, 82, 0, 0, 94, 95, 5, 85, 0, 0, 95, 111, 5, 69, 0, 0, 96, 97,
5, 116, 0, 0, 97, 98, 5, 114, 0, 0, 98, 99, 5, 117, 0, 0, 99, 111, 5, 101, 0, 0, 100, 101,
5, 70, 0, 0, 101, 102, 5, 65, 0, 0, 102, 103, 5, 76, 0, 0, 103, 104, 5, 83, 0, 0, 104,
111, 5, 69, 0, 0, 105, 106, 5, 102, 0, 0, 106, 107, 5, 97, 0, 0, 107, 108, 5, 108, 0,
0, 108, 109, 5, 115, 0, 0, 109, 111, 5, 101, 0, 0, 110, 92, 1, 0, 0, 0, 110, 96, 1, 0,
0, 0, 110, 100, 1, 0, 0, 0, 110, 105, 1, 0, 0, 0, 111, 32, 1, 0, 0, 0, 112, 113, 5, 85,
0, 0, 113, 114, 5, 78, 0, 0, 114, 115, 5, 75, 0, 0, 115, 116, 5, 78, 0, 0, 116, 117, 5,
79, 0, 0, 117, 118, 5, 87, 0, 0, 118, 127, 5, 78, 0, 0, 119, 120, 5, 117, 0, 0, 120, 121,
5, 110, 0, 0, 121, 122, 5, 107, 0, 0, 122, 123, 5, 110, 0, 0, 123, 124, 5, 111, 0, 0,
124, 125, 5, 119, 0, 0, 125, 127, 5, 110, 0, 0, 126, 112, 1, 0, 0, 0, 126, 119, 1, 0,
0, 0, 127, 34, 1, 0, 0, 0, 128, 129, 5, 46, 0, 0, 129, 36, 1, 0, 0, 0, 130, 134, 5, 34,
0, 0, 131, 133, 9, 0, 0, 0, 132, 131, 1, 0, 0, 0, 133, 136, 1, 0, 0, 0, 134, 135, 1, 0,
0, 0, 134, 132, 1, 0, 0, 0, 135, 137, 1, 0, 0, 0, 136, 134, 1, 0, 0, 0, 137, 147, 5, 34,
0, 0, 138, 142, 5, 39, 0, 0, 139, 141, 9, 0, 0, 0, 140, 139, 1, 0, 0, 0, 141, 144, 1, 0,
0, 0, 142, 143, 1, 0, 0, 0, 142, 140, 1, 0, 0, 0, 143, 145, 1, 0, 0, 0, 144, 142, 1, 0,
0, 0, 145, 147, 5, 39, 0, 0, 146, 130, 1, 0, 0, 0, 146, 138, 1, 0, 0, 0, 147, 38, 1, 0,
0, 0, 148, 152, 7, 1, 0, 0, 149, 151, 7, 2, 0, 0, 150, 149, 1, 0, 0, 0, 151, 154, 1, 0,
0, 0, 152, 150, 1, 0, 0, 0, 152, 153, 1, 0, 0, 0, 153, 40, 1, 0, 0, 0, 154, 152, 1, 0, 0,
0, 155, 157, 7, 3, 0, 0, 156, 155, 1, 0, 0, 0, 157, 158, 1, 0, 0, 0, 158, 156, 1, 0, 0,
0, 158, 159, 1, 0, 0, 0, 159, 160, 1, 0, 0, 0, 160, 161, 6, 20, 0, 0, 161, 42, 1, 0, 0,
0, 162, 164, 7, 4, 0, 0, 163, 162, 1, 0, 0, 0, 164, 165, 1, 0, 0, 0, 165, 163, 1, 0, 0,
0, 165, 166, 1, 0, 0, 0, 166, 167, 1, 0, 0, 0, 167, 168, 6, 21, 0, 0, 168, 44, 1, 0, 0,
0, 169, 170, 5, 124, 0, 0, 170, 176, 5, 124, 0, 0, 171, 172, 5, 38, 0, 0, 172, 176, 5,
38, 0, 0, 173, 174, 5, 62, 0, 0, 174, 176, 5, 60, 0, 0, 175, 169, 1, 0, 0, 0, 175, 171,
1, 0, 0, 0, 175, 173, 1, 0, 0, 0, 176, 46, 1, 0, 0, 0, 177, 178, 5, 61, 0, 0, 178, 187,
5, 61, 0, 0, 179, 187, 7, 5, 0, 0, 180, 181, 5, 62, 0, 0, 181, 187, 5, 61, 0, 0, 182, 183,
5, 60, 0, 0, 183, 187, 5, 61, 0, 0, 184, 185, 5, 33, 0, 0, 185, 187, 5, 61, 0, 0, 186,
177, 1, 0, 0, 0, 186, 179, 1, 0, 0, 0, 186, 180, 1, 0, 0, 0, 186, 182, 1, 0, 0, 0, 186,
184, 1, 0, 0, 0, 187, 48, 1, 0, 0, 0, 14, 0, 79, 84, 90, 110, 126, 134, 142, 146, 152,
158, 165, 175, 186, 1, 6, 0, 0
];
IfcExpressionLexer.vocabulary = new antlr.Vocabulary(IfcExpressionLexer.literalNames, IfcExpressionLexer.symbolicNames, []);
IfcExpressionLexer.decisionsToDFA = IfcExpressionLexer._ATN.decisionToState.map((ds, index) => new antlr.DFA(ds, index));
//# sourceMappingURL=IfcExpressionLexer.js.map