@abaplint/cli
Version:
abaplint - Command Line Interface
1,268 lines (1,117 loc) • 5.13 MB
JavaScript
/******/ (() => { // webpackBootstrap
/******/ var __webpack_modules__ = ({
/***/ "../core/build/src/abap/1_lexer/lexer.js"
/*!***********************************************!*\
!*** ../core/build/src/abap/1_lexer/lexer.js ***!
\***********************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Lexer = void 0;
const position_1 = __webpack_require__(/*! ../../position */ "../core/build/src/position.js");
const virtual_position_1 = __webpack_require__(/*! ../../virtual_position */ "../core/build/src/virtual_position.js");
const tokens_1 = __webpack_require__(/*! ./tokens */ "../core/build/src/abap/1_lexer/tokens/index.js");
const lexer_buffer_1 = __webpack_require__(/*! ./lexer_buffer */ "../core/build/src/abap/1_lexer/lexer_buffer.js");
const lexer_stream_1 = __webpack_require__(/*! ./lexer_stream */ "../core/build/src/abap/1_lexer/lexer_stream.js");
const ModeNormal = 1;
const ModePing = 2;
const ModeStr = 3;
const ModeTemplate = 4;
const ModeComment = 5;
const ModePragma = 6;
class Lexer {
run(file, virtual) {
this.virtual = virtual;
this.tokens = [];
this.m = ModeNormal;
this.process(file.getRaw());
return { file, tokens: this.tokens };
}
add() {
const s = this.buffer.get().trim();
if (s.length > 0) {
const col = this.stream.getCol();
const row = this.stream.getRow();
let whiteBefore = false;
if (this.stream.getOffset() - s.length >= 0) {
const prev = this.stream.getRaw().substr(this.stream.getOffset() - s.length, 1);
if (prev === " " || prev === "\n" || prev === "\t" || prev === ":") {
whiteBefore = true;
}
}
let whiteAfter = false;
const next = this.stream.nextChar();
if (next === " " || next === "\n" || next === "\t" || next === ":" || next === "," || next === "." || next === "" || next === "\"") {
whiteAfter = true;
}
let pos = new position_1.Position(row, col - s.length);
if (this.virtual) {
pos = new virtual_position_1.VirtualPosition(this.virtual, pos.getRow(), pos.getCol());
}
let tok = undefined;
if (this.m === ModeComment) {
tok = new tokens_1.Comment(pos, s);
}
else if (this.m === ModePing || this.m === ModeStr) {
tok = new tokens_1.StringToken(pos, s);
}
else if (this.m === ModeTemplate) {
const first = s.charAt(0);
const last = s.charAt(s.length - 1);
if (first === "|" && last === "|") {
tok = new tokens_1.StringTemplate(pos, s);
}
else if (first === "|" && last === "{" && whiteAfter === true) {
tok = new tokens_1.StringTemplateBegin(pos, s);
}
else if (first === "}" && last === "|" && whiteBefore === true) {
tok = new tokens_1.StringTemplateEnd(pos, s);
}
else if (first === "}" && last === "{" && whiteAfter === true && whiteBefore === true) {
tok = new tokens_1.StringTemplateMiddle(pos, s);
}
else {
tok = new tokens_1.Identifier(pos, s);
}
}
else if (s.length > 2 && s.substr(0, 2) === "##") {
tok = new tokens_1.Pragma(pos, s);
}
else if (s.length === 1) {
if (s === "." || s === ",") {
tok = new tokens_1.Punctuation(pos, s);
}
else if (s === "[") {
if (whiteBefore === true && whiteAfter === true) {
tok = new tokens_1.WBracketLeftW(pos, s);
}
else if (whiteBefore === true) {
tok = new tokens_1.WBracketLeft(pos, s);
}
else if (whiteAfter === true) {
tok = new tokens_1.BracketLeftW(pos, s);
}
else {
tok = new tokens_1.BracketLeft(pos, s);
}
}
else if (s === "(") {
if (whiteBefore === true && whiteAfter === true) {
tok = new tokens_1.WParenLeftW(pos, s);
}
else if (whiteBefore === true) {
tok = new tokens_1.WParenLeft(pos, s);
}
else if (whiteAfter === true) {
tok = new tokens_1.ParenLeftW(pos, s);
}
else {
tok = new tokens_1.ParenLeft(pos, s);
}
}
else if (s === "]") {
if (whiteBefore === true && whiteAfter === true) {
tok = new tokens_1.WBracketRightW(pos, s);
}
else if (whiteBefore === true) {
tok = new tokens_1.WBracketRight(pos, s);
}
else if (whiteAfter === true) {
tok = new tokens_1.BracketRightW(pos, s);
}
else {
tok = new tokens_1.BracketRight(pos, s);
}
}
else if (s === ")") {
if (whiteBefore === true && whiteAfter === true) {
tok = new tokens_1.WParenRightW(pos, s);
}
else if (whiteBefore === true) {
tok = new tokens_1.WParenRight(pos, s);
}
else if (whiteAfter === true) {
tok = new tokens_1.ParenRightW(pos, s);
}
else {
tok = new tokens_1.ParenRight(pos, s);
}
}
else if (s === "-") {
if (whiteBefore === true && whiteAfter === true) {
tok = new tokens_1.WDashW(pos, s);
}
else if (whiteBefore === true) {
tok = new tokens_1.WDash(pos, s);
}
else if (whiteAfter === true) {
tok = new tokens_1.DashW(pos, s);
}
else {
tok = new tokens_1.Dash(pos, s);
}
}
else if (s === "+") {
if (whiteBefore === true && whiteAfter === true) {
tok = new tokens_1.WPlusW(pos, s);
}
else if (whiteBefore === true) {
tok = new tokens_1.WPlus(pos, s);
}
else if (whiteAfter === true) {
tok = new tokens_1.PlusW(pos, s);
}
else {
tok = new tokens_1.Plus(pos, s);
}
}
else if (s === "@") {
if (whiteBefore === true && whiteAfter === true) {
tok = new tokens_1.WAtW(pos, s);
}
else if (whiteBefore === true) {
tok = new tokens_1.WAt(pos, s);
}
else if (whiteAfter === true) {
tok = new tokens_1.AtW(pos, s);
}
else {
tok = new tokens_1.At(pos, s);
}
}
}
else if (s.length === 2) {
if (s === "->") {
if (whiteBefore === true && whiteAfter === true) {
tok = new tokens_1.WInstanceArrowW(pos, s);
}
else if (whiteBefore === true) {
tok = new tokens_1.WInstanceArrow(pos, s);
}
else if (whiteAfter === true) {
tok = new tokens_1.InstanceArrowW(pos, s);
}
else {
tok = new tokens_1.InstanceArrow(pos, s);
}
}
else if (s === "=>") {
if (whiteBefore === true && whiteAfter === true) {
tok = new tokens_1.WStaticArrowW(pos, s);
}
else if (whiteBefore === true) {
tok = new tokens_1.WStaticArrow(pos, s);
}
else if (whiteAfter === true) {
tok = new tokens_1.StaticArrowW(pos, s);
}
else {
tok = new tokens_1.StaticArrow(pos, s);
}
}
}
if (tok === undefined && this.m === ModeNormal && s.charAt(0) === "\\") {
const adj = this.stream.nextChar() === "" ? 1 : 0;
const prevOffset = this.stream.getOffset() - s.length - adj;
const prevChar = prevOffset >= 0 ? this.stream.getRaw().substr(prevOffset, 1) : "";
const whiteBeforeBackslash = prevChar === " " || prevChar === "\n" || prevChar === "\t" || prevChar === ":";
if (!whiteBeforeBackslash) {
tok = new tokens_1.AssociationName(pos, s);
}
}
if (tok === undefined) {
tok = new tokens_1.Identifier(pos, s);
}
this.tokens.push(tok);
}
this.buffer.clear();
}
process(raw) {
this.stream = new lexer_stream_1.LexerStream(raw.replace(/\r/g, ""));
this.buffer = new lexer_buffer_1.LexerBuffer();
const splits = {};
splits[" "] = true;
splits[":"] = true;
splits["."] = true;
splits[","] = true;
splits["-"] = true;
splits["+"] = true;
splits["("] = true;
splits[")"] = true;
splits["["] = true;
splits["]"] = true;
splits["\\"] = true;
splits["\t"] = true;
splits["\n"] = true;
const bufs = {};
bufs["."] = true;
bufs[","] = true;
bufs[":"] = true;
bufs["("] = true;
bufs[")"] = true;
bufs["["] = true;
bufs["]"] = true;
bufs["+"] = true;
bufs["@"] = true;
for (;;) {
const current = this.stream.currentChar();
const buf = this.buffer.add(current);
const ahead = this.stream.nextChar();
const aahead = this.stream.nextNextChar();
if (this.m === ModeNormal) {
if (splits[ahead]) {
this.add();
}
else if (ahead === "'") {
// start string
this.add();
this.m = ModeStr;
}
else if (ahead === "|" || ahead === "}") {
// start template
this.add();
this.m = ModeTemplate;
}
else if (ahead === "`") {
// start ping
this.add();
this.m = ModePing;
}
else if (aahead === "##") {
// start pragma
this.add();
this.m = ModePragma;
}
else if (ahead === "\""
|| (ahead === "*" && current === "\n")) {
// start comment
this.add();
this.m = ModeComment;
}
else if (ahead === "@" && buf.trim().length === 0) {
this.add();
}
else if (aahead === "->"
|| aahead === "=>") {
this.add();
}
else if (current === ">"
&& ahead !== " "
&& (this.stream.prevChar() === "-" || this.stream.prevChar() === "=")) {
// arrows
this.add();
}
else if (buf.length === 1
&& (bufs[buf]
|| (buf === "-" && ahead !== ">"))) {
this.add();
}
}
else if (this.m === ModePragma && (ahead === "," || ahead === ":" || ahead === "." || ahead === " " || ahead === "\n")) {
// end of pragma
this.add();
this.m = ModeNormal;
}
else if (this.m === ModePing
&& buf.length > 1
&& current === "`"
&& aahead !== "``"
&& ahead !== "`"
&& this.buffer.countIsEven("`")) {
// end of ping
this.add();
if (ahead === `"`) {
this.m = ModeComment;
}
else {
this.m = ModeNormal;
}
}
else if (this.m === ModeTemplate
&& buf.length > 1
&& (current === "|" || current === "{")
&& (this.stream.prevChar() !== "\\" || this.stream.prevPrevChar() === "\\\\")) {
// end of template
this.add();
this.m = ModeNormal;
}
else if (this.m === ModeTemplate
&& ahead === "}"
&& current !== "\\") {
this.add();
}
else if (this.m === ModeStr
&& current === "'"
&& buf.length > 1
&& aahead !== "''"
&& ahead !== "'"
&& this.buffer.countIsEven("'")) {
// end of string
this.add();
if (ahead === "\"") {
this.m = ModeComment;
}
else {
this.m = ModeNormal;
}
}
else if (ahead === "\n" && this.m !== ModeTemplate) {
this.add();
this.m = ModeNormal;
}
else if (this.m === ModeTemplate && current === "\n") {
this.add();
}
if (!this.stream.advance()) {
break;
}
}
this.add();
}
}
exports.Lexer = Lexer;
//# sourceMappingURL=lexer.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/lexer_buffer.js"
/*!******************************************************!*\
!*** ../core/build/src/abap/1_lexer/lexer_buffer.js ***!
\******************************************************/
(__unused_webpack_module, exports) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.LexerBuffer = void 0;
class LexerBuffer {
constructor() {
this.buf = "";
}
add(s) {
this.buf = this.buf + s;
return this.buf;
}
get() {
return this.buf;
}
clear() {
this.buf = "";
}
countIsEven(char) {
let count = 0;
for (let i = 0; i < this.buf.length; i += 1) {
if (this.buf.charAt(i) === char) {
count += 1;
}
}
return count % 2 === 0;
}
}
exports.LexerBuffer = LexerBuffer;
//# sourceMappingURL=lexer_buffer.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/lexer_stream.js"
/*!******************************************************!*\
!*** ../core/build/src/abap/1_lexer/lexer_stream.js ***!
\******************************************************/
(__unused_webpack_module, exports) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.LexerStream = void 0;
class LexerStream {
constructor(raw) {
this.offset = -1;
this.raw = raw;
this.row = 0;
this.col = 0;
}
advance() {
if (this.currentChar() === "\n") {
this.col = 1;
this.row = this.row + 1;
}
if (this.offset === this.raw.length) {
this.col = this.col - 1;
return false;
}
this.col = this.col + 1;
this.offset = this.offset + 1;
return true;
}
getCol() {
return this.col;
}
getRow() {
return this.row;
}
prevChar() {
if (this.offset - 1 < 0) {
return "";
}
return this.raw.substr(this.offset - 1, 1);
}
prevPrevChar() {
if (this.offset - 2 < 0) {
return "";
}
return this.raw.substr(this.offset - 2, 2);
}
currentChar() {
if (this.offset < 0) {
return "\n"; // simulate newline at start of file to handle star(*) comments
}
else if (this.offset >= this.raw.length) {
return "";
}
return this.raw.substr(this.offset, 1);
}
nextChar() {
if (this.offset + 2 > this.raw.length) {
return "";
}
return this.raw.substr(this.offset + 1, 1);
}
nextNextChar() {
if (this.offset + 3 > this.raw.length) {
return this.nextChar();
}
return this.raw.substr(this.offset + 1, 2);
}
getRaw() {
return this.raw;
}
getOffset() {
return this.offset;
}
}
exports.LexerStream = LexerStream;
//# sourceMappingURL=lexer_stream.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/abstract_token.js"
/*!***************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/abstract_token.js ***!
\***************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.AbstractToken = void 0;
const position_1 = __webpack_require__(/*! ../../../position */ "../core/build/src/position.js");
class AbstractToken {
constructor(start, str) {
this.start = start;
this.str = str;
this.strUpper = str.toUpperCase();
}
// special function, for debugging purposes, see https://github.com/abaplint/abaplint/pull/3137
[Symbol.for("debug.description")]() {
return `${this.constructor.name} ${this.str}`;
}
getStr() {
return this.str;
}
getUpperStr() {
return this.strUpper;
}
getRow() {
return this.start.getRow();
}
getCol() {
return this.start.getCol();
}
getStart() {
return this.start;
}
getEnd() {
return new position_1.Position(this.start.getRow(), this.start.getCol() + this.str.length);
}
}
exports.AbstractToken = AbstractToken;
//# sourceMappingURL=abstract_token.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/association_name.js"
/*!*****************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/association_name.js ***!
\*****************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.AssociationName = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class AssociationName extends abstract_token_1.AbstractToken {
}
exports.AssociationName = AssociationName;
//# sourceMappingURL=association_name.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/at.js"
/*!***************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/at.js ***!
\***************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.At = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class At extends abstract_token_1.AbstractToken {
static railroad() {
return "@";
}
}
exports.At = At;
//# sourceMappingURL=at.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/atw.js"
/*!****************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/atw.js ***!
\****************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.AtW = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class AtW extends abstract_token_1.AbstractToken {
static railroad() {
return "@ ";
}
}
exports.AtW = AtW;
//# sourceMappingURL=atw.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/bracket_left.js"
/*!*************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/bracket_left.js ***!
\*************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.BracketLeft = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class BracketLeft extends abstract_token_1.AbstractToken {
static railroad() {
return "[";
}
}
exports.BracketLeft = BracketLeft;
//# sourceMappingURL=bracket_left.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/bracket_leftw.js"
/*!**************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/bracket_leftw.js ***!
\**************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.BracketLeftW = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class BracketLeftW extends abstract_token_1.AbstractToken {
static railroad() {
return "[ ";
}
}
exports.BracketLeftW = BracketLeftW;
//# sourceMappingURL=bracket_leftw.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/bracket_right.js"
/*!**************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/bracket_right.js ***!
\**************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.BracketRight = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class BracketRight extends abstract_token_1.AbstractToken {
static railroad() {
return "]";
}
}
exports.BracketRight = BracketRight;
//# sourceMappingURL=bracket_right.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/bracket_rightw.js"
/*!***************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/bracket_rightw.js ***!
\***************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.BracketRightW = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class BracketRightW extends abstract_token_1.AbstractToken {
static railroad() {
return "] ";
}
}
exports.BracketRightW = BracketRightW;
//# sourceMappingURL=bracket_rightw.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/colon.js"
/*!******************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/colon.js ***!
\******************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Colon = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class Colon extends abstract_token_1.AbstractToken {
}
exports.Colon = Colon;
//# sourceMappingURL=colon.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/comment.js"
/*!********************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/comment.js ***!
\********************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Comment = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class Comment extends abstract_token_1.AbstractToken {
}
exports.Comment = Comment;
//# sourceMappingURL=comment.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/dash.js"
/*!*****************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/dash.js ***!
\*****************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Dash = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class Dash extends abstract_token_1.AbstractToken {
static railroad() {
return "-";
}
}
exports.Dash = Dash;
//# sourceMappingURL=dash.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/dashw.js"
/*!******************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/dashw.js ***!
\******************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.DashW = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class DashW extends abstract_token_1.AbstractToken {
static railroad() {
return "- ";
}
}
exports.DashW = DashW;
//# sourceMappingURL=dashw.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/identifier.js"
/*!***********************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/identifier.js ***!
\***********************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Identifier = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class Identifier extends abstract_token_1.AbstractToken {
}
exports.Identifier = Identifier;
//# sourceMappingURL=identifier.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/index.js"
/*!******************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/index.js ***!
\******************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./at */ "../core/build/src/abap/1_lexer/tokens/at.js"), exports);
__exportStar(__webpack_require__(/*! ./atw */ "../core/build/src/abap/1_lexer/tokens/atw.js"), exports);
__exportStar(__webpack_require__(/*! ./wat */ "../core/build/src/abap/1_lexer/tokens/wat.js"), exports);
__exportStar(__webpack_require__(/*! ./watw */ "../core/build/src/abap/1_lexer/tokens/watw.js"), exports);
__exportStar(__webpack_require__(/*! ./bracket_left */ "../core/build/src/abap/1_lexer/tokens/bracket_left.js"), exports);
__exportStar(__webpack_require__(/*! ./wbracket_left */ "../core/build/src/abap/1_lexer/tokens/wbracket_left.js"), exports);
__exportStar(__webpack_require__(/*! ./bracket_leftw */ "../core/build/src/abap/1_lexer/tokens/bracket_leftw.js"), exports);
__exportStar(__webpack_require__(/*! ./wbracket_leftw */ "../core/build/src/abap/1_lexer/tokens/wbracket_leftw.js"), exports);
__exportStar(__webpack_require__(/*! ./bracket_right */ "../core/build/src/abap/1_lexer/tokens/bracket_right.js"), exports);
__exportStar(__webpack_require__(/*! ./wbracket_right */ "../core/build/src/abap/1_lexer/tokens/wbracket_right.js"), exports);
__exportStar(__webpack_require__(/*! ./bracket_rightw */ "../core/build/src/abap/1_lexer/tokens/bracket_rightw.js"), exports);
__exportStar(__webpack_require__(/*! ./wbracket_rightw */ "../core/build/src/abap/1_lexer/tokens/wbracket_rightw.js"), exports);
__exportStar(__webpack_require__(/*! ./instance_arrow */ "../core/build/src/abap/1_lexer/tokens/instance_arrow.js"), exports);
__exportStar(__webpack_require__(/*! ./winstance_arrow */ "../core/build/src/abap/1_lexer/tokens/winstance_arrow.js"), exports);
__exportStar(__webpack_require__(/*! ./instance_arroww */ "../core/build/src/abap/1_lexer/tokens/instance_arroww.js"), exports);
__exportStar(__webpack_require__(/*! ./winstance_arroww */ "../core/build/src/abap/1_lexer/tokens/winstance_arroww.js"), exports);
__exportStar(__webpack_require__(/*! ./paren_left */ "../core/build/src/abap/1_lexer/tokens/paren_left.js"), exports);
__exportStar(__webpack_require__(/*! ./wparen_left */ "../core/build/src/abap/1_lexer/tokens/wparen_left.js"), exports);
__exportStar(__webpack_require__(/*! ./paren_leftw */ "../core/build/src/abap/1_lexer/tokens/paren_leftw.js"), exports);
__exportStar(__webpack_require__(/*! ./wparen_leftw */ "../core/build/src/abap/1_lexer/tokens/wparen_leftw.js"), exports);
__exportStar(__webpack_require__(/*! ./paren_right */ "../core/build/src/abap/1_lexer/tokens/paren_right.js"), exports);
__exportStar(__webpack_require__(/*! ./wparen_right */ "../core/build/src/abap/1_lexer/tokens/wparen_right.js"), exports);
__exportStar(__webpack_require__(/*! ./paren_rightw */ "../core/build/src/abap/1_lexer/tokens/paren_rightw.js"), exports);
__exportStar(__webpack_require__(/*! ./wparen_rightw */ "../core/build/src/abap/1_lexer/tokens/wparen_rightw.js"), exports);
__exportStar(__webpack_require__(/*! ./dash */ "../core/build/src/abap/1_lexer/tokens/dash.js"), exports);
__exportStar(__webpack_require__(/*! ./wdash */ "../core/build/src/abap/1_lexer/tokens/wdash.js"), exports);
__exportStar(__webpack_require__(/*! ./dashw */ "../core/build/src/abap/1_lexer/tokens/dashw.js"), exports);
__exportStar(__webpack_require__(/*! ./wdashw */ "../core/build/src/abap/1_lexer/tokens/wdashw.js"), exports);
__exportStar(__webpack_require__(/*! ./plus */ "../core/build/src/abap/1_lexer/tokens/plus.js"), exports);
__exportStar(__webpack_require__(/*! ./wplus */ "../core/build/src/abap/1_lexer/tokens/wplus.js"), exports);
__exportStar(__webpack_require__(/*! ./plusw */ "../core/build/src/abap/1_lexer/tokens/plusw.js"), exports);
__exportStar(__webpack_require__(/*! ./wplusw */ "../core/build/src/abap/1_lexer/tokens/wplusw.js"), exports);
__exportStar(__webpack_require__(/*! ./static_arrow */ "../core/build/src/abap/1_lexer/tokens/static_arrow.js"), exports);
__exportStar(__webpack_require__(/*! ./wstatic_arrow */ "../core/build/src/abap/1_lexer/tokens/wstatic_arrow.js"), exports);
__exportStar(__webpack_require__(/*! ./static_arroww */ "../core/build/src/abap/1_lexer/tokens/static_arroww.js"), exports);
__exportStar(__webpack_require__(/*! ./wstatic_arroww */ "../core/build/src/abap/1_lexer/tokens/wstatic_arroww.js"), exports);
__exportStar(__webpack_require__(/*! ./string */ "../core/build/src/abap/1_lexer/tokens/string.js"), exports);
__exportStar(__webpack_require__(/*! ./string_template */ "../core/build/src/abap/1_lexer/tokens/string_template.js"), exports);
__exportStar(__webpack_require__(/*! ./string_template_begin */ "../core/build/src/abap/1_lexer/tokens/string_template_begin.js"), exports);
__exportStar(__webpack_require__(/*! ./string_template_end */ "../core/build/src/abap/1_lexer/tokens/string_template_end.js"), exports);
__exportStar(__webpack_require__(/*! ./string_template_middle */ "../core/build/src/abap/1_lexer/tokens/string_template_middle.js"), exports);
__exportStar(__webpack_require__(/*! ./colon */ "../core/build/src/abap/1_lexer/tokens/colon.js"), exports);
__exportStar(__webpack_require__(/*! ./comment */ "../core/build/src/abap/1_lexer/tokens/comment.js"), exports);
__exportStar(__webpack_require__(/*! ./identifier */ "../core/build/src/abap/1_lexer/tokens/identifier.js"), exports);
__exportStar(__webpack_require__(/*! ./association_name */ "../core/build/src/abap/1_lexer/tokens/association_name.js"), exports);
__exportStar(__webpack_require__(/*! ./pragma */ "../core/build/src/abap/1_lexer/tokens/pragma.js"), exports);
__exportStar(__webpack_require__(/*! ./punctuation */ "../core/build/src/abap/1_lexer/tokens/punctuation.js"), exports);
//# sourceMappingURL=index.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/instance_arrow.js"
/*!***************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/instance_arrow.js ***!
\***************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.InstanceArrow = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class InstanceArrow extends abstract_token_1.AbstractToken {
static railroad() {
return "->";
}
}
exports.InstanceArrow = InstanceArrow;
//# sourceMappingURL=instance_arrow.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/instance_arroww.js"
/*!****************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/instance_arroww.js ***!
\****************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.InstanceArrowW = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class InstanceArrowW extends abstract_token_1.AbstractToken {
static railroad() {
return "-> ";
}
}
exports.InstanceArrowW = InstanceArrowW;
//# sourceMappingURL=instance_arroww.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/paren_left.js"
/*!***********************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/paren_left.js ***!
\***********************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ParenLeft = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class ParenLeft extends abstract_token_1.AbstractToken {
static railroad() {
return "(";
}
}
exports.ParenLeft = ParenLeft;
//# sourceMappingURL=paren_left.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/paren_leftw.js"
/*!************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/paren_leftw.js ***!
\************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ParenLeftW = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class ParenLeftW extends abstract_token_1.AbstractToken {
static railroad() {
return "( ";
}
}
exports.ParenLeftW = ParenLeftW;
//# sourceMappingURL=paren_leftw.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/paren_right.js"
/*!************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/paren_right.js ***!
\************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ParenRight = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class ParenRight extends abstract_token_1.AbstractToken {
static railroad() {
return ")";
}
}
exports.ParenRight = ParenRight;
//# sourceMappingURL=paren_right.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/paren_rightw.js"
/*!*************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/paren_rightw.js ***!
\*************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ParenRightW = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class ParenRightW extends abstract_token_1.AbstractToken {
static railroad() {
return ") ";
}
}
exports.ParenRightW = ParenRightW;
//# sourceMappingURL=paren_rightw.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/plus.js"
/*!*****************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/plus.js ***!
\*****************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Plus = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class Plus extends abstract_token_1.AbstractToken {
static railroad() {
return "+";
}
}
exports.Plus = Plus;
//# sourceMappingURL=plus.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/plusw.js"
/*!******************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/plusw.js ***!
\******************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.PlusW = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class PlusW extends abstract_token_1.AbstractToken {
static railroad() {
return "+ ";
}
}
exports.PlusW = PlusW;
//# sourceMappingURL=plusw.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/pragma.js"
/*!*******************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/pragma.js ***!
\*******************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Pragma = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class Pragma extends abstract_token_1.AbstractToken {
}
exports.Pragma = Pragma;
//# sourceMappingURL=pragma.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/punctuation.js"
/*!************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/punctuation.js ***!
\************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Punctuation = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class Punctuation extends abstract_token_1.AbstractToken {
}
exports.Punctuation = Punctuation;
//# sourceMappingURL=punctuation.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/static_arrow.js"
/*!*************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/static_arrow.js ***!
\*************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.StaticArrow = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class StaticArrow extends abstract_token_1.AbstractToken {
static railroad() {
return "=>";
}
}
exports.StaticArrow = StaticArrow;
//# sourceMappingURL=static_arrow.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/static_arroww.js"
/*!**************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/static_arroww.js ***!
\**************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.StaticArrowW = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class StaticArrowW extends abstract_token_1.AbstractToken {
static railroad() {
return "=> ";
}
}
exports.StaticArrowW = StaticArrowW;
//# sourceMappingURL=static_arroww.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/string.js"
/*!*******************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/string.js ***!
\*******************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.StringToken = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class StringToken extends abstract_token_1.AbstractToken {
}
exports.StringToken = StringToken;
//# sourceMappingURL=string.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/string_template.js"
/*!****************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/string_template.js ***!
\****************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.StringTemplate = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class StringTemplate extends abstract_token_1.AbstractToken {
}
exports.StringTemplate = StringTemplate;
//# sourceMappingURL=string_template.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/string_template_begin.js"
/*!**********************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/string_template_begin.js ***!
\**********************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.StringTemplateBegin = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class StringTemplateBegin extends abstract_token_1.AbstractToken {
}
exports.StringTemplateBegin = StringTemplateBegin;
//# sourceMappingURL=string_template_begin.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/string_template_end.js"
/*!********************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/string_template_end.js ***!
\********************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.StringTemplateEnd = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class StringTemplateEnd extends abstract_token_1.AbstractToken {
}
exports.StringTemplateEnd = StringTemplateEnd;
//# sourceMappingURL=string_template_end.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/string_template_middle.js"
/*!***********************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/string_template_middle.js ***!
\***********************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.StringTemplateMiddle = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class StringTemplateMiddle extends abstract_token_1.AbstractToken {
}
exports.StringTemplateMiddle = StringTemplateMiddle;
//# sourceMappingURL=string_template_middle.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/wat.js"
/*!****************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/wat.js ***!
\****************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.WAt = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class WAt extends abstract_token_1.AbstractToken {
static railroad() {
return " @";
}
}
exports.WAt = WAt;
//# sourceMappingURL=wat.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/watw.js"
/*!*****************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/watw.js ***!
\*****************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.WAtW = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class WAtW extends abstract_token_1.AbstractToken {
static railroad() {
return " @ ";
}
}
exports.WAtW = WAtW;
//# sourceMappingURL=watw.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/wbracket_left.js"
/*!**************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/wbracket_left.js ***!
\**************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.WBracketLeft = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_lexer/tokens/abstract_token.js");
class WBracketLeft extends abstract_token_1.AbstractToken {
static railroad() {
return " [";
}
}
exports.WBracketLeft = WBracketLeft;
//# sourceMappingURL=wbracket_left.js.map
/***/ },
/***/ "../core/build/src/abap/1_lexer/tokens/wbracket_leftw.js"
/*!***************************************************************!*\
!*** ../core/build/src/abap/1_lexer/tokens/wbracket_leftw.js ***!
\***************************************************************/
(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.WBracketLeftW = void 0;
const abstract_token_1 = __webpack_require__(/*! ./abstract_token */ "../core/build/src/abap/1_