Files
quixos-protocol/src/capability-language/generated/QuixosCapabilityParser.ts
T
Timothy J. Aveni 52803dda05 Implement capability generics, checked package specializations and CRUD scaffolding
Add kinded parameters, capability bounds, Self, aliases and closed application identities. Check generic implementations universally and build candidate-specific codecs and descriptors from immutable schemas. Preserve lexical aliases and exact dispatch identities in package and host bindings.

Add an imperative CRUD+index domain scaffold with explicit soft-deletion semantics, source/codegen regression coverage, installed CLI tests and an authoring guide. Existing Web Studio opaque props and class-level create-menu migration are separate from the implemented language core.
2026-09-16 10:42:12 -07:00

6983 lines
262 KiB
TypeScript

import * as antlr from "antlr4ng";
import { Token } from "antlr4ng";
import { QuixosCapabilityVisitor } from "./QuixosCapabilityVisitor.js";
// for running tests with parameters, TODO: discuss strategy for typed parameters in CI
// eslint-disable-next-line no-unused-vars
type int = number;
export class QuixosCapabilityParser extends antlr.Parser {
public static readonly WORKSPACE = 1;
public static readonly TYPE = 2;
public static readonly OBJECT = 3;
public static readonly STORABLE = 4;
public static readonly IMPLEMENTS = 5;
public static readonly REF = 6;
public static readonly FRAGMENT = 7;
public static readonly IMPORT = 8;
public static readonly EXTERNAL = 9;
public static readonly ATOM = 10;
public static readonly INTERFACE = 11;
public static readonly INTERFACES = 12;
public static readonly PACKAGE = 13;
public static readonly VALUE = 14;
public static readonly RELATION = 15;
public static readonly OPERATION = 16;
public static readonly FUNCTION = 17;
public static readonly CONSTRUCTOR = 18;
public static readonly CONSTRUCTS = 19;
public static readonly INPUT = 20;
public static readonly CONFORM = 21;
public static readonly AS = 22;
public static readonly BIND = 23;
public static readonly TO = 24;
public static readonly PRIVATE = 25;
public static readonly SHARED = 26;
public static readonly STATE = 27;
public static readonly EDGE = 28;
public static readonly PROJECTION = 29;
public static readonly WITH = 30;
public static readonly USING = 31;
public static readonly VIA = 32;
public static readonly MATERIALIZE = 33;
public static readonly IF = 34;
public static readonly ABSENT = 35;
public static readonly ON = 36;
public static readonly POLICY = 37;
public static readonly DEFAULT = 38;
public static readonly SOURCE = 39;
public static readonly REPOSITORY = 40;
public static readonly COMMIT = 41;
public static readonly REVISION = 42;
public static readonly SEMANTIC_MAJOR = 43;
public static readonly ON_DELETE = 44;
public static readonly RETAIN_OTHER = 45;
public static readonly KEYED = 46;
public static readonly PUBLIC_TRAVERSAL = 47;
public static readonly ID = 48;
public static readonly DOC = 49;
public static readonly MODE = 50;
public static readonly EMITS = 51;
public static readonly RECEIVER = 52;
public static readonly REQUIRES = 53;
public static readonly ANY = 54;
public static readonly GET = 55;
public static readonly SET = 56;
public static readonly WATCH = 57;
public static readonly START = 58;
public static readonly STOP = 59;
public static readonly READ = 60;
public static readonly WRITE = 61;
public static readonly RESOLVE = 62;
public static readonly CONNECT = 63;
public static readonly DISCONNECT = 64;
public static readonly CALL = 65;
public static readonly WATCH_START = 66;
public static readonly WATCH_STOP = 67;
public static readonly SUBSCRIBE = 68;
public static readonly UNSUBSCRIBE = 69;
public static readonly OPTIMISTIC_REGISTER = 70;
public static readonly CRDT = 71;
public static readonly OPTIONAL_ONE = 72;
public static readonly EXACTLY_ONE = 73;
public static readonly MANY_UNIQUE = 74;
public static readonly MANY = 75;
public static readonly ORDERED = 76;
public static readonly UNIT = 77;
public static readonly WATCH_HANDLE = 78;
public static readonly MESSAGE = 79;
public static readonly ATOM_REF = 80;
public static readonly INTERFACE_REF = 81;
public static readonly OPTIONAL = 82;
public static readonly LIST = 83;
public static readonly RECORD = 84;
public static readonly BOOL = 85;
public static readonly BYTES = 86;
public static readonly DOUBLE = 87;
public static readonly INT32 = 88;
public static readonly INT64 = 89;
public static readonly STRING = 90;
public static readonly UINT32 = 91;
public static readonly UINT64 = 92;
public static readonly TRUE = 93;
public static readonly FALSE = 94;
public static readonly NULL = 95;
public static readonly ARROW = 96;
public static readonly COLON = 97;
public static readonly SEMI = 98;
public static readonly COMMA = 99;
public static readonly DOT = 100;
public static readonly LBRACE = 101;
public static readonly RBRACE = 102;
public static readonly LBRACK = 103;
public static readonly RBRACK = 104;
public static readonly LPAREN = 105;
public static readonly RPAREN = 106;
public static readonly LT = 107;
public static readonly GT = 108;
public static readonly AMP = 109;
public static readonly EQUAL = 110;
public static readonly INTEGER = 111;
public static readonly JSON_NUMBER = 112;
public static readonly IDENTIFIER = 113;
public static readonly STRING_LITERAL = 114;
public static readonly LINE_COMMENT = 115;
public static readonly BLOCK_COMMENT = 116;
public static readonly WS = 117;
public static readonly RULE_document = 0;
public static readonly RULE_fragmentDecl = 1;
public static readonly RULE_sourceImportDecl = 2;
public static readonly RULE_workspaceDecl = 3;
public static readonly RULE_workspaceItem = 4;
public static readonly RULE_resourceImportDecl = 5;
public static readonly RULE_externalAtomDecl = 6;
public static readonly RULE_externalInterfaceDecl = 7;
public static readonly RULE_resourcePreamble = 8;
public static readonly RULE_atomDecl = 9;
public static readonly RULE_interfaceResourceDecl = 10;
public static readonly RULE_typeParameters = 11;
public static readonly RULE_typeParameter = 12;
public static readonly RULE_interfaceType = 13;
public static readonly RULE_typeArguments = 14;
public static readonly RULE_typeArgument = 15;
public static readonly RULE_typeAliasDecl = 16;
public static readonly RULE_interfaceMember = 17;
public static readonly RULE_operationMember = 18;
public static readonly RULE_valueMember = 19;
public static readonly RULE_valueMemberOperation = 20;
public static readonly RULE_relationshipMember = 21;
public static readonly RULE_relationshipOperation = 22;
public static readonly RULE_targetConstraint = 23;
public static readonly RULE_packageResourceDecl = 24;
public static readonly RULE_packageExport = 25;
public static readonly RULE_packageOperationExport = 26;
public static readonly RULE_packageFunctionExport = 27;
public static readonly RULE_packageConstructorExport = 28;
public static readonly RULE_eventClause = 29;
public static readonly RULE_operationMode = 30;
public static readonly RULE_receiverRequirement = 31;
public static readonly RULE_identifierList = 32;
public static readonly RULE_dependencyBlock = 33;
public static readonly RULE_dependencyPort = 34;
public static readonly RULE_primitiveList = 35;
public static readonly RULE_primitive = 36;
public static readonly RULE_sharedAttachmentDecl = 37;
public static readonly RULE_attachmentDecl = 38;
public static readonly RULE_stateDecl = 39;
public static readonly RULE_storagePolicy = 40;
public static readonly RULE_edgeDecl = 41;
public static readonly RULE_edgeEndpoint = 42;
public static readonly RULE_conformanceDecl = 43;
public static readonly RULE_conformanceItem = 44;
public static readonly RULE_relationshipMaterializationDecl = 45;
public static readonly RULE_operationBindingDecl = 46;
public static readonly RULE_memberOperationRef = 47;
public static readonly RULE_operationName = 48;
public static readonly RULE_operationProvider = 49;
public static readonly RULE_statePrimitive = 50;
public static readonly RULE_edgePrimitive = 51;
public static readonly RULE_dependencyBindingBlock = 52;
public static readonly RULE_dependencyBinding = 53;
public static readonly RULE_constructorBindingDecl = 54;
public static readonly RULE_valueType = 55;
public static readonly RULE_recordField = 56;
public static readonly RULE_scalarType = 57;
public static readonly RULE_cardinality = 58;
public static readonly RULE_jsonLiteral = 59;
public static readonly RULE_jsonObject = 60;
public static readonly RULE_jsonMember = 61;
public static readonly RULE_jsonArray = 62;
public static readonly RULE_identifier = 63;
public static readonly RULE_stringLiteral = 64;
public static readonly literalNames = [
null, "'workspace'", "'type'", "'object'", "'storable'", "'implements'",
"'ref'", "'fragment'", "'import'", "'external'", "'atom'", "'interface'",
"'interfaces'", "'package'", "'value'", "'relation'", "'operation'",
"'function'", "'constructor'", "'constructs'", "'input'", "'conform'",
"'as'", "'bind'", "'to'", "'private'", "'shared'", "'state'", "'edge'",
"'projection'", "'with'", "'using'", "'via'", "'materialize'", "'if'",
"'absent'", "'on'", "'policy'", "'default'", "'source'", "'repository'",
"'commit'", "'revision'", "'semantic-major'", "'on-delete'", "'retain-other'",
"'keyed'", "'public-traversal'", "'id'", "'doc'", "'mode'", "'emits'",
"'receiver'", "'requires'", "'any'", "'get'", "'set'", "'watch'",
"'start'", "'stop'", "'read'", "'write'", "'resolve'", "'connect'",
"'disconnect'", "'call'", "'watch-start'", "'watch-stop'", "'subscribe'",
"'unsubscribe'", "'optimistic-register'", "'crdt'", "'optional-one'",
"'exactly-one'", "'many-unique'", "'many'", "'ordered'", "'unit'",
"'watch-handle'", "'message'", "'atom-ref'", "'interface-ref'",
"'optional'", "'list'", "'record'", "'bool'", "'bytes'", "'double'",
"'int32'", "'int64'", "'string'", "'uint32'", "'uint64'", "'true'",
"'false'", "'null'", "'->'", "':'", "';'", "','", "'.'", "'{'",
"'}'", "'['", "']'", "'('", "')'", "'<'", "'>'", "'&'", "'='"
];
public static readonly symbolicNames = [
null, "WORKSPACE", "TYPE", "OBJECT", "STORABLE", "IMPLEMENTS", "REF",
"FRAGMENT", "IMPORT", "EXTERNAL", "ATOM", "INTERFACE", "INTERFACES",
"PACKAGE", "VALUE", "RELATION", "OPERATION", "FUNCTION", "CONSTRUCTOR",
"CONSTRUCTS", "INPUT", "CONFORM", "AS", "BIND", "TO", "PRIVATE",
"SHARED", "STATE", "EDGE", "PROJECTION", "WITH", "USING", "VIA",
"MATERIALIZE", "IF", "ABSENT", "ON", "POLICY", "DEFAULT", "SOURCE",
"REPOSITORY", "COMMIT", "REVISION", "SEMANTIC_MAJOR", "ON_DELETE",
"RETAIN_OTHER", "KEYED", "PUBLIC_TRAVERSAL", "ID", "DOC", "MODE",
"EMITS", "RECEIVER", "REQUIRES", "ANY", "GET", "SET", "WATCH", "START",
"STOP", "READ", "WRITE", "RESOLVE", "CONNECT", "DISCONNECT", "CALL",
"WATCH_START", "WATCH_STOP", "SUBSCRIBE", "UNSUBSCRIBE", "OPTIMISTIC_REGISTER",
"CRDT", "OPTIONAL_ONE", "EXACTLY_ONE", "MANY_UNIQUE", "MANY", "ORDERED",
"UNIT", "WATCH_HANDLE", "MESSAGE", "ATOM_REF", "INTERFACE_REF",
"OPTIONAL", "LIST", "RECORD", "BOOL", "BYTES", "DOUBLE", "INT32",
"INT64", "STRING", "UINT32", "UINT64", "TRUE", "FALSE", "NULL",
"ARROW", "COLON", "SEMI", "COMMA", "DOT", "LBRACE", "RBRACE", "LBRACK",
"RBRACK", "LPAREN", "RPAREN", "LT", "GT", "AMP", "EQUAL", "INTEGER",
"JSON_NUMBER", "IDENTIFIER", "STRING_LITERAL", "LINE_COMMENT", "BLOCK_COMMENT",
"WS"
];
public static readonly ruleNames = [
"document", "fragmentDecl", "sourceImportDecl", "workspaceDecl",
"workspaceItem", "resourceImportDecl", "externalAtomDecl", "externalInterfaceDecl",
"resourcePreamble", "atomDecl", "interfaceResourceDecl", "typeParameters",
"typeParameter", "interfaceType", "typeArguments", "typeArgument",
"typeAliasDecl", "interfaceMember", "operationMember", "valueMember",
"valueMemberOperation", "relationshipMember", "relationshipOperation",
"targetConstraint", "packageResourceDecl", "packageExport", "packageOperationExport",
"packageFunctionExport", "packageConstructorExport", "eventClause",
"operationMode", "receiverRequirement", "identifierList", "dependencyBlock",
"dependencyPort", "primitiveList", "primitive", "sharedAttachmentDecl",
"attachmentDecl", "stateDecl", "storagePolicy", "edgeDecl", "edgeEndpoint",
"conformanceDecl", "conformanceItem", "relationshipMaterializationDecl",
"operationBindingDecl", "memberOperationRef", "operationName", "operationProvider",
"statePrimitive", "edgePrimitive", "dependencyBindingBlock", "dependencyBinding",
"constructorBindingDecl", "valueType", "recordField", "scalarType",
"cardinality", "jsonLiteral", "jsonObject", "jsonMember", "jsonArray",
"identifier", "stringLiteral",
];
public get grammarFileName(): string { return "QuixosCapability.g4"; }
public get literalNames(): (string | null)[] { return QuixosCapabilityParser.literalNames; }
public get symbolicNames(): (string | null)[] { return QuixosCapabilityParser.symbolicNames; }
public get ruleNames(): string[] { return QuixosCapabilityParser.ruleNames; }
public get serializedATN(): number[] { return QuixosCapabilityParser._serializedATN; }
protected createFailedPredicateException(predicate?: string, message?: string): antlr.FailedPredicateException {
return new antlr.FailedPredicateException(this, predicate, message);
}
public constructor(input: antlr.TokenStream) {
super(input);
this.interpreter = new antlr.ParserATNSimulator(this, QuixosCapabilityParser._ATN, QuixosCapabilityParser.decisionsToDFA, new antlr.PredictionContextCache());
}
public document(): DocumentContext {
let localContext = new DocumentContext(this.context, this.state);
this.enterRule(localContext, 0, QuixosCapabilityParser.RULE_document);
try {
this.state = 142;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 0, this.context) ) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 130;
this.workspaceDecl();
this.state = 131;
this.match(QuixosCapabilityParser.EOF);
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 133;
this.interfaceResourceDecl();
this.state = 134;
this.match(QuixosCapabilityParser.EOF);
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 136;
this.packageResourceDecl();
this.state = 137;
this.match(QuixosCapabilityParser.EOF);
}
break;
case 4:
this.enterOuterAlt(localContext, 4);
{
this.state = 139;
this.fragmentDecl();
this.state = 140;
this.match(QuixosCapabilityParser.EOF);
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public fragmentDecl(): FragmentDeclContext {
let localContext = new FragmentDeclContext(this.context, this.state);
this.enterRule(localContext, 2, QuixosCapabilityParser.RULE_fragmentDecl);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 144;
this.match(QuixosCapabilityParser.FRAGMENT);
this.state = 145;
this.match(QuixosCapabilityParser.LBRACE);
this.state = 149;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 69469444) !== 0)) {
{
{
this.state = 146;
this.workspaceItem();
}
}
this.state = 151;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 152;
this.match(QuixosCapabilityParser.RBRACE);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public sourceImportDecl(): SourceImportDeclContext {
let localContext = new SourceImportDeclContext(this.context, this.state);
this.enterRule(localContext, 4, QuixosCapabilityParser.RULE_sourceImportDecl);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 154;
this.match(QuixosCapabilityParser.IMPORT);
this.state = 155;
this.stringLiteral();
this.state = 156;
this.match(QuixosCapabilityParser.SEMI);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public workspaceDecl(): WorkspaceDeclContext {
let localContext = new WorkspaceDeclContext(this.context, this.state);
this.enterRule(localContext, 6, QuixosCapabilityParser.RULE_workspaceDecl);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 158;
this.match(QuixosCapabilityParser.WORKSPACE);
this.state = 159;
this.identifier();
this.state = 160;
this.match(QuixosCapabilityParser.ID);
this.state = 161;
this.stringLiteral();
this.state = 162;
this.match(QuixosCapabilityParser.REVISION);
this.state = 163;
this.stringLiteral();
this.state = 164;
this.match(QuixosCapabilityParser.COMMIT);
this.state = 165;
this.stringLiteral();
this.state = 166;
this.match(QuixosCapabilityParser.LBRACE);
this.state = 170;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 69469444) !== 0)) {
{
{
this.state = 167;
this.workspaceItem();
}
}
this.state = 172;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 173;
this.match(QuixosCapabilityParser.RBRACE);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public workspaceItem(): WorkspaceItemContext {
let localContext = new WorkspaceItemContext(this.context, this.state);
this.enterRule(localContext, 8, QuixosCapabilityParser.RULE_workspaceItem);
try {
this.state = 182;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 3, this.context) ) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 175;
this.sourceImportDecl();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 176;
this.atomDecl();
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 177;
this.resourceImportDecl();
}
break;
case 4:
this.enterOuterAlt(localContext, 4);
{
this.state = 178;
this.sharedAttachmentDecl();
}
break;
case 5:
this.enterOuterAlt(localContext, 5);
{
this.state = 179;
this.conformanceDecl();
}
break;
case 6:
this.enterOuterAlt(localContext, 6);
{
this.state = 180;
this.constructorBindingDecl();
}
break;
case 7:
this.enterOuterAlt(localContext, 7);
{
this.state = 181;
this.typeAliasDecl();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public resourceImportDecl(): ResourceImportDeclContext {
let localContext = new ResourceImportDeclContext(this.context, this.state);
this.enterRule(localContext, 10, QuixosCapabilityParser.RULE_resourceImportDecl);
try {
this.state = 194;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 4, this.context) ) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 184;
this.match(QuixosCapabilityParser.IMPORT);
this.state = 185;
this.match(QuixosCapabilityParser.INTERFACE);
this.state = 186;
this.identifier();
this.state = 187;
this.match(QuixosCapabilityParser.SEMI);
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 189;
this.match(QuixosCapabilityParser.IMPORT);
this.state = 190;
this.match(QuixosCapabilityParser.PACKAGE);
this.state = 191;
this.identifier();
this.state = 192;
this.match(QuixosCapabilityParser.SEMI);
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public externalAtomDecl(): ExternalAtomDeclContext {
let localContext = new ExternalAtomDeclContext(this.context, this.state);
this.enterRule(localContext, 12, QuixosCapabilityParser.RULE_externalAtomDecl);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 196;
this.match(QuixosCapabilityParser.EXTERNAL);
this.state = 197;
this.match(QuixosCapabilityParser.ATOM);
this.state = 198;
this.identifier();
this.state = 199;
this.match(QuixosCapabilityParser.ID);
this.state = 200;
this.stringLiteral();
this.state = 201;
this.match(QuixosCapabilityParser.SEMI);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public externalInterfaceDecl(): ExternalInterfaceDeclContext {
let localContext = new ExternalInterfaceDeclContext(this.context, this.state);
this.enterRule(localContext, 14, QuixosCapabilityParser.RULE_externalInterfaceDecl);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 203;
this.match(QuixosCapabilityParser.EXTERNAL);
this.state = 204;
this.match(QuixosCapabilityParser.INTERFACE);
this.state = 205;
this.identifier();
this.state = 206;
this.match(QuixosCapabilityParser.REVISION);
this.state = 207;
this.stringLiteral();
this.state = 208;
this.match(QuixosCapabilityParser.SEMI);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public resourcePreamble(): ResourcePreambleContext {
let localContext = new ResourcePreambleContext(this.context, this.state);
this.enterRule(localContext, 16, QuixosCapabilityParser.RULE_resourcePreamble);
try {
this.state = 214;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 5, this.context) ) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 210;
this.resourceImportDecl();
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 211;
this.externalAtomDecl();
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 212;
this.externalInterfaceDecl();
}
break;
case 4:
this.enterOuterAlt(localContext, 4);
{
this.state = 213;
this.typeAliasDecl();
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public atomDecl(): AtomDeclContext {
let localContext = new AtomDeclContext(this.context, this.state);
this.enterRule(localContext, 18, QuixosCapabilityParser.RULE_atomDecl);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 216;
this.match(QuixosCapabilityParser.ATOM);
this.state = 217;
this.identifier();
this.state = 218;
this.match(QuixosCapabilityParser.ID);
this.state = 219;
this.stringLiteral();
this.state = 222;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 49) {
{
this.state = 220;
this.match(QuixosCapabilityParser.DOC);
this.state = 221;
this.stringLiteral();
}
}
this.state = 224;
this.match(QuixosCapabilityParser.SEMI);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public interfaceResourceDecl(): InterfaceResourceDeclContext {
let localContext = new InterfaceResourceDeclContext(this.context, this.state);
this.enterRule(localContext, 20, QuixosCapabilityParser.RULE_interfaceResourceDecl);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 229;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 772) !== 0)) {
{
{
this.state = 226;
this.resourcePreamble();
}
}
this.state = 231;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 232;
this.match(QuixosCapabilityParser.INTERFACE);
this.state = 233;
this.identifier();
this.state = 235;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 107) {
{
this.state = 234;
this.typeParameters();
}
}
this.state = 237;
this.match(QuixosCapabilityParser.ID);
this.state = 238;
this.stringLiteral();
this.state = 239;
this.match(QuixosCapabilityParser.REVISION);
this.state = 240;
this.stringLiteral();
this.state = 250;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 53) {
{
this.state = 241;
this.match(QuixosCapabilityParser.REQUIRES);
this.state = 242;
this.interfaceType();
this.state = 247;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 99) {
{
{
this.state = 243;
this.match(QuixosCapabilityParser.COMMA);
this.state = 244;
this.interfaceType();
}
}
this.state = 249;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
this.state = 252;
this.match(QuixosCapabilityParser.LBRACE);
this.state = 256;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 114688) !== 0)) {
{
{
this.state = 253;
this.interfaceMember();
}
}
this.state = 258;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 259;
this.match(QuixosCapabilityParser.RBRACE);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public typeParameters(): TypeParametersContext {
let localContext = new TypeParametersContext(this.context, this.state);
this.enterRule(localContext, 22, QuixosCapabilityParser.RULE_typeParameters);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 261;
this.match(QuixosCapabilityParser.LT);
this.state = 262;
this.typeParameter();
this.state = 267;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 99) {
{
{
this.state = 263;
this.match(QuixosCapabilityParser.COMMA);
this.state = 264;
this.typeParameter();
}
}
this.state = 269;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 270;
this.match(QuixosCapabilityParser.GT);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public typeParameter(): TypeParameterContext {
let localContext = new TypeParameterContext(this.context, this.state);
this.enterRule(localContext, 24, QuixosCapabilityParser.RULE_typeParameter);
let _la: number;
try {
this.state = 291;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case QuixosCapabilityParser.VALUE:
this.enterOuterAlt(localContext, 1);
{
this.state = 272;
this.match(QuixosCapabilityParser.VALUE);
this.state = 273;
this.identifier();
this.state = 276;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 97) {
{
this.state = 274;
this.match(QuixosCapabilityParser.COLON);
this.state = 275;
this.match(QuixosCapabilityParser.STORABLE);
}
}
}
break;
case QuixosCapabilityParser.OBJECT:
this.enterOuterAlt(localContext, 2);
{
this.state = 278;
this.match(QuixosCapabilityParser.OBJECT);
this.state = 279;
this.identifier();
this.state = 289;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 5) {
{
this.state = 280;
this.match(QuixosCapabilityParser.IMPLEMENTS);
this.state = 281;
this.interfaceType();
this.state = 286;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 109) {
{
{
this.state = 282;
this.match(QuixosCapabilityParser.AMP);
this.state = 283;
this.interfaceType();
}
}
this.state = 288;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public interfaceType(): InterfaceTypeContext {
let localContext = new InterfaceTypeContext(this.context, this.state);
this.enterRule(localContext, 26, QuixosCapabilityParser.RULE_interfaceType);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 293;
this.identifier();
this.state = 295;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 107) {
{
this.state = 294;
this.typeArguments();
}
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public typeArguments(): TypeArgumentsContext {
let localContext = new TypeArgumentsContext(this.context, this.state);
this.enterRule(localContext, 28, QuixosCapabilityParser.RULE_typeArguments);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 297;
this.match(QuixosCapabilityParser.LT);
this.state = 298;
this.typeArgument();
this.state = 303;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 99) {
{
{
this.state = 299;
this.match(QuixosCapabilityParser.COMMA);
this.state = 300;
this.typeArgument();
}
}
this.state = 305;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 306;
this.match(QuixosCapabilityParser.GT);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public typeArgument(): TypeArgumentContext {
let localContext = new TypeArgumentContext(this.context, this.state);
this.enterRule(localContext, 30, QuixosCapabilityParser.RULE_typeArgument);
try {
this.state = 315;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case QuixosCapabilityParser.ATOM:
this.enterOuterAlt(localContext, 1);
{
this.state = 308;
this.match(QuixosCapabilityParser.ATOM);
this.state = 309;
this.identifier();
}
break;
case QuixosCapabilityParser.INTERFACE:
this.enterOuterAlt(localContext, 2);
{
this.state = 310;
this.match(QuixosCapabilityParser.INTERFACE);
this.state = 311;
this.interfaceType();
}
break;
case QuixosCapabilityParser.OBJECT:
this.enterOuterAlt(localContext, 3);
{
this.state = 312;
this.match(QuixosCapabilityParser.OBJECT);
this.state = 313;
this.identifier();
}
break;
case QuixosCapabilityParser.REF:
case QuixosCapabilityParser.SOURCE:
case QuixosCapabilityParser.UNIT:
case QuixosCapabilityParser.WATCH_HANDLE:
case QuixosCapabilityParser.MESSAGE:
case QuixosCapabilityParser.ATOM_REF:
case QuixosCapabilityParser.INTERFACE_REF:
case QuixosCapabilityParser.OPTIONAL:
case QuixosCapabilityParser.LIST:
case QuixosCapabilityParser.RECORD:
case QuixosCapabilityParser.BOOL:
case QuixosCapabilityParser.BYTES:
case QuixosCapabilityParser.DOUBLE:
case QuixosCapabilityParser.INT32:
case QuixosCapabilityParser.INT64:
case QuixosCapabilityParser.STRING:
case QuixosCapabilityParser.UINT32:
case QuixosCapabilityParser.UINT64:
case QuixosCapabilityParser.IDENTIFIER:
this.enterOuterAlt(localContext, 4);
{
this.state = 314;
this.valueType();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public typeAliasDecl(): TypeAliasDeclContext {
let localContext = new TypeAliasDeclContext(this.context, this.state);
this.enterRule(localContext, 32, QuixosCapabilityParser.RULE_typeAliasDecl);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 317;
this.match(QuixosCapabilityParser.TYPE);
this.state = 318;
this.identifier();
this.state = 320;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 107) {
{
this.state = 319;
this.typeParameters();
}
}
this.state = 322;
this.match(QuixosCapabilityParser.EQUAL);
this.state = 323;
this.valueType();
this.state = 324;
this.match(QuixosCapabilityParser.SEMI);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public interfaceMember(): InterfaceMemberContext {
let localContext = new InterfaceMemberContext(this.context, this.state);
this.enterRule(localContext, 34, QuixosCapabilityParser.RULE_interfaceMember);
try {
this.state = 329;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case QuixosCapabilityParser.VALUE:
this.enterOuterAlt(localContext, 1);
{
this.state = 326;
this.valueMember();
}
break;
case QuixosCapabilityParser.RELATION:
this.enterOuterAlt(localContext, 2);
{
this.state = 327;
this.relationshipMember();
}
break;
case QuixosCapabilityParser.OPERATION:
this.enterOuterAlt(localContext, 3);
{
this.state = 328;
this.operationMember();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public operationMember(): OperationMemberContext {
let localContext = new OperationMemberContext(this.context, this.state);
this.enterRule(localContext, 36, QuixosCapabilityParser.RULE_operationMember);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 331;
this.match(QuixosCapabilityParser.OPERATION);
this.state = 332;
this.identifier();
this.state = 333;
this.match(QuixosCapabilityParser.ID);
this.state = 334;
this.stringLiteral();
this.state = 335;
this.match(QuixosCapabilityParser.COLON);
this.state = 336;
this.valueType();
this.state = 337;
this.match(QuixosCapabilityParser.ARROW);
this.state = 338;
this.valueType();
this.state = 339;
this.match(QuixosCapabilityParser.LBRACE);
this.state = 340;
this.match(QuixosCapabilityParser.CALL);
this.state = 341;
this.match(QuixosCapabilityParser.ID);
this.state = 342;
this.stringLiteral();
this.state = 343;
this.match(QuixosCapabilityParser.SEMI);
this.state = 344;
this.match(QuixosCapabilityParser.RBRACE);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public valueMember(): ValueMemberContext {
let localContext = new ValueMemberContext(this.context, this.state);
this.enterRule(localContext, 38, QuixosCapabilityParser.RULE_valueMember);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 346;
this.match(QuixosCapabilityParser.VALUE);
this.state = 347;
this.identifier();
this.state = 348;
this.match(QuixosCapabilityParser.ID);
this.state = 349;
this.stringLiteral();
this.state = 350;
this.match(QuixosCapabilityParser.COLON);
this.state = 351;
this.valueType();
this.state = 352;
this.match(QuixosCapabilityParser.LBRACE);
this.state = 356;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (((((_la - 55)) & ~0x1F) === 0 && ((1 << (_la - 55)) & 7) !== 0)) {
{
{
this.state = 353;
this.valueMemberOperation();
}
}
this.state = 358;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 359;
this.match(QuixosCapabilityParser.RBRACE);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public valueMemberOperation(): ValueMemberOperationContext {
let localContext = new ValueMemberOperationContext(this.context, this.state);
this.enterRule(localContext, 40, QuixosCapabilityParser.RULE_valueMemberOperation);
try {
this.state = 380;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case QuixosCapabilityParser.GET:
this.enterOuterAlt(localContext, 1);
{
this.state = 361;
this.match(QuixosCapabilityParser.GET);
this.state = 362;
this.match(QuixosCapabilityParser.ID);
this.state = 363;
this.stringLiteral();
this.state = 364;
this.match(QuixosCapabilityParser.SEMI);
}
break;
case QuixosCapabilityParser.SET:
this.enterOuterAlt(localContext, 2);
{
this.state = 366;
this.match(QuixosCapabilityParser.SET);
this.state = 367;
this.match(QuixosCapabilityParser.ID);
this.state = 368;
this.stringLiteral();
this.state = 369;
this.match(QuixosCapabilityParser.SEMI);
}
break;
case QuixosCapabilityParser.WATCH:
this.enterOuterAlt(localContext, 3);
{
this.state = 371;
this.match(QuixosCapabilityParser.WATCH);
this.state = 372;
this.match(QuixosCapabilityParser.START);
this.state = 373;
this.match(QuixosCapabilityParser.ID);
this.state = 374;
this.stringLiteral();
this.state = 375;
this.match(QuixosCapabilityParser.STOP);
this.state = 376;
this.match(QuixosCapabilityParser.ID);
this.state = 377;
this.stringLiteral();
this.state = 378;
this.match(QuixosCapabilityParser.SEMI);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public relationshipMember(): RelationshipMemberContext {
let localContext = new RelationshipMemberContext(this.context, this.state);
this.enterRule(localContext, 42, QuixosCapabilityParser.RULE_relationshipMember);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 382;
this.match(QuixosCapabilityParser.RELATION);
this.state = 383;
this.identifier();
this.state = 384;
this.match(QuixosCapabilityParser.ID);
this.state = 385;
this.stringLiteral();
this.state = 386;
this.match(QuixosCapabilityParser.COLON);
this.state = 387;
this.cardinality();
this.state = 388;
this.targetConstraint();
this.state = 390;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 76) {
{
this.state = 389;
this.match(QuixosCapabilityParser.ORDERED);
}
}
this.state = 392;
this.match(QuixosCapabilityParser.LBRACE);
this.state = 396;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (((((_la - 57)) & ~0x1F) === 0 && ((1 << (_la - 57)) & 225) !== 0)) {
{
{
this.state = 393;
this.relationshipOperation();
}
}
this.state = 398;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 399;
this.match(QuixosCapabilityParser.RBRACE);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public relationshipOperation(): RelationshipOperationContext {
let localContext = new RelationshipOperationContext(this.context, this.state);
this.enterRule(localContext, 44, QuixosCapabilityParser.RULE_relationshipOperation);
try {
this.state = 425;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case QuixosCapabilityParser.RESOLVE:
this.enterOuterAlt(localContext, 1);
{
this.state = 401;
this.match(QuixosCapabilityParser.RESOLVE);
this.state = 402;
this.match(QuixosCapabilityParser.ID);
this.state = 403;
this.stringLiteral();
this.state = 404;
this.match(QuixosCapabilityParser.SEMI);
}
break;
case QuixosCapabilityParser.CONNECT:
this.enterOuterAlt(localContext, 2);
{
this.state = 406;
this.match(QuixosCapabilityParser.CONNECT);
this.state = 407;
this.match(QuixosCapabilityParser.ID);
this.state = 408;
this.stringLiteral();
this.state = 409;
this.match(QuixosCapabilityParser.SEMI);
}
break;
case QuixosCapabilityParser.DISCONNECT:
this.enterOuterAlt(localContext, 3);
{
this.state = 411;
this.match(QuixosCapabilityParser.DISCONNECT);
this.state = 412;
this.match(QuixosCapabilityParser.ID);
this.state = 413;
this.stringLiteral();
this.state = 414;
this.match(QuixosCapabilityParser.SEMI);
}
break;
case QuixosCapabilityParser.WATCH:
this.enterOuterAlt(localContext, 4);
{
this.state = 416;
this.match(QuixosCapabilityParser.WATCH);
this.state = 417;
this.match(QuixosCapabilityParser.START);
this.state = 418;
this.match(QuixosCapabilityParser.ID);
this.state = 419;
this.stringLiteral();
this.state = 420;
this.match(QuixosCapabilityParser.STOP);
this.state = 421;
this.match(QuixosCapabilityParser.ID);
this.state = 422;
this.stringLiteral();
this.state = 423;
this.match(QuixosCapabilityParser.SEMI);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public targetConstraint(): TargetConstraintContext {
let localContext = new TargetConstraintContext(this.context, this.state);
this.enterRule(localContext, 46, QuixosCapabilityParser.RULE_targetConstraint);
let _la: number;
try {
this.state = 436;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case QuixosCapabilityParser.ATOM:
this.enterOuterAlt(localContext, 1);
{
this.state = 427;
this.match(QuixosCapabilityParser.ATOM);
this.state = 428;
this.identifier();
}
break;
case QuixosCapabilityParser.INTERFACE:
this.enterOuterAlt(localContext, 2);
{
this.state = 429;
this.match(QuixosCapabilityParser.INTERFACE);
this.state = 430;
this.identifier();
this.state = 432;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 107) {
{
this.state = 431;
this.typeArguments();
}
}
}
break;
case QuixosCapabilityParser.OBJECT:
this.enterOuterAlt(localContext, 3);
{
this.state = 434;
this.match(QuixosCapabilityParser.OBJECT);
this.state = 435;
this.identifier();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public packageResourceDecl(): PackageResourceDeclContext {
let localContext = new PackageResourceDeclContext(this.context, this.state);
this.enterRule(localContext, 48, QuixosCapabilityParser.RULE_packageResourceDecl);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 441;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 772) !== 0)) {
{
{
this.state = 438;
this.resourcePreamble();
}
}
this.state = 443;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 444;
this.match(QuixosCapabilityParser.PACKAGE);
this.state = 445;
this.identifier();
this.state = 446;
this.match(QuixosCapabilityParser.ID);
this.state = 447;
this.stringLiteral();
this.state = 448;
this.match(QuixosCapabilityParser.REVISION);
this.state = 449;
this.stringLiteral();
this.state = 452;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 43) {
{
this.state = 450;
this.match(QuixosCapabilityParser.SEMANTIC_MAJOR);
this.state = 451;
this.match(QuixosCapabilityParser.INTEGER);
}
}
this.state = 454;
this.match(QuixosCapabilityParser.LBRACE);
this.state = 458;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 458752) !== 0)) {
{
{
this.state = 455;
this.packageExport();
}
}
this.state = 460;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 461;
this.match(QuixosCapabilityParser.RBRACE);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public packageExport(): PackageExportContext {
let localContext = new PackageExportContext(this.context, this.state);
this.enterRule(localContext, 50, QuixosCapabilityParser.RULE_packageExport);
try {
this.state = 466;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case QuixosCapabilityParser.OPERATION:
this.enterOuterAlt(localContext, 1);
{
this.state = 463;
this.packageOperationExport();
}
break;
case QuixosCapabilityParser.FUNCTION:
this.enterOuterAlt(localContext, 2);
{
this.state = 464;
this.packageFunctionExport();
}
break;
case QuixosCapabilityParser.CONSTRUCTOR:
this.enterOuterAlt(localContext, 3);
{
this.state = 465;
this.packageConstructorExport();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public packageOperationExport(): PackageOperationExportContext {
let localContext = new PackageOperationExportContext(this.context, this.state);
this.enterRule(localContext, 52, QuixosCapabilityParser.RULE_packageOperationExport);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 468;
this.match(QuixosCapabilityParser.OPERATION);
this.state = 469;
this.identifier();
this.state = 471;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 107) {
{
this.state = 470;
this.typeParameters();
}
}
this.state = 473;
this.match(QuixosCapabilityParser.ID);
this.state = 474;
this.stringLiteral();
this.state = 475;
this.match(QuixosCapabilityParser.COLON);
this.state = 476;
this.valueType();
this.state = 477;
this.match(QuixosCapabilityParser.ARROW);
this.state = 478;
this.valueType();
this.state = 479;
this.match(QuixosCapabilityParser.MODE);
this.state = 480;
this.operationMode();
this.state = 482;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 51) {
{
this.state = 481;
this.eventClause();
}
}
this.state = 484;
this.match(QuixosCapabilityParser.RECEIVER);
this.state = 485;
this.receiverRequirement();
this.state = 487;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 53) {
{
this.state = 486;
this.dependencyBlock();
}
}
this.state = 489;
this.match(QuixosCapabilityParser.SEMI);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public packageFunctionExport(): PackageFunctionExportContext {
let localContext = new PackageFunctionExportContext(this.context, this.state);
this.enterRule(localContext, 54, QuixosCapabilityParser.RULE_packageFunctionExport);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 491;
this.match(QuixosCapabilityParser.FUNCTION);
this.state = 492;
this.identifier();
this.state = 494;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 107) {
{
this.state = 493;
this.typeParameters();
}
}
this.state = 496;
this.match(QuixosCapabilityParser.ID);
this.state = 497;
this.stringLiteral();
this.state = 498;
this.match(QuixosCapabilityParser.COLON);
this.state = 499;
this.valueType();
this.state = 500;
this.match(QuixosCapabilityParser.ARROW);
this.state = 501;
this.valueType();
this.state = 503;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 53) {
{
this.state = 502;
this.dependencyBlock();
}
}
this.state = 505;
this.match(QuixosCapabilityParser.SEMI);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public packageConstructorExport(): PackageConstructorExportContext {
let localContext = new PackageConstructorExportContext(this.context, this.state);
this.enterRule(localContext, 56, QuixosCapabilityParser.RULE_packageConstructorExport);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 507;
this.match(QuixosCapabilityParser.CONSTRUCTOR);
this.state = 508;
this.identifier();
this.state = 509;
this.match(QuixosCapabilityParser.ID);
this.state = 510;
this.stringLiteral();
this.state = 511;
this.match(QuixosCapabilityParser.CONSTRUCTS);
this.state = 512;
this.identifier();
this.state = 513;
this.match(QuixosCapabilityParser.COLON);
this.state = 514;
this.valueType();
this.state = 516;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 53) {
{
this.state = 515;
this.dependencyBlock();
}
}
this.state = 518;
this.match(QuixosCapabilityParser.SEMI);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public eventClause(): EventClauseContext {
let localContext = new EventClauseContext(this.context, this.state);
this.enterRule(localContext, 58, QuixosCapabilityParser.RULE_eventClause);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 520;
this.match(QuixosCapabilityParser.EMITS);
this.state = 521;
this.valueType();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public operationMode(): OperationModeContext {
let localContext = new OperationModeContext(this.context, this.state);
this.enterRule(localContext, 60, QuixosCapabilityParser.RULE_operationMode);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 523;
_la = this.tokenStream.LA(1);
if(!(((((_la - 65)) & ~0x1F) === 0 && ((1 << (_la - 65)) & 31) !== 0))) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public receiverRequirement(): ReceiverRequirementContext {
let localContext = new ReceiverRequirementContext(this.context, this.state);
this.enterRule(localContext, 62, QuixosCapabilityParser.RULE_receiverRequirement);
let _la: number;
try {
this.state = 543;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case QuixosCapabilityParser.ANY:
this.enterOuterAlt(localContext, 1);
{
this.state = 525;
this.match(QuixosCapabilityParser.ANY);
}
break;
case QuixosCapabilityParser.ATOM:
this.enterOuterAlt(localContext, 2);
{
this.state = 526;
this.match(QuixosCapabilityParser.ATOM);
this.state = 527;
this.identifier();
}
break;
case QuixosCapabilityParser.OBJECT:
this.enterOuterAlt(localContext, 3);
{
this.state = 528;
this.match(QuixosCapabilityParser.OBJECT);
this.state = 529;
this.identifier();
}
break;
case QuixosCapabilityParser.INTERFACES:
this.enterOuterAlt(localContext, 4);
{
this.state = 530;
this.match(QuixosCapabilityParser.INTERFACES);
this.state = 531;
this.match(QuixosCapabilityParser.LBRACK);
this.state = 540;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 39 || _la === 113) {
{
this.state = 532;
this.interfaceType();
this.state = 537;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 99) {
{
{
this.state = 533;
this.match(QuixosCapabilityParser.COMMA);
this.state = 534;
this.interfaceType();
}
}
this.state = 539;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
this.state = 542;
this.match(QuixosCapabilityParser.RBRACK);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public identifierList(): IdentifierListContext {
let localContext = new IdentifierListContext(this.context, this.state);
this.enterRule(localContext, 64, QuixosCapabilityParser.RULE_identifierList);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 545;
this.identifier();
this.state = 550;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 99) {
{
{
this.state = 546;
this.match(QuixosCapabilityParser.COMMA);
this.state = 547;
this.identifier();
}
}
this.state = 552;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public dependencyBlock(): DependencyBlockContext {
let localContext = new DependencyBlockContext(this.context, this.state);
this.enterRule(localContext, 66, QuixosCapabilityParser.RULE_dependencyBlock);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 553;
this.match(QuixosCapabilityParser.REQUIRES);
this.state = 554;
this.match(QuixosCapabilityParser.LBRACE);
this.state = 558;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 402917376) !== 0)) {
{
{
this.state = 555;
this.dependencyPort();
}
}
this.state = 560;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 561;
this.match(QuixosCapabilityParser.RBRACE);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public dependencyPort(): DependencyPortContext {
let localContext = new DependencyPortContext(this.context, this.state);
this.enterRule(localContext, 68, QuixosCapabilityParser.RULE_dependencyPort);
let _la: number;
try {
this.state = 605;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case QuixosCapabilityParser.STATE:
this.enterOuterAlt(localContext, 1);
{
this.state = 563;
this.match(QuixosCapabilityParser.STATE);
this.state = 564;
this.identifier();
this.state = 565;
this.match(QuixosCapabilityParser.ID);
this.state = 566;
this.stringLiteral();
this.state = 567;
this.match(QuixosCapabilityParser.COLON);
this.state = 568;
this.valueType();
this.state = 569;
this.primitiveList();
this.state = 570;
this.match(QuixosCapabilityParser.SEMI);
}
break;
case QuixosCapabilityParser.EDGE:
this.enterOuterAlt(localContext, 2);
{
this.state = 572;
this.match(QuixosCapabilityParser.EDGE);
this.state = 573;
this.identifier();
this.state = 574;
this.match(QuixosCapabilityParser.ID);
this.state = 575;
this.stringLiteral();
this.state = 576;
this.match(QuixosCapabilityParser.COLON);
this.state = 577;
this.cardinality();
this.state = 578;
this.targetConstraint();
this.state = 579;
this.primitiveList();
this.state = 580;
this.match(QuixosCapabilityParser.SEMI);
}
break;
case QuixosCapabilityParser.INTERFACE:
this.enterOuterAlt(localContext, 3);
{
this.state = 582;
this.match(QuixosCapabilityParser.INTERFACE);
this.state = 583;
this.identifier();
this.state = 584;
this.match(QuixosCapabilityParser.ID);
this.state = 585;
this.stringLiteral();
this.state = 586;
this.match(QuixosCapabilityParser.COLON);
this.state = 587;
this.identifier();
this.state = 589;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 107) {
{
this.state = 588;
this.typeArguments();
}
}
this.state = 591;
this.match(QuixosCapabilityParser.SEMI);
}
break;
case QuixosCapabilityParser.CONSTRUCTOR:
this.enterOuterAlt(localContext, 4);
{
this.state = 593;
this.match(QuixosCapabilityParser.CONSTRUCTOR);
this.state = 594;
this.identifier();
this.state = 595;
this.match(QuixosCapabilityParser.ID);
this.state = 596;
this.stringLiteral();
this.state = 597;
this.match(QuixosCapabilityParser.COLON);
this.state = 598;
this.identifier();
this.state = 601;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 20) {
{
this.state = 599;
this.match(QuixosCapabilityParser.INPUT);
this.state = 600;
this.valueType();
}
}
this.state = 603;
this.match(QuixosCapabilityParser.SEMI);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public primitiveList(): PrimitiveListContext {
let localContext = new PrimitiveListContext(this.context, this.state);
this.enterRule(localContext, 70, QuixosCapabilityParser.RULE_primitiveList);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 607;
this.match(QuixosCapabilityParser.LBRACK);
this.state = 608;
this.primitive();
this.state = 613;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 99) {
{
{
this.state = 609;
this.match(QuixosCapabilityParser.COMMA);
this.state = 610;
this.primitive();
}
}
this.state = 615;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 616;
this.match(QuixosCapabilityParser.RBRACK);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public primitive(): PrimitiveContext {
let localContext = new PrimitiveContext(this.context, this.state);
this.enterRule(localContext, 72, QuixosCapabilityParser.RULE_primitive);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 618;
_la = this.tokenStream.LA(1);
if(!(((((_la - 60)) & ~0x1F) === 0 && ((1 << (_la - 60)) & 223) !== 0))) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public sharedAttachmentDecl(): SharedAttachmentDeclContext {
let localContext = new SharedAttachmentDeclContext(this.context, this.state);
this.enterRule(localContext, 74, QuixosCapabilityParser.RULE_sharedAttachmentDecl);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 620;
this.match(QuixosCapabilityParser.SHARED);
this.state = 621;
this.attachmentDecl();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public attachmentDecl(): AttachmentDeclContext {
let localContext = new AttachmentDeclContext(this.context, this.state);
this.enterRule(localContext, 76, QuixosCapabilityParser.RULE_attachmentDecl);
try {
this.state = 625;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case QuixosCapabilityParser.STATE:
this.enterOuterAlt(localContext, 1);
{
this.state = 623;
this.stateDecl();
}
break;
case QuixosCapabilityParser.EDGE:
this.enterOuterAlt(localContext, 2);
{
this.state = 624;
this.edgeDecl();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public stateDecl(): StateDeclContext {
let localContext = new StateDeclContext(this.context, this.state);
this.enterRule(localContext, 78, QuixosCapabilityParser.RULE_stateDecl);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 627;
this.match(QuixosCapabilityParser.STATE);
this.state = 628;
this.identifier();
this.state = 629;
this.match(QuixosCapabilityParser.ID);
this.state = 630;
this.stringLiteral();
this.state = 631;
this.match(QuixosCapabilityParser.ON);
this.state = 632;
this.identifier();
this.state = 633;
this.match(QuixosCapabilityParser.COLON);
this.state = 634;
this.valueType();
this.state = 635;
this.match(QuixosCapabilityParser.POLICY);
this.state = 636;
this.storagePolicy();
this.state = 639;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 38) {
{
this.state = 637;
this.match(QuixosCapabilityParser.DEFAULT);
this.state = 638;
this.jsonLiteral();
}
}
this.state = 641;
this.match(QuixosCapabilityParser.SEMI);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public storagePolicy(): StoragePolicyContext {
let localContext = new StoragePolicyContext(this.context, this.state);
this.enterRule(localContext, 80, QuixosCapabilityParser.RULE_storagePolicy);
try {
this.state = 649;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case QuixosCapabilityParser.OPTIMISTIC_REGISTER:
this.enterOuterAlt(localContext, 1);
{
this.state = 643;
this.match(QuixosCapabilityParser.OPTIMISTIC_REGISTER);
}
break;
case QuixosCapabilityParser.CRDT:
this.enterOuterAlt(localContext, 2);
{
this.state = 644;
this.match(QuixosCapabilityParser.CRDT);
this.state = 645;
this.match(QuixosCapabilityParser.LPAREN);
this.state = 646;
this.valueType();
this.state = 647;
this.match(QuixosCapabilityParser.RPAREN);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public edgeDecl(): EdgeDeclContext {
let localContext = new EdgeDeclContext(this.context, this.state);
this.enterRule(localContext, 82, QuixosCapabilityParser.RULE_edgeDecl);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 651;
this.match(QuixosCapabilityParser.EDGE);
this.state = 652;
this.identifier();
this.state = 653;
this.match(QuixosCapabilityParser.ID);
this.state = 654;
this.stringLiteral();
this.state = 655;
this.match(QuixosCapabilityParser.LBRACE);
this.state = 656;
this.edgeEndpoint();
this.state = 657;
this.edgeEndpoint();
this.state = 658;
this.match(QuixosCapabilityParser.RBRACE);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public edgeEndpoint(): EdgeEndpointContext {
let localContext = new EdgeEndpointContext(this.context, this.state);
this.enterRule(localContext, 84, QuixosCapabilityParser.RULE_edgeEndpoint);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 660;
this.targetConstraint();
this.state = 661;
this.match(QuixosCapabilityParser.PROJECTION);
this.state = 662;
this.identifier();
this.state = 663;
this.match(QuixosCapabilityParser.ID);
this.state = 664;
this.stringLiteral();
this.state = 665;
this.cardinality();
this.state = 667;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 76) {
{
this.state = 666;
this.match(QuixosCapabilityParser.ORDERED);
}
}
this.state = 671;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 44) {
{
this.state = 669;
this.match(QuixosCapabilityParser.ON_DELETE);
this.state = 670;
this.stringLiteral();
}
}
this.state = 674;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 45) {
{
this.state = 673;
this.match(QuixosCapabilityParser.RETAIN_OTHER);
}
}
this.state = 678;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 46) {
{
this.state = 676;
this.match(QuixosCapabilityParser.KEYED);
this.state = 677;
this.stringLiteral();
}
}
this.state = 681;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 47) {
{
this.state = 680;
this.match(QuixosCapabilityParser.PUBLIC_TRAVERSAL);
}
}
this.state = 683;
this.match(QuixosCapabilityParser.SEMI);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public conformanceDecl(): ConformanceDeclContext {
let localContext = new ConformanceDeclContext(this.context, this.state);
this.enterRule(localContext, 86, QuixosCapabilityParser.RULE_conformanceDecl);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 685;
this.match(QuixosCapabilityParser.CONFORM);
this.state = 686;
this.identifier();
this.state = 687;
this.match(QuixosCapabilityParser.AS);
this.state = 688;
this.identifier();
this.state = 690;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 107) {
{
this.state = 689;
this.typeArguments();
}
}
this.state = 694;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 48) {
{
this.state = 692;
this.match(QuixosCapabilityParser.ID);
this.state = 693;
this.stringLiteral();
}
}
this.state = 698;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 43) {
{
this.state = 696;
this.match(QuixosCapabilityParser.SEMANTIC_MAJOR);
this.state = 697;
this.match(QuixosCapabilityParser.INTEGER);
}
}
this.state = 700;
this.match(QuixosCapabilityParser.LBRACE);
this.state = 704;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (((((_la - 23)) & ~0x1F) === 0 && ((1 << (_la - 23)) & 1029) !== 0)) {
{
{
this.state = 701;
this.conformanceItem();
}
}
this.state = 706;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 707;
this.match(QuixosCapabilityParser.RBRACE);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public conformanceItem(): ConformanceItemContext {
let localContext = new ConformanceItemContext(this.context, this.state);
this.enterRule(localContext, 88, QuixosCapabilityParser.RULE_conformanceItem);
try {
this.state = 713;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case QuixosCapabilityParser.PRIVATE:
this.enterOuterAlt(localContext, 1);
{
this.state = 709;
this.match(QuixosCapabilityParser.PRIVATE);
this.state = 710;
this.attachmentDecl();
}
break;
case QuixosCapabilityParser.BIND:
this.enterOuterAlt(localContext, 2);
{
this.state = 711;
this.operationBindingDecl();
}
break;
case QuixosCapabilityParser.MATERIALIZE:
this.enterOuterAlt(localContext, 3);
{
this.state = 712;
this.relationshipMaterializationDecl();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public relationshipMaterializationDecl(): RelationshipMaterializationDeclContext {
let localContext = new RelationshipMaterializationDeclContext(this.context, this.state);
this.enterRule(localContext, 90, QuixosCapabilityParser.RULE_relationshipMaterializationDecl);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 715;
this.match(QuixosCapabilityParser.MATERIALIZE);
this.state = 716;
this.identifier();
this.state = 717;
this.match(QuixosCapabilityParser.IF);
this.state = 718;
this.match(QuixosCapabilityParser.ABSENT);
this.state = 719;
this.match(QuixosCapabilityParser.USING);
this.state = 720;
this.match(QuixosCapabilityParser.CONSTRUCTOR);
this.state = 721;
this.identifier();
this.state = 722;
this.match(QuixosCapabilityParser.VIA);
this.state = 723;
this.match(QuixosCapabilityParser.EDGE);
this.state = 724;
this.identifier();
this.state = 725;
this.match(QuixosCapabilityParser.DOT);
this.state = 726;
this.identifier();
this.state = 727;
this.match(QuixosCapabilityParser.SEMI);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public operationBindingDecl(): OperationBindingDeclContext {
let localContext = new OperationBindingDeclContext(this.context, this.state);
this.enterRule(localContext, 92, QuixosCapabilityParser.RULE_operationBindingDecl);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 729;
this.match(QuixosCapabilityParser.BIND);
this.state = 730;
this.memberOperationRef();
this.state = 731;
this.match(QuixosCapabilityParser.TO);
this.state = 732;
this.operationProvider();
this.state = 733;
this.match(QuixosCapabilityParser.SEMI);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public memberOperationRef(): MemberOperationRefContext {
let localContext = new MemberOperationRefContext(this.context, this.state);
this.enterRule(localContext, 94, QuixosCapabilityParser.RULE_memberOperationRef);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 735;
this.identifier();
this.state = 736;
this.match(QuixosCapabilityParser.DOT);
this.state = 737;
this.operationName();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public operationName(): OperationNameContext {
let localContext = new OperationNameContext(this.context, this.state);
this.enterRule(localContext, 96, QuixosCapabilityParser.RULE_operationName);
try {
this.state = 750;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case QuixosCapabilityParser.SOURCE:
case QuixosCapabilityParser.IDENTIFIER:
this.enterOuterAlt(localContext, 1);
{
this.state = 739;
this.identifier();
}
break;
case QuixosCapabilityParser.CALL:
this.enterOuterAlt(localContext, 2);
{
this.state = 740;
this.match(QuixosCapabilityParser.CALL);
}
break;
case QuixosCapabilityParser.GET:
this.enterOuterAlt(localContext, 3);
{
this.state = 741;
this.match(QuixosCapabilityParser.GET);
}
break;
case QuixosCapabilityParser.SET:
this.enterOuterAlt(localContext, 4);
{
this.state = 742;
this.match(QuixosCapabilityParser.SET);
}
break;
case QuixosCapabilityParser.RESOLVE:
this.enterOuterAlt(localContext, 5);
{
this.state = 743;
this.match(QuixosCapabilityParser.RESOLVE);
}
break;
case QuixosCapabilityParser.CONNECT:
this.enterOuterAlt(localContext, 6);
{
this.state = 744;
this.match(QuixosCapabilityParser.CONNECT);
}
break;
case QuixosCapabilityParser.DISCONNECT:
this.enterOuterAlt(localContext, 7);
{
this.state = 745;
this.match(QuixosCapabilityParser.DISCONNECT);
}
break;
case QuixosCapabilityParser.WATCH_START:
this.enterOuterAlt(localContext, 8);
{
this.state = 746;
this.match(QuixosCapabilityParser.WATCH_START);
}
break;
case QuixosCapabilityParser.WATCH_STOP:
this.enterOuterAlt(localContext, 9);
{
this.state = 747;
this.match(QuixosCapabilityParser.WATCH_STOP);
}
break;
case QuixosCapabilityParser.SUBSCRIBE:
this.enterOuterAlt(localContext, 10);
{
this.state = 748;
this.match(QuixosCapabilityParser.SUBSCRIBE);
}
break;
case QuixosCapabilityParser.UNSUBSCRIBE:
this.enterOuterAlt(localContext, 11);
{
this.state = 749;
this.match(QuixosCapabilityParser.UNSUBSCRIBE);
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public operationProvider(): OperationProviderContext {
let localContext = new OperationProviderContext(this.context, this.state);
this.enterRule(localContext, 98, QuixosCapabilityParser.RULE_operationProvider);
let _la: number;
try {
this.state = 774;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case QuixosCapabilityParser.STATE:
this.enterOuterAlt(localContext, 1);
{
this.state = 752;
this.match(QuixosCapabilityParser.STATE);
this.state = 753;
this.identifier();
this.state = 754;
this.match(QuixosCapabilityParser.DOT);
this.state = 755;
this.statePrimitive();
}
break;
case QuixosCapabilityParser.EDGE:
this.enterOuterAlt(localContext, 2);
{
this.state = 757;
this.match(QuixosCapabilityParser.EDGE);
this.state = 758;
this.identifier();
this.state = 759;
this.match(QuixosCapabilityParser.DOT);
this.state = 760;
this.identifier();
this.state = 761;
this.match(QuixosCapabilityParser.DOT);
this.state = 762;
this.edgePrimitive();
}
break;
case QuixosCapabilityParser.PACKAGE:
this.enterOuterAlt(localContext, 3);
{
this.state = 764;
this.match(QuixosCapabilityParser.PACKAGE);
this.state = 765;
this.identifier();
this.state = 766;
this.match(QuixosCapabilityParser.DOT);
this.state = 767;
this.identifier();
this.state = 769;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 107) {
{
this.state = 768;
this.typeArguments();
}
}
this.state = 772;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 30) {
{
this.state = 771;
this.dependencyBindingBlock();
}
}
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public statePrimitive(): StatePrimitiveContext {
let localContext = new StatePrimitiveContext(this.context, this.state);
this.enterRule(localContext, 100, QuixosCapabilityParser.RULE_statePrimitive);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 776;
_la = this.tokenStream.LA(1);
if(!(((((_la - 60)) & ~0x1F) === 0 && ((1 << (_la - 60)) & 195) !== 0))) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public edgePrimitive(): EdgePrimitiveContext {
let localContext = new EdgePrimitiveContext(this.context, this.state);
this.enterRule(localContext, 102, QuixosCapabilityParser.RULE_edgePrimitive);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 778;
_la = this.tokenStream.LA(1);
if(!(((((_la - 62)) & ~0x1F) === 0 && ((1 << (_la - 62)) & 55) !== 0))) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public dependencyBindingBlock(): DependencyBindingBlockContext {
let localContext = new DependencyBindingBlockContext(this.context, this.state);
this.enterRule(localContext, 104, QuixosCapabilityParser.RULE_dependencyBindingBlock);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 780;
this.match(QuixosCapabilityParser.WITH);
this.state = 781;
this.match(QuixosCapabilityParser.LBRACE);
this.state = 785;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 39 || _la === 113) {
{
{
this.state = 782;
this.dependencyBinding();
}
}
this.state = 787;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 788;
this.match(QuixosCapabilityParser.RBRACE);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public dependencyBinding(): DependencyBindingContext {
let localContext = new DependencyBindingContext(this.context, this.state);
this.enterRule(localContext, 106, QuixosCapabilityParser.RULE_dependencyBinding);
let _la: number;
try {
this.state = 843;
this.errorHandler.sync(this);
switch (this.interpreter.adaptivePredict(this.tokenStream, 70, this.context) ) {
case 1:
this.enterOuterAlt(localContext, 1);
{
this.state = 790;
this.identifier();
this.state = 791;
this.match(QuixosCapabilityParser.TO);
this.state = 792;
this.match(QuixosCapabilityParser.STATE);
this.state = 793;
this.identifier();
this.state = 800;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 32) {
{
this.state = 794;
this.match(QuixosCapabilityParser.VIA);
this.state = 795;
this.match(QuixosCapabilityParser.EDGE);
this.state = 796;
this.identifier();
this.state = 797;
this.match(QuixosCapabilityParser.DOT);
this.state = 798;
this.identifier();
}
}
this.state = 802;
this.match(QuixosCapabilityParser.SEMI);
}
break;
case 2:
this.enterOuterAlt(localContext, 2);
{
this.state = 804;
this.identifier();
this.state = 805;
this.match(QuixosCapabilityParser.TO);
this.state = 806;
this.match(QuixosCapabilityParser.EDGE);
this.state = 807;
this.identifier();
this.state = 808;
this.match(QuixosCapabilityParser.DOT);
this.state = 809;
this.identifier();
this.state = 816;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 32) {
{
this.state = 810;
this.match(QuixosCapabilityParser.VIA);
this.state = 811;
this.match(QuixosCapabilityParser.EDGE);
this.state = 812;
this.identifier();
this.state = 813;
this.match(QuixosCapabilityParser.DOT);
this.state = 814;
this.identifier();
}
}
this.state = 818;
this.match(QuixosCapabilityParser.SEMI);
}
break;
case 3:
this.enterOuterAlt(localContext, 3);
{
this.state = 820;
this.identifier();
this.state = 821;
this.match(QuixosCapabilityParser.TO);
this.state = 822;
this.match(QuixosCapabilityParser.INTERFACE);
this.state = 823;
this.identifier();
this.state = 825;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 107) {
{
this.state = 824;
this.typeArguments();
}
}
this.state = 833;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 32) {
{
this.state = 827;
this.match(QuixosCapabilityParser.VIA);
this.state = 828;
this.match(QuixosCapabilityParser.EDGE);
this.state = 829;
this.identifier();
this.state = 830;
this.match(QuixosCapabilityParser.DOT);
this.state = 831;
this.identifier();
}
}
this.state = 835;
this.match(QuixosCapabilityParser.SEMI);
}
break;
case 4:
this.enterOuterAlt(localContext, 4);
{
this.state = 837;
this.identifier();
this.state = 838;
this.match(QuixosCapabilityParser.TO);
this.state = 839;
this.match(QuixosCapabilityParser.CONSTRUCTOR);
this.state = 840;
this.identifier();
this.state = 841;
this.match(QuixosCapabilityParser.SEMI);
}
break;
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public constructorBindingDecl(): ConstructorBindingDeclContext {
let localContext = new ConstructorBindingDeclContext(this.context, this.state);
this.enterRule(localContext, 108, QuixosCapabilityParser.RULE_constructorBindingDecl);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 845;
this.match(QuixosCapabilityParser.CONSTRUCTOR);
this.state = 846;
this.identifier();
this.state = 847;
this.match(QuixosCapabilityParser.TO);
this.state = 848;
this.identifier();
this.state = 849;
this.match(QuixosCapabilityParser.DOT);
this.state = 850;
this.identifier();
this.state = 852;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 30) {
{
this.state = 851;
this.dependencyBindingBlock();
}
}
this.state = 854;
this.match(QuixosCapabilityParser.SEMI);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public valueType(): ValueTypeContext {
let localContext = new ValueTypeContext(this.context, this.state);
this.enterRule(localContext, 110, QuixosCapabilityParser.RULE_valueType);
let _la: number;
try {
this.state = 902;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case QuixosCapabilityParser.BOOL:
case QuixosCapabilityParser.BYTES:
case QuixosCapabilityParser.DOUBLE:
case QuixosCapabilityParser.INT32:
case QuixosCapabilityParser.INT64:
case QuixosCapabilityParser.STRING:
case QuixosCapabilityParser.UINT32:
case QuixosCapabilityParser.UINT64:
this.enterOuterAlt(localContext, 1);
{
this.state = 856;
this.scalarType();
}
break;
case QuixosCapabilityParser.UNIT:
this.enterOuterAlt(localContext, 2);
{
this.state = 857;
this.match(QuixosCapabilityParser.UNIT);
}
break;
case QuixosCapabilityParser.WATCH_HANDLE:
this.enterOuterAlt(localContext, 3);
{
this.state = 858;
this.match(QuixosCapabilityParser.WATCH_HANDLE);
}
break;
case QuixosCapabilityParser.MESSAGE:
this.enterOuterAlt(localContext, 4);
{
this.state = 859;
this.match(QuixosCapabilityParser.MESSAGE);
this.state = 860;
this.stringLiteral();
}
break;
case QuixosCapabilityParser.ATOM_REF:
this.enterOuterAlt(localContext, 5);
{
this.state = 861;
this.match(QuixosCapabilityParser.ATOM_REF);
this.state = 862;
this.match(QuixosCapabilityParser.LT);
this.state = 863;
this.identifier();
this.state = 864;
this.match(QuixosCapabilityParser.GT);
}
break;
case QuixosCapabilityParser.INTERFACE_REF:
this.enterOuterAlt(localContext, 6);
{
this.state = 866;
this.match(QuixosCapabilityParser.INTERFACE_REF);
this.state = 867;
this.match(QuixosCapabilityParser.LT);
this.state = 868;
this.identifier();
this.state = 870;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 107) {
{
this.state = 869;
this.typeArguments();
}
}
this.state = 872;
this.match(QuixosCapabilityParser.GT);
}
break;
case QuixosCapabilityParser.REF:
this.enterOuterAlt(localContext, 7);
{
this.state = 874;
this.match(QuixosCapabilityParser.REF);
this.state = 875;
this.match(QuixosCapabilityParser.LT);
this.state = 876;
this.identifier();
this.state = 877;
this.match(QuixosCapabilityParser.GT);
}
break;
case QuixosCapabilityParser.OPTIONAL:
this.enterOuterAlt(localContext, 8);
{
this.state = 879;
this.match(QuixosCapabilityParser.OPTIONAL);
this.state = 880;
this.match(QuixosCapabilityParser.LT);
this.state = 881;
this.valueType();
this.state = 882;
this.match(QuixosCapabilityParser.GT);
}
break;
case QuixosCapabilityParser.LIST:
this.enterOuterAlt(localContext, 9);
{
this.state = 884;
this.match(QuixosCapabilityParser.LIST);
this.state = 885;
this.match(QuixosCapabilityParser.LT);
this.state = 886;
this.valueType();
this.state = 887;
this.match(QuixosCapabilityParser.GT);
}
break;
case QuixosCapabilityParser.RECORD:
this.enterOuterAlt(localContext, 10);
{
this.state = 889;
this.match(QuixosCapabilityParser.RECORD);
this.state = 890;
this.match(QuixosCapabilityParser.LBRACE);
this.state = 894;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 39 || _la === 113) {
{
{
this.state = 891;
this.recordField();
}
}
this.state = 896;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
this.state = 897;
this.match(QuixosCapabilityParser.RBRACE);
}
break;
case QuixosCapabilityParser.SOURCE:
case QuixosCapabilityParser.IDENTIFIER:
this.enterOuterAlt(localContext, 11);
{
this.state = 898;
this.identifier();
this.state = 900;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 107) {
{
this.state = 899;
this.typeArguments();
}
}
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public recordField(): RecordFieldContext {
let localContext = new RecordFieldContext(this.context, this.state);
this.enterRule(localContext, 112, QuixosCapabilityParser.RULE_recordField);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 904;
this.identifier();
this.state = 905;
this.match(QuixosCapabilityParser.COLON);
this.state = 906;
this.valueType();
this.state = 907;
this.match(QuixosCapabilityParser.SEMI);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public scalarType(): ScalarTypeContext {
let localContext = new ScalarTypeContext(this.context, this.state);
this.enterRule(localContext, 114, QuixosCapabilityParser.RULE_scalarType);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 909;
_la = this.tokenStream.LA(1);
if(!(((((_la - 85)) & ~0x1F) === 0 && ((1 << (_la - 85)) & 255) !== 0))) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public cardinality(): CardinalityContext {
let localContext = new CardinalityContext(this.context, this.state);
this.enterRule(localContext, 116, QuixosCapabilityParser.RULE_cardinality);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 911;
_la = this.tokenStream.LA(1);
if(!(((((_la - 72)) & ~0x1F) === 0 && ((1 << (_la - 72)) & 15) !== 0))) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public jsonLiteral(): JsonLiteralContext {
let localContext = new JsonLiteralContext(this.context, this.state);
this.enterRule(localContext, 118, QuixosCapabilityParser.RULE_jsonLiteral);
try {
this.state = 921;
this.errorHandler.sync(this);
switch (this.tokenStream.LA(1)) {
case QuixosCapabilityParser.STRING_LITERAL:
this.enterOuterAlt(localContext, 1);
{
this.state = 913;
this.stringLiteral();
}
break;
case QuixosCapabilityParser.INTEGER:
this.enterOuterAlt(localContext, 2);
{
this.state = 914;
this.match(QuixosCapabilityParser.INTEGER);
}
break;
case QuixosCapabilityParser.JSON_NUMBER:
this.enterOuterAlt(localContext, 3);
{
this.state = 915;
this.match(QuixosCapabilityParser.JSON_NUMBER);
}
break;
case QuixosCapabilityParser.TRUE:
this.enterOuterAlt(localContext, 4);
{
this.state = 916;
this.match(QuixosCapabilityParser.TRUE);
}
break;
case QuixosCapabilityParser.FALSE:
this.enterOuterAlt(localContext, 5);
{
this.state = 917;
this.match(QuixosCapabilityParser.FALSE);
}
break;
case QuixosCapabilityParser.NULL:
this.enterOuterAlt(localContext, 6);
{
this.state = 918;
this.match(QuixosCapabilityParser.NULL);
}
break;
case QuixosCapabilityParser.LBRACE:
this.enterOuterAlt(localContext, 7);
{
this.state = 919;
this.jsonObject();
}
break;
case QuixosCapabilityParser.LBRACK:
this.enterOuterAlt(localContext, 8);
{
this.state = 920;
this.jsonArray();
}
break;
default:
throw new antlr.NoViableAltException(this);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public jsonObject(): JsonObjectContext {
let localContext = new JsonObjectContext(this.context, this.state);
this.enterRule(localContext, 120, QuixosCapabilityParser.RULE_jsonObject);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 923;
this.match(QuixosCapabilityParser.LBRACE);
this.state = 932;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (_la === 114) {
{
this.state = 924;
this.jsonMember();
this.state = 929;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 99) {
{
{
this.state = 925;
this.match(QuixosCapabilityParser.COMMA);
this.state = 926;
this.jsonMember();
}
}
this.state = 931;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
this.state = 934;
this.match(QuixosCapabilityParser.RBRACE);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public jsonMember(): JsonMemberContext {
let localContext = new JsonMemberContext(this.context, this.state);
this.enterRule(localContext, 122, QuixosCapabilityParser.RULE_jsonMember);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 936;
this.stringLiteral();
this.state = 937;
this.match(QuixosCapabilityParser.COLON);
this.state = 938;
this.jsonLiteral();
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public jsonArray(): JsonArrayContext {
let localContext = new JsonArrayContext(this.context, this.state);
this.enterRule(localContext, 124, QuixosCapabilityParser.RULE_jsonArray);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 940;
this.match(QuixosCapabilityParser.LBRACK);
this.state = 949;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
if (((((_la - 93)) & ~0x1F) === 0 && ((1 << (_la - 93)) & 2884871) !== 0)) {
{
this.state = 941;
this.jsonLiteral();
this.state = 946;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
while (_la === 99) {
{
{
this.state = 942;
this.match(QuixosCapabilityParser.COMMA);
this.state = 943;
this.jsonLiteral();
}
}
this.state = 948;
this.errorHandler.sync(this);
_la = this.tokenStream.LA(1);
}
}
}
this.state = 951;
this.match(QuixosCapabilityParser.RBRACK);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public identifier(): IdentifierContext {
let localContext = new IdentifierContext(this.context, this.state);
this.enterRule(localContext, 126, QuixosCapabilityParser.RULE_identifier);
let _la: number;
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 953;
_la = this.tokenStream.LA(1);
if(!(_la === 39 || _la === 113)) {
this.errorHandler.recoverInline(this);
}
else {
this.errorHandler.reportMatch(this);
this.consume();
}
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public stringLiteral(): StringLiteralContext {
let localContext = new StringLiteralContext(this.context, this.state);
this.enterRule(localContext, 128, QuixosCapabilityParser.RULE_stringLiteral);
try {
this.enterOuterAlt(localContext, 1);
{
this.state = 955;
this.match(QuixosCapabilityParser.STRING_LITERAL);
}
}
catch (re) {
if (re instanceof antlr.RecognitionException) {
this.errorHandler.reportError(this, re);
this.errorHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return localContext;
}
public static readonly _serializedATN: number[] = [
4,1,117,958,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,2,24,7,24,2,25,7,25,2,26,7,
26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,
33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,
39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,
46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,
52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,
59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,1,0,1,
0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,3,0,143,8,0,1,1,1,1,1,
1,5,1,148,8,1,10,1,12,1,151,9,1,1,1,1,1,1,2,1,2,1,2,1,2,1,3,1,3,
1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,5,3,169,8,3,10,3,12,3,172,9,3,1,
3,1,3,1,4,1,4,1,4,1,4,1,4,1,4,1,4,3,4,183,8,4,1,5,1,5,1,5,1,5,1,
5,1,5,1,5,1,5,1,5,1,5,3,5,195,8,5,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,
7,1,7,1,7,1,7,1,7,1,7,1,7,1,8,1,8,1,8,1,8,3,8,215,8,8,1,9,1,9,1,
9,1,9,1,9,1,9,3,9,223,8,9,1,9,1,9,1,10,5,10,228,8,10,10,10,12,10,
231,9,10,1,10,1,10,1,10,3,10,236,8,10,1,10,1,10,1,10,1,10,1,10,1,
10,1,10,1,10,5,10,246,8,10,10,10,12,10,249,9,10,3,10,251,8,10,1,
10,1,10,5,10,255,8,10,10,10,12,10,258,9,10,1,10,1,10,1,11,1,11,1,
11,1,11,5,11,266,8,11,10,11,12,11,269,9,11,1,11,1,11,1,12,1,12,1,
12,1,12,3,12,277,8,12,1,12,1,12,1,12,1,12,1,12,1,12,5,12,285,8,12,
10,12,12,12,288,9,12,3,12,290,8,12,3,12,292,8,12,1,13,1,13,3,13,
296,8,13,1,14,1,14,1,14,1,14,5,14,302,8,14,10,14,12,14,305,9,14,
1,14,1,14,1,15,1,15,1,15,1,15,1,15,1,15,1,15,3,15,316,8,15,1,16,
1,16,1,16,3,16,321,8,16,1,16,1,16,1,16,1,16,1,17,1,17,1,17,3,17,
330,8,17,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,
1,18,1,18,1,18,1,18,1,19,1,19,1,19,1,19,1,19,1,19,1,19,1,19,5,19,
355,8,19,10,19,12,19,358,9,19,1,19,1,19,1,20,1,20,1,20,1,20,1,20,
1,20,1,20,1,20,1,20,1,20,1,20,1,20,1,20,1,20,1,20,1,20,1,20,1,20,
1,20,3,20,381,8,20,1,21,1,21,1,21,1,21,1,21,1,21,1,21,1,21,3,21,
391,8,21,1,21,1,21,5,21,395,8,21,10,21,12,21,398,9,21,1,21,1,21,
1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,
1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,3,22,426,
8,22,1,23,1,23,1,23,1,23,1,23,3,23,433,8,23,1,23,1,23,3,23,437,8,
23,1,24,5,24,440,8,24,10,24,12,24,443,9,24,1,24,1,24,1,24,1,24,1,
24,1,24,1,24,1,24,3,24,453,8,24,1,24,1,24,5,24,457,8,24,10,24,12,
24,460,9,24,1,24,1,24,1,25,1,25,1,25,3,25,467,8,25,1,26,1,26,1,26,
3,26,472,8,26,1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,26,3,26,
483,8,26,1,26,1,26,1,26,3,26,488,8,26,1,26,1,26,1,27,1,27,1,27,3,
27,495,8,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,3,27,504,8,27,1,27,
1,27,1,28,1,28,1,28,1,28,1,28,1,28,1,28,1,28,1,28,3,28,517,8,28,
1,28,1,28,1,29,1,29,1,29,1,30,1,30,1,31,1,31,1,31,1,31,1,31,1,31,
1,31,1,31,1,31,1,31,5,31,536,8,31,10,31,12,31,539,9,31,3,31,541,
8,31,1,31,3,31,544,8,31,1,32,1,32,1,32,5,32,549,8,32,10,32,12,32,
552,9,32,1,33,1,33,1,33,5,33,557,8,33,10,33,12,33,560,9,33,1,33,
1,33,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,
1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,
1,34,3,34,590,8,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,
1,34,3,34,602,8,34,1,34,1,34,3,34,606,8,34,1,35,1,35,1,35,1,35,5,
35,612,8,35,10,35,12,35,615,9,35,1,35,1,35,1,36,1,36,1,37,1,37,1,
37,1,38,1,38,3,38,626,8,38,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,
39,1,39,1,39,1,39,1,39,3,39,640,8,39,1,39,1,39,1,40,1,40,1,40,1,
40,1,40,1,40,3,40,650,8,40,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,
41,1,41,1,42,1,42,1,42,1,42,1,42,1,42,1,42,3,42,668,8,42,1,42,1,
42,3,42,672,8,42,1,42,3,42,675,8,42,1,42,1,42,3,42,679,8,42,1,42,
3,42,682,8,42,1,42,1,42,1,43,1,43,1,43,1,43,1,43,3,43,691,8,43,1,
43,1,43,3,43,695,8,43,1,43,1,43,3,43,699,8,43,1,43,1,43,5,43,703,
8,43,10,43,12,43,706,9,43,1,43,1,43,1,44,1,44,1,44,1,44,3,44,714,
8,44,1,45,1,45,1,45,1,45,1,45,1,45,1,45,1,45,1,45,1,45,1,45,1,45,
1,45,1,45,1,46,1,46,1,46,1,46,1,46,1,46,1,47,1,47,1,47,1,47,1,48,
1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,3,48,751,8,48,
1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,49,
1,49,1,49,1,49,1,49,3,49,770,8,49,1,49,3,49,773,8,49,3,49,775,8,
49,1,50,1,50,1,51,1,51,1,52,1,52,1,52,5,52,784,8,52,10,52,12,52,
787,9,52,1,52,1,52,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,
1,53,3,53,801,8,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,
1,53,1,53,1,53,1,53,1,53,3,53,817,8,53,1,53,1,53,1,53,1,53,1,53,
1,53,1,53,3,53,826,8,53,1,53,1,53,1,53,1,53,1,53,1,53,3,53,834,8,
53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,3,53,844,8,53,1,54,1,
54,1,54,1,54,1,54,1,54,1,54,3,54,853,8,54,1,54,1,54,1,55,1,55,1,
55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,3,55,871,
8,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,
1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,5,55,893,8,55,10,55,12,55,
896,9,55,1,55,1,55,1,55,3,55,901,8,55,3,55,903,8,55,1,56,1,56,1,
56,1,56,1,56,1,57,1,57,1,58,1,58,1,59,1,59,1,59,1,59,1,59,1,59,1,
59,1,59,3,59,922,8,59,1,60,1,60,1,60,1,60,5,60,928,8,60,10,60,12,
60,931,9,60,3,60,933,8,60,1,60,1,60,1,61,1,61,1,61,1,61,1,62,1,62,
1,62,1,62,5,62,945,8,62,10,62,12,62,948,9,62,3,62,950,8,62,1,62,
1,62,1,63,1,63,1,64,1,64,1,64,0,0,65,0,2,4,6,8,10,12,14,16,18,20,
22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,
66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102,104,106,
108,110,112,114,116,118,120,122,124,126,128,0,7,1,0,65,69,2,0,60,
64,66,67,2,0,60,61,66,67,2,0,62,64,66,67,1,0,85,92,1,0,72,75,2,0,
39,39,113,113,1022,0,142,1,0,0,0,2,144,1,0,0,0,4,154,1,0,0,0,6,158,
1,0,0,0,8,182,1,0,0,0,10,194,1,0,0,0,12,196,1,0,0,0,14,203,1,0,0,
0,16,214,1,0,0,0,18,216,1,0,0,0,20,229,1,0,0,0,22,261,1,0,0,0,24,
291,1,0,0,0,26,293,1,0,0,0,28,297,1,0,0,0,30,315,1,0,0,0,32,317,
1,0,0,0,34,329,1,0,0,0,36,331,1,0,0,0,38,346,1,0,0,0,40,380,1,0,
0,0,42,382,1,0,0,0,44,425,1,0,0,0,46,436,1,0,0,0,48,441,1,0,0,0,
50,466,1,0,0,0,52,468,1,0,0,0,54,491,1,0,0,0,56,507,1,0,0,0,58,520,
1,0,0,0,60,523,1,0,0,0,62,543,1,0,0,0,64,545,1,0,0,0,66,553,1,0,
0,0,68,605,1,0,0,0,70,607,1,0,0,0,72,618,1,0,0,0,74,620,1,0,0,0,
76,625,1,0,0,0,78,627,1,0,0,0,80,649,1,0,0,0,82,651,1,0,0,0,84,660,
1,0,0,0,86,685,1,0,0,0,88,713,1,0,0,0,90,715,1,0,0,0,92,729,1,0,
0,0,94,735,1,0,0,0,96,750,1,0,0,0,98,774,1,0,0,0,100,776,1,0,0,0,
102,778,1,0,0,0,104,780,1,0,0,0,106,843,1,0,0,0,108,845,1,0,0,0,
110,902,1,0,0,0,112,904,1,0,0,0,114,909,1,0,0,0,116,911,1,0,0,0,
118,921,1,0,0,0,120,923,1,0,0,0,122,936,1,0,0,0,124,940,1,0,0,0,
126,953,1,0,0,0,128,955,1,0,0,0,130,131,3,6,3,0,131,132,5,0,0,1,
132,143,1,0,0,0,133,134,3,20,10,0,134,135,5,0,0,1,135,143,1,0,0,
0,136,137,3,48,24,0,137,138,5,0,0,1,138,143,1,0,0,0,139,140,3,2,
1,0,140,141,5,0,0,1,141,143,1,0,0,0,142,130,1,0,0,0,142,133,1,0,
0,0,142,136,1,0,0,0,142,139,1,0,0,0,143,1,1,0,0,0,144,145,5,7,0,
0,145,149,5,101,0,0,146,148,3,8,4,0,147,146,1,0,0,0,148,151,1,0,
0,0,149,147,1,0,0,0,149,150,1,0,0,0,150,152,1,0,0,0,151,149,1,0,
0,0,152,153,5,102,0,0,153,3,1,0,0,0,154,155,5,8,0,0,155,156,3,128,
64,0,156,157,5,98,0,0,157,5,1,0,0,0,158,159,5,1,0,0,159,160,3,126,
63,0,160,161,5,48,0,0,161,162,3,128,64,0,162,163,5,42,0,0,163,164,
3,128,64,0,164,165,5,41,0,0,165,166,3,128,64,0,166,170,5,101,0,0,
167,169,3,8,4,0,168,167,1,0,0,0,169,172,1,0,0,0,170,168,1,0,0,0,
170,171,1,0,0,0,171,173,1,0,0,0,172,170,1,0,0,0,173,174,5,102,0,
0,174,7,1,0,0,0,175,183,3,4,2,0,176,183,3,18,9,0,177,183,3,10,5,
0,178,183,3,74,37,0,179,183,3,86,43,0,180,183,3,108,54,0,181,183,
3,32,16,0,182,175,1,0,0,0,182,176,1,0,0,0,182,177,1,0,0,0,182,178,
1,0,0,0,182,179,1,0,0,0,182,180,1,0,0,0,182,181,1,0,0,0,183,9,1,
0,0,0,184,185,5,8,0,0,185,186,5,11,0,0,186,187,3,126,63,0,187,188,
5,98,0,0,188,195,1,0,0,0,189,190,5,8,0,0,190,191,5,13,0,0,191,192,
3,126,63,0,192,193,5,98,0,0,193,195,1,0,0,0,194,184,1,0,0,0,194,
189,1,0,0,0,195,11,1,0,0,0,196,197,5,9,0,0,197,198,5,10,0,0,198,
199,3,126,63,0,199,200,5,48,0,0,200,201,3,128,64,0,201,202,5,98,
0,0,202,13,1,0,0,0,203,204,5,9,0,0,204,205,5,11,0,0,205,206,3,126,
63,0,206,207,5,42,0,0,207,208,3,128,64,0,208,209,5,98,0,0,209,15,
1,0,0,0,210,215,3,10,5,0,211,215,3,12,6,0,212,215,3,14,7,0,213,215,
3,32,16,0,214,210,1,0,0,0,214,211,1,0,0,0,214,212,1,0,0,0,214,213,
1,0,0,0,215,17,1,0,0,0,216,217,5,10,0,0,217,218,3,126,63,0,218,219,
5,48,0,0,219,222,3,128,64,0,220,221,5,49,0,0,221,223,3,128,64,0,
222,220,1,0,0,0,222,223,1,0,0,0,223,224,1,0,0,0,224,225,5,98,0,0,
225,19,1,0,0,0,226,228,3,16,8,0,227,226,1,0,0,0,228,231,1,0,0,0,
229,227,1,0,0,0,229,230,1,0,0,0,230,232,1,0,0,0,231,229,1,0,0,0,
232,233,5,11,0,0,233,235,3,126,63,0,234,236,3,22,11,0,235,234,1,
0,0,0,235,236,1,0,0,0,236,237,1,0,0,0,237,238,5,48,0,0,238,239,3,
128,64,0,239,240,5,42,0,0,240,250,3,128,64,0,241,242,5,53,0,0,242,
247,3,26,13,0,243,244,5,99,0,0,244,246,3,26,13,0,245,243,1,0,0,0,
246,249,1,0,0,0,247,245,1,0,0,0,247,248,1,0,0,0,248,251,1,0,0,0,
249,247,1,0,0,0,250,241,1,0,0,0,250,251,1,0,0,0,251,252,1,0,0,0,
252,256,5,101,0,0,253,255,3,34,17,0,254,253,1,0,0,0,255,258,1,0,
0,0,256,254,1,0,0,0,256,257,1,0,0,0,257,259,1,0,0,0,258,256,1,0,
0,0,259,260,5,102,0,0,260,21,1,0,0,0,261,262,5,107,0,0,262,267,3,
24,12,0,263,264,5,99,0,0,264,266,3,24,12,0,265,263,1,0,0,0,266,269,
1,0,0,0,267,265,1,0,0,0,267,268,1,0,0,0,268,270,1,0,0,0,269,267,
1,0,0,0,270,271,5,108,0,0,271,23,1,0,0,0,272,273,5,14,0,0,273,276,
3,126,63,0,274,275,5,97,0,0,275,277,5,4,0,0,276,274,1,0,0,0,276,
277,1,0,0,0,277,292,1,0,0,0,278,279,5,3,0,0,279,289,3,126,63,0,280,
281,5,5,0,0,281,286,3,26,13,0,282,283,5,109,0,0,283,285,3,26,13,
0,284,282,1,0,0,0,285,288,1,0,0,0,286,284,1,0,0,0,286,287,1,0,0,
0,287,290,1,0,0,0,288,286,1,0,0,0,289,280,1,0,0,0,289,290,1,0,0,
0,290,292,1,0,0,0,291,272,1,0,0,0,291,278,1,0,0,0,292,25,1,0,0,0,
293,295,3,126,63,0,294,296,3,28,14,0,295,294,1,0,0,0,295,296,1,0,
0,0,296,27,1,0,0,0,297,298,5,107,0,0,298,303,3,30,15,0,299,300,5,
99,0,0,300,302,3,30,15,0,301,299,1,0,0,0,302,305,1,0,0,0,303,301,
1,0,0,0,303,304,1,0,0,0,304,306,1,0,0,0,305,303,1,0,0,0,306,307,
5,108,0,0,307,29,1,0,0,0,308,309,5,10,0,0,309,316,3,126,63,0,310,
311,5,11,0,0,311,316,3,26,13,0,312,313,5,3,0,0,313,316,3,126,63,
0,314,316,3,110,55,0,315,308,1,0,0,0,315,310,1,0,0,0,315,312,1,0,
0,0,315,314,1,0,0,0,316,31,1,0,0,0,317,318,5,2,0,0,318,320,3,126,
63,0,319,321,3,22,11,0,320,319,1,0,0,0,320,321,1,0,0,0,321,322,1,
0,0,0,322,323,5,110,0,0,323,324,3,110,55,0,324,325,5,98,0,0,325,
33,1,0,0,0,326,330,3,38,19,0,327,330,3,42,21,0,328,330,3,36,18,0,
329,326,1,0,0,0,329,327,1,0,0,0,329,328,1,0,0,0,330,35,1,0,0,0,331,
332,5,16,0,0,332,333,3,126,63,0,333,334,5,48,0,0,334,335,3,128,64,
0,335,336,5,97,0,0,336,337,3,110,55,0,337,338,5,96,0,0,338,339,3,
110,55,0,339,340,5,101,0,0,340,341,5,65,0,0,341,342,5,48,0,0,342,
343,3,128,64,0,343,344,5,98,0,0,344,345,5,102,0,0,345,37,1,0,0,0,
346,347,5,14,0,0,347,348,3,126,63,0,348,349,5,48,0,0,349,350,3,128,
64,0,350,351,5,97,0,0,351,352,3,110,55,0,352,356,5,101,0,0,353,355,
3,40,20,0,354,353,1,0,0,0,355,358,1,0,0,0,356,354,1,0,0,0,356,357,
1,0,0,0,357,359,1,0,0,0,358,356,1,0,0,0,359,360,5,102,0,0,360,39,
1,0,0,0,361,362,5,55,0,0,362,363,5,48,0,0,363,364,3,128,64,0,364,
365,5,98,0,0,365,381,1,0,0,0,366,367,5,56,0,0,367,368,5,48,0,0,368,
369,3,128,64,0,369,370,5,98,0,0,370,381,1,0,0,0,371,372,5,57,0,0,
372,373,5,58,0,0,373,374,5,48,0,0,374,375,3,128,64,0,375,376,5,59,
0,0,376,377,5,48,0,0,377,378,3,128,64,0,378,379,5,98,0,0,379,381,
1,0,0,0,380,361,1,0,0,0,380,366,1,0,0,0,380,371,1,0,0,0,381,41,1,
0,0,0,382,383,5,15,0,0,383,384,3,126,63,0,384,385,5,48,0,0,385,386,
3,128,64,0,386,387,5,97,0,0,387,388,3,116,58,0,388,390,3,46,23,0,
389,391,5,76,0,0,390,389,1,0,0,0,390,391,1,0,0,0,391,392,1,0,0,0,
392,396,5,101,0,0,393,395,3,44,22,0,394,393,1,0,0,0,395,398,1,0,
0,0,396,394,1,0,0,0,396,397,1,0,0,0,397,399,1,0,0,0,398,396,1,0,
0,0,399,400,5,102,0,0,400,43,1,0,0,0,401,402,5,62,0,0,402,403,5,
48,0,0,403,404,3,128,64,0,404,405,5,98,0,0,405,426,1,0,0,0,406,407,
5,63,0,0,407,408,5,48,0,0,408,409,3,128,64,0,409,410,5,98,0,0,410,
426,1,0,0,0,411,412,5,64,0,0,412,413,5,48,0,0,413,414,3,128,64,0,
414,415,5,98,0,0,415,426,1,0,0,0,416,417,5,57,0,0,417,418,5,58,0,
0,418,419,5,48,0,0,419,420,3,128,64,0,420,421,5,59,0,0,421,422,5,
48,0,0,422,423,3,128,64,0,423,424,5,98,0,0,424,426,1,0,0,0,425,401,
1,0,0,0,425,406,1,0,0,0,425,411,1,0,0,0,425,416,1,0,0,0,426,45,1,
0,0,0,427,428,5,10,0,0,428,437,3,126,63,0,429,430,5,11,0,0,430,432,
3,126,63,0,431,433,3,28,14,0,432,431,1,0,0,0,432,433,1,0,0,0,433,
437,1,0,0,0,434,435,5,3,0,0,435,437,3,126,63,0,436,427,1,0,0,0,436,
429,1,0,0,0,436,434,1,0,0,0,437,47,1,0,0,0,438,440,3,16,8,0,439,
438,1,0,0,0,440,443,1,0,0,0,441,439,1,0,0,0,441,442,1,0,0,0,442,
444,1,0,0,0,443,441,1,0,0,0,444,445,5,13,0,0,445,446,3,126,63,0,
446,447,5,48,0,0,447,448,3,128,64,0,448,449,5,42,0,0,449,452,3,128,
64,0,450,451,5,43,0,0,451,453,5,111,0,0,452,450,1,0,0,0,452,453,
1,0,0,0,453,454,1,0,0,0,454,458,5,101,0,0,455,457,3,50,25,0,456,
455,1,0,0,0,457,460,1,0,0,0,458,456,1,0,0,0,458,459,1,0,0,0,459,
461,1,0,0,0,460,458,1,0,0,0,461,462,5,102,0,0,462,49,1,0,0,0,463,
467,3,52,26,0,464,467,3,54,27,0,465,467,3,56,28,0,466,463,1,0,0,
0,466,464,1,0,0,0,466,465,1,0,0,0,467,51,1,0,0,0,468,469,5,16,0,
0,469,471,3,126,63,0,470,472,3,22,11,0,471,470,1,0,0,0,471,472,1,
0,0,0,472,473,1,0,0,0,473,474,5,48,0,0,474,475,3,128,64,0,475,476,
5,97,0,0,476,477,3,110,55,0,477,478,5,96,0,0,478,479,3,110,55,0,
479,480,5,50,0,0,480,482,3,60,30,0,481,483,3,58,29,0,482,481,1,0,
0,0,482,483,1,0,0,0,483,484,1,0,0,0,484,485,5,52,0,0,485,487,3,62,
31,0,486,488,3,66,33,0,487,486,1,0,0,0,487,488,1,0,0,0,488,489,1,
0,0,0,489,490,5,98,0,0,490,53,1,0,0,0,491,492,5,17,0,0,492,494,3,
126,63,0,493,495,3,22,11,0,494,493,1,0,0,0,494,495,1,0,0,0,495,496,
1,0,0,0,496,497,5,48,0,0,497,498,3,128,64,0,498,499,5,97,0,0,499,
500,3,110,55,0,500,501,5,96,0,0,501,503,3,110,55,0,502,504,3,66,
33,0,503,502,1,0,0,0,503,504,1,0,0,0,504,505,1,0,0,0,505,506,5,98,
0,0,506,55,1,0,0,0,507,508,5,18,0,0,508,509,3,126,63,0,509,510,5,
48,0,0,510,511,3,128,64,0,511,512,5,19,0,0,512,513,3,126,63,0,513,
514,5,97,0,0,514,516,3,110,55,0,515,517,3,66,33,0,516,515,1,0,0,
0,516,517,1,0,0,0,517,518,1,0,0,0,518,519,5,98,0,0,519,57,1,0,0,
0,520,521,5,51,0,0,521,522,3,110,55,0,522,59,1,0,0,0,523,524,7,0,
0,0,524,61,1,0,0,0,525,544,5,54,0,0,526,527,5,10,0,0,527,544,3,126,
63,0,528,529,5,3,0,0,529,544,3,126,63,0,530,531,5,12,0,0,531,540,
5,103,0,0,532,537,3,26,13,0,533,534,5,99,0,0,534,536,3,26,13,0,535,
533,1,0,0,0,536,539,1,0,0,0,537,535,1,0,0,0,537,538,1,0,0,0,538,
541,1,0,0,0,539,537,1,0,0,0,540,532,1,0,0,0,540,541,1,0,0,0,541,
542,1,0,0,0,542,544,5,104,0,0,543,525,1,0,0,0,543,526,1,0,0,0,543,
528,1,0,0,0,543,530,1,0,0,0,544,63,1,0,0,0,545,550,3,126,63,0,546,
547,5,99,0,0,547,549,3,126,63,0,548,546,1,0,0,0,549,552,1,0,0,0,
550,548,1,0,0,0,550,551,1,0,0,0,551,65,1,0,0,0,552,550,1,0,0,0,553,
554,5,53,0,0,554,558,5,101,0,0,555,557,3,68,34,0,556,555,1,0,0,0,
557,560,1,0,0,0,558,556,1,0,0,0,558,559,1,0,0,0,559,561,1,0,0,0,
560,558,1,0,0,0,561,562,5,102,0,0,562,67,1,0,0,0,563,564,5,27,0,
0,564,565,3,126,63,0,565,566,5,48,0,0,566,567,3,128,64,0,567,568,
5,97,0,0,568,569,3,110,55,0,569,570,3,70,35,0,570,571,5,98,0,0,571,
606,1,0,0,0,572,573,5,28,0,0,573,574,3,126,63,0,574,575,5,48,0,0,
575,576,3,128,64,0,576,577,5,97,0,0,577,578,3,116,58,0,578,579,3,
46,23,0,579,580,3,70,35,0,580,581,5,98,0,0,581,606,1,0,0,0,582,583,
5,11,0,0,583,584,3,126,63,0,584,585,5,48,0,0,585,586,3,128,64,0,
586,587,5,97,0,0,587,589,3,126,63,0,588,590,3,28,14,0,589,588,1,
0,0,0,589,590,1,0,0,0,590,591,1,0,0,0,591,592,5,98,0,0,592,606,1,
0,0,0,593,594,5,18,0,0,594,595,3,126,63,0,595,596,5,48,0,0,596,597,
3,128,64,0,597,598,5,97,0,0,598,601,3,126,63,0,599,600,5,20,0,0,
600,602,3,110,55,0,601,599,1,0,0,0,601,602,1,0,0,0,602,603,1,0,0,
0,603,604,5,98,0,0,604,606,1,0,0,0,605,563,1,0,0,0,605,572,1,0,0,
0,605,582,1,0,0,0,605,593,1,0,0,0,606,69,1,0,0,0,607,608,5,103,0,
0,608,613,3,72,36,0,609,610,5,99,0,0,610,612,3,72,36,0,611,609,1,
0,0,0,612,615,1,0,0,0,613,611,1,0,0,0,613,614,1,0,0,0,614,616,1,
0,0,0,615,613,1,0,0,0,616,617,5,104,0,0,617,71,1,0,0,0,618,619,7,
1,0,0,619,73,1,0,0,0,620,621,5,26,0,0,621,622,3,76,38,0,622,75,1,
0,0,0,623,626,3,78,39,0,624,626,3,82,41,0,625,623,1,0,0,0,625,624,
1,0,0,0,626,77,1,0,0,0,627,628,5,27,0,0,628,629,3,126,63,0,629,630,
5,48,0,0,630,631,3,128,64,0,631,632,5,36,0,0,632,633,3,126,63,0,
633,634,5,97,0,0,634,635,3,110,55,0,635,636,5,37,0,0,636,639,3,80,
40,0,637,638,5,38,0,0,638,640,3,118,59,0,639,637,1,0,0,0,639,640,
1,0,0,0,640,641,1,0,0,0,641,642,5,98,0,0,642,79,1,0,0,0,643,650,
5,70,0,0,644,645,5,71,0,0,645,646,5,105,0,0,646,647,3,110,55,0,647,
648,5,106,0,0,648,650,1,0,0,0,649,643,1,0,0,0,649,644,1,0,0,0,650,
81,1,0,0,0,651,652,5,28,0,0,652,653,3,126,63,0,653,654,5,48,0,0,
654,655,3,128,64,0,655,656,5,101,0,0,656,657,3,84,42,0,657,658,3,
84,42,0,658,659,5,102,0,0,659,83,1,0,0,0,660,661,3,46,23,0,661,662,
5,29,0,0,662,663,3,126,63,0,663,664,5,48,0,0,664,665,3,128,64,0,
665,667,3,116,58,0,666,668,5,76,0,0,667,666,1,0,0,0,667,668,1,0,
0,0,668,671,1,0,0,0,669,670,5,44,0,0,670,672,3,128,64,0,671,669,
1,0,0,0,671,672,1,0,0,0,672,674,1,0,0,0,673,675,5,45,0,0,674,673,
1,0,0,0,674,675,1,0,0,0,675,678,1,0,0,0,676,677,5,46,0,0,677,679,
3,128,64,0,678,676,1,0,0,0,678,679,1,0,0,0,679,681,1,0,0,0,680,682,
5,47,0,0,681,680,1,0,0,0,681,682,1,0,0,0,682,683,1,0,0,0,683,684,
5,98,0,0,684,85,1,0,0,0,685,686,5,21,0,0,686,687,3,126,63,0,687,
688,5,22,0,0,688,690,3,126,63,0,689,691,3,28,14,0,690,689,1,0,0,
0,690,691,1,0,0,0,691,694,1,0,0,0,692,693,5,48,0,0,693,695,3,128,
64,0,694,692,1,0,0,0,694,695,1,0,0,0,695,698,1,0,0,0,696,697,5,43,
0,0,697,699,5,111,0,0,698,696,1,0,0,0,698,699,1,0,0,0,699,700,1,
0,0,0,700,704,5,101,0,0,701,703,3,88,44,0,702,701,1,0,0,0,703,706,
1,0,0,0,704,702,1,0,0,0,704,705,1,0,0,0,705,707,1,0,0,0,706,704,
1,0,0,0,707,708,5,102,0,0,708,87,1,0,0,0,709,710,5,25,0,0,710,714,
3,76,38,0,711,714,3,92,46,0,712,714,3,90,45,0,713,709,1,0,0,0,713,
711,1,0,0,0,713,712,1,0,0,0,714,89,1,0,0,0,715,716,5,33,0,0,716,
717,3,126,63,0,717,718,5,34,0,0,718,719,5,35,0,0,719,720,5,31,0,
0,720,721,5,18,0,0,721,722,3,126,63,0,722,723,5,32,0,0,723,724,5,
28,0,0,724,725,3,126,63,0,725,726,5,100,0,0,726,727,3,126,63,0,727,
728,5,98,0,0,728,91,1,0,0,0,729,730,5,23,0,0,730,731,3,94,47,0,731,
732,5,24,0,0,732,733,3,98,49,0,733,734,5,98,0,0,734,93,1,0,0,0,735,
736,3,126,63,0,736,737,5,100,0,0,737,738,3,96,48,0,738,95,1,0,0,
0,739,751,3,126,63,0,740,751,5,65,0,0,741,751,5,55,0,0,742,751,5,
56,0,0,743,751,5,62,0,0,744,751,5,63,0,0,745,751,5,64,0,0,746,751,
5,66,0,0,747,751,5,67,0,0,748,751,5,68,0,0,749,751,5,69,0,0,750,
739,1,0,0,0,750,740,1,0,0,0,750,741,1,0,0,0,750,742,1,0,0,0,750,
743,1,0,0,0,750,744,1,0,0,0,750,745,1,0,0,0,750,746,1,0,0,0,750,
747,1,0,0,0,750,748,1,0,0,0,750,749,1,0,0,0,751,97,1,0,0,0,752,753,
5,27,0,0,753,754,3,126,63,0,754,755,5,100,0,0,755,756,3,100,50,0,
756,775,1,0,0,0,757,758,5,28,0,0,758,759,3,126,63,0,759,760,5,100,
0,0,760,761,3,126,63,0,761,762,5,100,0,0,762,763,3,102,51,0,763,
775,1,0,0,0,764,765,5,13,0,0,765,766,3,126,63,0,766,767,5,100,0,
0,767,769,3,126,63,0,768,770,3,28,14,0,769,768,1,0,0,0,769,770,1,
0,0,0,770,772,1,0,0,0,771,773,3,104,52,0,772,771,1,0,0,0,772,773,
1,0,0,0,773,775,1,0,0,0,774,752,1,0,0,0,774,757,1,0,0,0,774,764,
1,0,0,0,775,99,1,0,0,0,776,777,7,2,0,0,777,101,1,0,0,0,778,779,7,
3,0,0,779,103,1,0,0,0,780,781,5,30,0,0,781,785,5,101,0,0,782,784,
3,106,53,0,783,782,1,0,0,0,784,787,1,0,0,0,785,783,1,0,0,0,785,786,
1,0,0,0,786,788,1,0,0,0,787,785,1,0,0,0,788,789,5,102,0,0,789,105,
1,0,0,0,790,791,3,126,63,0,791,792,5,24,0,0,792,793,5,27,0,0,793,
800,3,126,63,0,794,795,5,32,0,0,795,796,5,28,0,0,796,797,3,126,63,
0,797,798,5,100,0,0,798,799,3,126,63,0,799,801,1,0,0,0,800,794,1,
0,0,0,800,801,1,0,0,0,801,802,1,0,0,0,802,803,5,98,0,0,803,844,1,
0,0,0,804,805,3,126,63,0,805,806,5,24,0,0,806,807,5,28,0,0,807,808,
3,126,63,0,808,809,5,100,0,0,809,816,3,126,63,0,810,811,5,32,0,0,
811,812,5,28,0,0,812,813,3,126,63,0,813,814,5,100,0,0,814,815,3,
126,63,0,815,817,1,0,0,0,816,810,1,0,0,0,816,817,1,0,0,0,817,818,
1,0,0,0,818,819,5,98,0,0,819,844,1,0,0,0,820,821,3,126,63,0,821,
822,5,24,0,0,822,823,5,11,0,0,823,825,3,126,63,0,824,826,3,28,14,
0,825,824,1,0,0,0,825,826,1,0,0,0,826,833,1,0,0,0,827,828,5,32,0,
0,828,829,5,28,0,0,829,830,3,126,63,0,830,831,5,100,0,0,831,832,
3,126,63,0,832,834,1,0,0,0,833,827,1,0,0,0,833,834,1,0,0,0,834,835,
1,0,0,0,835,836,5,98,0,0,836,844,1,0,0,0,837,838,3,126,63,0,838,
839,5,24,0,0,839,840,5,18,0,0,840,841,3,126,63,0,841,842,5,98,0,
0,842,844,1,0,0,0,843,790,1,0,0,0,843,804,1,0,0,0,843,820,1,0,0,
0,843,837,1,0,0,0,844,107,1,0,0,0,845,846,5,18,0,0,846,847,3,126,
63,0,847,848,5,24,0,0,848,849,3,126,63,0,849,850,5,100,0,0,850,852,
3,126,63,0,851,853,3,104,52,0,852,851,1,0,0,0,852,853,1,0,0,0,853,
854,1,0,0,0,854,855,5,98,0,0,855,109,1,0,0,0,856,903,3,114,57,0,
857,903,5,77,0,0,858,903,5,78,0,0,859,860,5,79,0,0,860,903,3,128,
64,0,861,862,5,80,0,0,862,863,5,107,0,0,863,864,3,126,63,0,864,865,
5,108,0,0,865,903,1,0,0,0,866,867,5,81,0,0,867,868,5,107,0,0,868,
870,3,126,63,0,869,871,3,28,14,0,870,869,1,0,0,0,870,871,1,0,0,0,
871,872,1,0,0,0,872,873,5,108,0,0,873,903,1,0,0,0,874,875,5,6,0,
0,875,876,5,107,0,0,876,877,3,126,63,0,877,878,5,108,0,0,878,903,
1,0,0,0,879,880,5,82,0,0,880,881,5,107,0,0,881,882,3,110,55,0,882,
883,5,108,0,0,883,903,1,0,0,0,884,885,5,83,0,0,885,886,5,107,0,0,
886,887,3,110,55,0,887,888,5,108,0,0,888,903,1,0,0,0,889,890,5,84,
0,0,890,894,5,101,0,0,891,893,3,112,56,0,892,891,1,0,0,0,893,896,
1,0,0,0,894,892,1,0,0,0,894,895,1,0,0,0,895,897,1,0,0,0,896,894,
1,0,0,0,897,903,5,102,0,0,898,900,3,126,63,0,899,901,3,28,14,0,900,
899,1,0,0,0,900,901,1,0,0,0,901,903,1,0,0,0,902,856,1,0,0,0,902,
857,1,0,0,0,902,858,1,0,0,0,902,859,1,0,0,0,902,861,1,0,0,0,902,
866,1,0,0,0,902,874,1,0,0,0,902,879,1,0,0,0,902,884,1,0,0,0,902,
889,1,0,0,0,902,898,1,0,0,0,903,111,1,0,0,0,904,905,3,126,63,0,905,
906,5,97,0,0,906,907,3,110,55,0,907,908,5,98,0,0,908,113,1,0,0,0,
909,910,7,4,0,0,910,115,1,0,0,0,911,912,7,5,0,0,912,117,1,0,0,0,
913,922,3,128,64,0,914,922,5,111,0,0,915,922,5,112,0,0,916,922,5,
93,0,0,917,922,5,94,0,0,918,922,5,95,0,0,919,922,3,120,60,0,920,
922,3,124,62,0,921,913,1,0,0,0,921,914,1,0,0,0,921,915,1,0,0,0,921,
916,1,0,0,0,921,917,1,0,0,0,921,918,1,0,0,0,921,919,1,0,0,0,921,
920,1,0,0,0,922,119,1,0,0,0,923,932,5,101,0,0,924,929,3,122,61,0,
925,926,5,99,0,0,926,928,3,122,61,0,927,925,1,0,0,0,928,931,1,0,
0,0,929,927,1,0,0,0,929,930,1,0,0,0,930,933,1,0,0,0,931,929,1,0,
0,0,932,924,1,0,0,0,932,933,1,0,0,0,933,934,1,0,0,0,934,935,5,102,
0,0,935,121,1,0,0,0,936,937,3,128,64,0,937,938,5,97,0,0,938,939,
3,118,59,0,939,123,1,0,0,0,940,949,5,103,0,0,941,946,3,118,59,0,
942,943,5,99,0,0,943,945,3,118,59,0,944,942,1,0,0,0,945,948,1,0,
0,0,946,944,1,0,0,0,946,947,1,0,0,0,947,950,1,0,0,0,948,946,1,0,
0,0,949,941,1,0,0,0,949,950,1,0,0,0,950,951,1,0,0,0,951,952,5,104,
0,0,952,125,1,0,0,0,953,954,7,6,0,0,954,127,1,0,0,0,955,956,5,114,
0,0,956,129,1,0,0,0,81,142,149,170,182,194,214,222,229,235,247,250,
256,267,276,286,289,291,295,303,315,320,329,356,380,390,396,425,
432,436,441,452,458,466,471,482,487,494,503,516,537,540,543,550,
558,589,601,605,613,625,639,649,667,671,674,678,681,690,694,698,
704,713,750,769,772,774,785,800,816,825,833,843,852,870,894,900,
902,921,929,932,946,949
];
private static __ATN: antlr.ATN;
public static get _ATN(): antlr.ATN {
if (!QuixosCapabilityParser.__ATN) {
QuixosCapabilityParser.__ATN = new antlr.ATNDeserializer().deserialize(QuixosCapabilityParser._serializedATN);
}
return QuixosCapabilityParser.__ATN;
}
private static readonly vocabulary = new antlr.Vocabulary(QuixosCapabilityParser.literalNames, QuixosCapabilityParser.symbolicNames, []);
public override get vocabulary(): antlr.Vocabulary {
return QuixosCapabilityParser.vocabulary;
}
private static readonly decisionsToDFA = QuixosCapabilityParser._ATN.decisionToState.map( (ds: antlr.DecisionState, index: number) => new antlr.DFA(ds, index) );
}
export class DocumentContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public workspaceDecl(): WorkspaceDeclContext | null {
return this.getRuleContext(0, WorkspaceDeclContext);
}
public EOF(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.EOF, 0)!;
}
public interfaceResourceDecl(): InterfaceResourceDeclContext | null {
return this.getRuleContext(0, InterfaceResourceDeclContext);
}
public packageResourceDecl(): PackageResourceDeclContext | null {
return this.getRuleContext(0, PackageResourceDeclContext);
}
public fragmentDecl(): FragmentDeclContext | null {
return this.getRuleContext(0, FragmentDeclContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_document;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitDocument) {
return visitor.visitDocument(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class FragmentDeclContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public FRAGMENT(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.FRAGMENT, 0)!;
}
public LBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.LBRACE, 0)!;
}
public RBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.RBRACE, 0)!;
}
public workspaceItem(): WorkspaceItemContext[];
public workspaceItem(i: number): WorkspaceItemContext | null;
public workspaceItem(i?: number): WorkspaceItemContext[] | WorkspaceItemContext | null {
if (i === undefined) {
return this.getRuleContexts(WorkspaceItemContext);
}
return this.getRuleContext(i, WorkspaceItemContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_fragmentDecl;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitFragmentDecl) {
return visitor.visitFragmentDecl(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class SourceImportDeclContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public IMPORT(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.IMPORT, 0)!;
}
public stringLiteral(): StringLiteralContext {
return this.getRuleContext(0, StringLiteralContext)!;
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_sourceImportDecl;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitSourceImportDecl) {
return visitor.visitSourceImportDecl(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class WorkspaceDeclContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public WORKSPACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.WORKSPACE, 0)!;
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public ID(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ID, 0)!;
}
public stringLiteral(): StringLiteralContext[];
public stringLiteral(i: number): StringLiteralContext | null;
public stringLiteral(i?: number): StringLiteralContext[] | StringLiteralContext | null {
if (i === undefined) {
return this.getRuleContexts(StringLiteralContext);
}
return this.getRuleContext(i, StringLiteralContext);
}
public REVISION(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.REVISION, 0)!;
}
public COMMIT(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.COMMIT, 0)!;
}
public LBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.LBRACE, 0)!;
}
public RBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.RBRACE, 0)!;
}
public workspaceItem(): WorkspaceItemContext[];
public workspaceItem(i: number): WorkspaceItemContext | null;
public workspaceItem(i?: number): WorkspaceItemContext[] | WorkspaceItemContext | null {
if (i === undefined) {
return this.getRuleContexts(WorkspaceItemContext);
}
return this.getRuleContext(i, WorkspaceItemContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_workspaceDecl;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitWorkspaceDecl) {
return visitor.visitWorkspaceDecl(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class WorkspaceItemContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public sourceImportDecl(): SourceImportDeclContext | null {
return this.getRuleContext(0, SourceImportDeclContext);
}
public atomDecl(): AtomDeclContext | null {
return this.getRuleContext(0, AtomDeclContext);
}
public resourceImportDecl(): ResourceImportDeclContext | null {
return this.getRuleContext(0, ResourceImportDeclContext);
}
public sharedAttachmentDecl(): SharedAttachmentDeclContext | null {
return this.getRuleContext(0, SharedAttachmentDeclContext);
}
public conformanceDecl(): ConformanceDeclContext | null {
return this.getRuleContext(0, ConformanceDeclContext);
}
public constructorBindingDecl(): ConstructorBindingDeclContext | null {
return this.getRuleContext(0, ConstructorBindingDeclContext);
}
public typeAliasDecl(): TypeAliasDeclContext | null {
return this.getRuleContext(0, TypeAliasDeclContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_workspaceItem;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitWorkspaceItem) {
return visitor.visitWorkspaceItem(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class ResourceImportDeclContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public IMPORT(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.IMPORT, 0)!;
}
public INTERFACE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.INTERFACE, 0);
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public PACKAGE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.PACKAGE, 0);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_resourceImportDecl;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitResourceImportDecl) {
return visitor.visitResourceImportDecl(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class ExternalAtomDeclContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public EXTERNAL(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.EXTERNAL, 0)!;
}
public ATOM(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ATOM, 0)!;
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public ID(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ID, 0)!;
}
public stringLiteral(): StringLiteralContext {
return this.getRuleContext(0, StringLiteralContext)!;
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_externalAtomDecl;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitExternalAtomDecl) {
return visitor.visitExternalAtomDecl(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class ExternalInterfaceDeclContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public EXTERNAL(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.EXTERNAL, 0)!;
}
public INTERFACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.INTERFACE, 0)!;
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public REVISION(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.REVISION, 0)!;
}
public stringLiteral(): StringLiteralContext {
return this.getRuleContext(0, StringLiteralContext)!;
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_externalInterfaceDecl;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitExternalInterfaceDecl) {
return visitor.visitExternalInterfaceDecl(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class ResourcePreambleContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public resourceImportDecl(): ResourceImportDeclContext | null {
return this.getRuleContext(0, ResourceImportDeclContext);
}
public externalAtomDecl(): ExternalAtomDeclContext | null {
return this.getRuleContext(0, ExternalAtomDeclContext);
}
public externalInterfaceDecl(): ExternalInterfaceDeclContext | null {
return this.getRuleContext(0, ExternalInterfaceDeclContext);
}
public typeAliasDecl(): TypeAliasDeclContext | null {
return this.getRuleContext(0, TypeAliasDeclContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_resourcePreamble;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitResourcePreamble) {
return visitor.visitResourcePreamble(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class AtomDeclContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public ATOM(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ATOM, 0)!;
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public ID(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ID, 0)!;
}
public stringLiteral(): StringLiteralContext[];
public stringLiteral(i: number): StringLiteralContext | null;
public stringLiteral(i?: number): StringLiteralContext[] | StringLiteralContext | null {
if (i === undefined) {
return this.getRuleContexts(StringLiteralContext);
}
return this.getRuleContext(i, StringLiteralContext);
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public DOC(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.DOC, 0);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_atomDecl;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitAtomDecl) {
return visitor.visitAtomDecl(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class InterfaceResourceDeclContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public INTERFACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.INTERFACE, 0)!;
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public ID(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ID, 0)!;
}
public stringLiteral(): StringLiteralContext[];
public stringLiteral(i: number): StringLiteralContext | null;
public stringLiteral(i?: number): StringLiteralContext[] | StringLiteralContext | null {
if (i === undefined) {
return this.getRuleContexts(StringLiteralContext);
}
return this.getRuleContext(i, StringLiteralContext);
}
public REVISION(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.REVISION, 0)!;
}
public LBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.LBRACE, 0)!;
}
public RBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.RBRACE, 0)!;
}
public resourcePreamble(): ResourcePreambleContext[];
public resourcePreamble(i: number): ResourcePreambleContext | null;
public resourcePreamble(i?: number): ResourcePreambleContext[] | ResourcePreambleContext | null {
if (i === undefined) {
return this.getRuleContexts(ResourcePreambleContext);
}
return this.getRuleContext(i, ResourcePreambleContext);
}
public typeParameters(): TypeParametersContext | null {
return this.getRuleContext(0, TypeParametersContext);
}
public REQUIRES(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.REQUIRES, 0);
}
public interfaceType(): InterfaceTypeContext[];
public interfaceType(i: number): InterfaceTypeContext | null;
public interfaceType(i?: number): InterfaceTypeContext[] | InterfaceTypeContext | null {
if (i === undefined) {
return this.getRuleContexts(InterfaceTypeContext);
}
return this.getRuleContext(i, InterfaceTypeContext);
}
public interfaceMember(): InterfaceMemberContext[];
public interfaceMember(i: number): InterfaceMemberContext | null;
public interfaceMember(i?: number): InterfaceMemberContext[] | InterfaceMemberContext | null {
if (i === undefined) {
return this.getRuleContexts(InterfaceMemberContext);
}
return this.getRuleContext(i, InterfaceMemberContext);
}
public COMMA(): antlr.TerminalNode[];
public COMMA(i: number): antlr.TerminalNode | null;
public COMMA(i?: number): antlr.TerminalNode | null | antlr.TerminalNode[] {
if (i === undefined) {
return this.getTokens(QuixosCapabilityParser.COMMA);
} else {
return this.getToken(QuixosCapabilityParser.COMMA, i);
}
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_interfaceResourceDecl;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitInterfaceResourceDecl) {
return visitor.visitInterfaceResourceDecl(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class TypeParametersContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public LT(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.LT, 0)!;
}
public typeParameter(): TypeParameterContext[];
public typeParameter(i: number): TypeParameterContext | null;
public typeParameter(i?: number): TypeParameterContext[] | TypeParameterContext | null {
if (i === undefined) {
return this.getRuleContexts(TypeParameterContext);
}
return this.getRuleContext(i, TypeParameterContext);
}
public GT(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.GT, 0)!;
}
public COMMA(): antlr.TerminalNode[];
public COMMA(i: number): antlr.TerminalNode | null;
public COMMA(i?: number): antlr.TerminalNode | null | antlr.TerminalNode[] {
if (i === undefined) {
return this.getTokens(QuixosCapabilityParser.COMMA);
} else {
return this.getToken(QuixosCapabilityParser.COMMA, i);
}
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_typeParameters;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitTypeParameters) {
return visitor.visitTypeParameters(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class TypeParameterContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public VALUE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.VALUE, 0);
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public COLON(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.COLON, 0);
}
public STORABLE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.STORABLE, 0);
}
public OBJECT(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.OBJECT, 0);
}
public IMPLEMENTS(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.IMPLEMENTS, 0);
}
public interfaceType(): InterfaceTypeContext[];
public interfaceType(i: number): InterfaceTypeContext | null;
public interfaceType(i?: number): InterfaceTypeContext[] | InterfaceTypeContext | null {
if (i === undefined) {
return this.getRuleContexts(InterfaceTypeContext);
}
return this.getRuleContext(i, InterfaceTypeContext);
}
public AMP(): antlr.TerminalNode[];
public AMP(i: number): antlr.TerminalNode | null;
public AMP(i?: number): antlr.TerminalNode | null | antlr.TerminalNode[] {
if (i === undefined) {
return this.getTokens(QuixosCapabilityParser.AMP);
} else {
return this.getToken(QuixosCapabilityParser.AMP, i);
}
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_typeParameter;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitTypeParameter) {
return visitor.visitTypeParameter(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class InterfaceTypeContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public typeArguments(): TypeArgumentsContext | null {
return this.getRuleContext(0, TypeArgumentsContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_interfaceType;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitInterfaceType) {
return visitor.visitInterfaceType(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class TypeArgumentsContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public LT(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.LT, 0)!;
}
public typeArgument(): TypeArgumentContext[];
public typeArgument(i: number): TypeArgumentContext | null;
public typeArgument(i?: number): TypeArgumentContext[] | TypeArgumentContext | null {
if (i === undefined) {
return this.getRuleContexts(TypeArgumentContext);
}
return this.getRuleContext(i, TypeArgumentContext);
}
public GT(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.GT, 0)!;
}
public COMMA(): antlr.TerminalNode[];
public COMMA(i: number): antlr.TerminalNode | null;
public COMMA(i?: number): antlr.TerminalNode | null | antlr.TerminalNode[] {
if (i === undefined) {
return this.getTokens(QuixosCapabilityParser.COMMA);
} else {
return this.getToken(QuixosCapabilityParser.COMMA, i);
}
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_typeArguments;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitTypeArguments) {
return visitor.visitTypeArguments(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class TypeArgumentContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public ATOM(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.ATOM, 0);
}
public identifier(): IdentifierContext | null {
return this.getRuleContext(0, IdentifierContext);
}
public INTERFACE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.INTERFACE, 0);
}
public interfaceType(): InterfaceTypeContext | null {
return this.getRuleContext(0, InterfaceTypeContext);
}
public OBJECT(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.OBJECT, 0);
}
public valueType(): ValueTypeContext | null {
return this.getRuleContext(0, ValueTypeContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_typeArgument;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitTypeArgument) {
return visitor.visitTypeArgument(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class TypeAliasDeclContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public TYPE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.TYPE, 0)!;
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public EQUAL(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.EQUAL, 0)!;
}
public valueType(): ValueTypeContext {
return this.getRuleContext(0, ValueTypeContext)!;
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public typeParameters(): TypeParametersContext | null {
return this.getRuleContext(0, TypeParametersContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_typeAliasDecl;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitTypeAliasDecl) {
return visitor.visitTypeAliasDecl(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class InterfaceMemberContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public valueMember(): ValueMemberContext | null {
return this.getRuleContext(0, ValueMemberContext);
}
public relationshipMember(): RelationshipMemberContext | null {
return this.getRuleContext(0, RelationshipMemberContext);
}
public operationMember(): OperationMemberContext | null {
return this.getRuleContext(0, OperationMemberContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_interfaceMember;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitInterfaceMember) {
return visitor.visitInterfaceMember(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class OperationMemberContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public OPERATION(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.OPERATION, 0)!;
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public ID(): antlr.TerminalNode[];
public ID(i: number): antlr.TerminalNode | null;
public ID(i?: number): antlr.TerminalNode | null | antlr.TerminalNode[] {
if (i === undefined) {
return this.getTokens(QuixosCapabilityParser.ID);
} else {
return this.getToken(QuixosCapabilityParser.ID, i);
}
}
public stringLiteral(): StringLiteralContext[];
public stringLiteral(i: number): StringLiteralContext | null;
public stringLiteral(i?: number): StringLiteralContext[] | StringLiteralContext | null {
if (i === undefined) {
return this.getRuleContexts(StringLiteralContext);
}
return this.getRuleContext(i, StringLiteralContext);
}
public COLON(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.COLON, 0)!;
}
public valueType(): ValueTypeContext[];
public valueType(i: number): ValueTypeContext | null;
public valueType(i?: number): ValueTypeContext[] | ValueTypeContext | null {
if (i === undefined) {
return this.getRuleContexts(ValueTypeContext);
}
return this.getRuleContext(i, ValueTypeContext);
}
public ARROW(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ARROW, 0)!;
}
public LBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.LBRACE, 0)!;
}
public CALL(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.CALL, 0)!;
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public RBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.RBRACE, 0)!;
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_operationMember;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitOperationMember) {
return visitor.visitOperationMember(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class ValueMemberContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public VALUE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.VALUE, 0)!;
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public ID(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ID, 0)!;
}
public stringLiteral(): StringLiteralContext {
return this.getRuleContext(0, StringLiteralContext)!;
}
public COLON(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.COLON, 0)!;
}
public valueType(): ValueTypeContext {
return this.getRuleContext(0, ValueTypeContext)!;
}
public LBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.LBRACE, 0)!;
}
public RBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.RBRACE, 0)!;
}
public valueMemberOperation(): ValueMemberOperationContext[];
public valueMemberOperation(i: number): ValueMemberOperationContext | null;
public valueMemberOperation(i?: number): ValueMemberOperationContext[] | ValueMemberOperationContext | null {
if (i === undefined) {
return this.getRuleContexts(ValueMemberOperationContext);
}
return this.getRuleContext(i, ValueMemberOperationContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_valueMember;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitValueMember) {
return visitor.visitValueMember(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class ValueMemberOperationContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public GET(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.GET, 0);
}
public ID(): antlr.TerminalNode[];
public ID(i: number): antlr.TerminalNode | null;
public ID(i?: number): antlr.TerminalNode | null | antlr.TerminalNode[] {
if (i === undefined) {
return this.getTokens(QuixosCapabilityParser.ID);
} else {
return this.getToken(QuixosCapabilityParser.ID, i);
}
}
public stringLiteral(): StringLiteralContext[];
public stringLiteral(i: number): StringLiteralContext | null;
public stringLiteral(i?: number): StringLiteralContext[] | StringLiteralContext | null {
if (i === undefined) {
return this.getRuleContexts(StringLiteralContext);
}
return this.getRuleContext(i, StringLiteralContext);
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public SET(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.SET, 0);
}
public WATCH(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.WATCH, 0);
}
public START(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.START, 0);
}
public STOP(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.STOP, 0);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_valueMemberOperation;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitValueMemberOperation) {
return visitor.visitValueMemberOperation(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class RelationshipMemberContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public RELATION(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.RELATION, 0)!;
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public ID(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ID, 0)!;
}
public stringLiteral(): StringLiteralContext {
return this.getRuleContext(0, StringLiteralContext)!;
}
public COLON(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.COLON, 0)!;
}
public cardinality(): CardinalityContext {
return this.getRuleContext(0, CardinalityContext)!;
}
public targetConstraint(): TargetConstraintContext {
return this.getRuleContext(0, TargetConstraintContext)!;
}
public LBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.LBRACE, 0)!;
}
public RBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.RBRACE, 0)!;
}
public ORDERED(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.ORDERED, 0);
}
public relationshipOperation(): RelationshipOperationContext[];
public relationshipOperation(i: number): RelationshipOperationContext | null;
public relationshipOperation(i?: number): RelationshipOperationContext[] | RelationshipOperationContext | null {
if (i === undefined) {
return this.getRuleContexts(RelationshipOperationContext);
}
return this.getRuleContext(i, RelationshipOperationContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_relationshipMember;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitRelationshipMember) {
return visitor.visitRelationshipMember(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class RelationshipOperationContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public RESOLVE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.RESOLVE, 0);
}
public ID(): antlr.TerminalNode[];
public ID(i: number): antlr.TerminalNode | null;
public ID(i?: number): antlr.TerminalNode | null | antlr.TerminalNode[] {
if (i === undefined) {
return this.getTokens(QuixosCapabilityParser.ID);
} else {
return this.getToken(QuixosCapabilityParser.ID, i);
}
}
public stringLiteral(): StringLiteralContext[];
public stringLiteral(i: number): StringLiteralContext | null;
public stringLiteral(i?: number): StringLiteralContext[] | StringLiteralContext | null {
if (i === undefined) {
return this.getRuleContexts(StringLiteralContext);
}
return this.getRuleContext(i, StringLiteralContext);
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public CONNECT(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.CONNECT, 0);
}
public DISCONNECT(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.DISCONNECT, 0);
}
public WATCH(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.WATCH, 0);
}
public START(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.START, 0);
}
public STOP(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.STOP, 0);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_relationshipOperation;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitRelationshipOperation) {
return visitor.visitRelationshipOperation(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class TargetConstraintContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public ATOM(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.ATOM, 0);
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public INTERFACE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.INTERFACE, 0);
}
public typeArguments(): TypeArgumentsContext | null {
return this.getRuleContext(0, TypeArgumentsContext);
}
public OBJECT(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.OBJECT, 0);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_targetConstraint;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitTargetConstraint) {
return visitor.visitTargetConstraint(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class PackageResourceDeclContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public PACKAGE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.PACKAGE, 0)!;
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public ID(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ID, 0)!;
}
public stringLiteral(): StringLiteralContext[];
public stringLiteral(i: number): StringLiteralContext | null;
public stringLiteral(i?: number): StringLiteralContext[] | StringLiteralContext | null {
if (i === undefined) {
return this.getRuleContexts(StringLiteralContext);
}
return this.getRuleContext(i, StringLiteralContext);
}
public REVISION(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.REVISION, 0)!;
}
public LBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.LBRACE, 0)!;
}
public RBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.RBRACE, 0)!;
}
public resourcePreamble(): ResourcePreambleContext[];
public resourcePreamble(i: number): ResourcePreambleContext | null;
public resourcePreamble(i?: number): ResourcePreambleContext[] | ResourcePreambleContext | null {
if (i === undefined) {
return this.getRuleContexts(ResourcePreambleContext);
}
return this.getRuleContext(i, ResourcePreambleContext);
}
public SEMANTIC_MAJOR(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.SEMANTIC_MAJOR, 0);
}
public INTEGER(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.INTEGER, 0);
}
public packageExport(): PackageExportContext[];
public packageExport(i: number): PackageExportContext | null;
public packageExport(i?: number): PackageExportContext[] | PackageExportContext | null {
if (i === undefined) {
return this.getRuleContexts(PackageExportContext);
}
return this.getRuleContext(i, PackageExportContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_packageResourceDecl;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitPackageResourceDecl) {
return visitor.visitPackageResourceDecl(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class PackageExportContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public packageOperationExport(): PackageOperationExportContext | null {
return this.getRuleContext(0, PackageOperationExportContext);
}
public packageFunctionExport(): PackageFunctionExportContext | null {
return this.getRuleContext(0, PackageFunctionExportContext);
}
public packageConstructorExport(): PackageConstructorExportContext | null {
return this.getRuleContext(0, PackageConstructorExportContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_packageExport;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitPackageExport) {
return visitor.visitPackageExport(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class PackageOperationExportContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public OPERATION(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.OPERATION, 0)!;
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public ID(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ID, 0)!;
}
public stringLiteral(): StringLiteralContext {
return this.getRuleContext(0, StringLiteralContext)!;
}
public COLON(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.COLON, 0)!;
}
public valueType(): ValueTypeContext[];
public valueType(i: number): ValueTypeContext | null;
public valueType(i?: number): ValueTypeContext[] | ValueTypeContext | null {
if (i === undefined) {
return this.getRuleContexts(ValueTypeContext);
}
return this.getRuleContext(i, ValueTypeContext);
}
public ARROW(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ARROW, 0)!;
}
public MODE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.MODE, 0)!;
}
public operationMode(): OperationModeContext {
return this.getRuleContext(0, OperationModeContext)!;
}
public RECEIVER(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.RECEIVER, 0)!;
}
public receiverRequirement(): ReceiverRequirementContext {
return this.getRuleContext(0, ReceiverRequirementContext)!;
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public typeParameters(): TypeParametersContext | null {
return this.getRuleContext(0, TypeParametersContext);
}
public eventClause(): EventClauseContext | null {
return this.getRuleContext(0, EventClauseContext);
}
public dependencyBlock(): DependencyBlockContext | null {
return this.getRuleContext(0, DependencyBlockContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_packageOperationExport;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitPackageOperationExport) {
return visitor.visitPackageOperationExport(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class PackageFunctionExportContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public FUNCTION(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.FUNCTION, 0)!;
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public ID(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ID, 0)!;
}
public stringLiteral(): StringLiteralContext {
return this.getRuleContext(0, StringLiteralContext)!;
}
public COLON(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.COLON, 0)!;
}
public valueType(): ValueTypeContext[];
public valueType(i: number): ValueTypeContext | null;
public valueType(i?: number): ValueTypeContext[] | ValueTypeContext | null {
if (i === undefined) {
return this.getRuleContexts(ValueTypeContext);
}
return this.getRuleContext(i, ValueTypeContext);
}
public ARROW(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ARROW, 0)!;
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public typeParameters(): TypeParametersContext | null {
return this.getRuleContext(0, TypeParametersContext);
}
public dependencyBlock(): DependencyBlockContext | null {
return this.getRuleContext(0, DependencyBlockContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_packageFunctionExport;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitPackageFunctionExport) {
return visitor.visitPackageFunctionExport(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class PackageConstructorExportContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public CONSTRUCTOR(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.CONSTRUCTOR, 0)!;
}
public identifier(): IdentifierContext[];
public identifier(i: number): IdentifierContext | null;
public identifier(i?: number): IdentifierContext[] | IdentifierContext | null {
if (i === undefined) {
return this.getRuleContexts(IdentifierContext);
}
return this.getRuleContext(i, IdentifierContext);
}
public ID(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ID, 0)!;
}
public stringLiteral(): StringLiteralContext {
return this.getRuleContext(0, StringLiteralContext)!;
}
public CONSTRUCTS(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.CONSTRUCTS, 0)!;
}
public COLON(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.COLON, 0)!;
}
public valueType(): ValueTypeContext {
return this.getRuleContext(0, ValueTypeContext)!;
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public dependencyBlock(): DependencyBlockContext | null {
return this.getRuleContext(0, DependencyBlockContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_packageConstructorExport;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitPackageConstructorExport) {
return visitor.visitPackageConstructorExport(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class EventClauseContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public EMITS(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.EMITS, 0)!;
}
public valueType(): ValueTypeContext {
return this.getRuleContext(0, ValueTypeContext)!;
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_eventClause;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitEventClause) {
return visitor.visitEventClause(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class OperationModeContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public CALL(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.CALL, 0);
}
public WATCH_START(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.WATCH_START, 0);
}
public WATCH_STOP(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.WATCH_STOP, 0);
}
public SUBSCRIBE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.SUBSCRIBE, 0);
}
public UNSUBSCRIBE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.UNSUBSCRIBE, 0);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_operationMode;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitOperationMode) {
return visitor.visitOperationMode(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class ReceiverRequirementContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public ANY(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.ANY, 0);
}
public ATOM(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.ATOM, 0);
}
public identifier(): IdentifierContext | null {
return this.getRuleContext(0, IdentifierContext);
}
public OBJECT(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.OBJECT, 0);
}
public INTERFACES(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.INTERFACES, 0);
}
public LBRACK(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.LBRACK, 0);
}
public RBRACK(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.RBRACK, 0);
}
public interfaceType(): InterfaceTypeContext[];
public interfaceType(i: number): InterfaceTypeContext | null;
public interfaceType(i?: number): InterfaceTypeContext[] | InterfaceTypeContext | null {
if (i === undefined) {
return this.getRuleContexts(InterfaceTypeContext);
}
return this.getRuleContext(i, InterfaceTypeContext);
}
public COMMA(): antlr.TerminalNode[];
public COMMA(i: number): antlr.TerminalNode | null;
public COMMA(i?: number): antlr.TerminalNode | null | antlr.TerminalNode[] {
if (i === undefined) {
return this.getTokens(QuixosCapabilityParser.COMMA);
} else {
return this.getToken(QuixosCapabilityParser.COMMA, i);
}
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_receiverRequirement;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitReceiverRequirement) {
return visitor.visitReceiverRequirement(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class IdentifierListContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public identifier(): IdentifierContext[];
public identifier(i: number): IdentifierContext | null;
public identifier(i?: number): IdentifierContext[] | IdentifierContext | null {
if (i === undefined) {
return this.getRuleContexts(IdentifierContext);
}
return this.getRuleContext(i, IdentifierContext);
}
public COMMA(): antlr.TerminalNode[];
public COMMA(i: number): antlr.TerminalNode | null;
public COMMA(i?: number): antlr.TerminalNode | null | antlr.TerminalNode[] {
if (i === undefined) {
return this.getTokens(QuixosCapabilityParser.COMMA);
} else {
return this.getToken(QuixosCapabilityParser.COMMA, i);
}
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_identifierList;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitIdentifierList) {
return visitor.visitIdentifierList(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class DependencyBlockContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public REQUIRES(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.REQUIRES, 0)!;
}
public LBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.LBRACE, 0)!;
}
public RBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.RBRACE, 0)!;
}
public dependencyPort(): DependencyPortContext[];
public dependencyPort(i: number): DependencyPortContext | null;
public dependencyPort(i?: number): DependencyPortContext[] | DependencyPortContext | null {
if (i === undefined) {
return this.getRuleContexts(DependencyPortContext);
}
return this.getRuleContext(i, DependencyPortContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_dependencyBlock;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitDependencyBlock) {
return visitor.visitDependencyBlock(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class DependencyPortContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public STATE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.STATE, 0);
}
public identifier(): IdentifierContext[];
public identifier(i: number): IdentifierContext | null;
public identifier(i?: number): IdentifierContext[] | IdentifierContext | null {
if (i === undefined) {
return this.getRuleContexts(IdentifierContext);
}
return this.getRuleContext(i, IdentifierContext);
}
public ID(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ID, 0)!;
}
public stringLiteral(): StringLiteralContext {
return this.getRuleContext(0, StringLiteralContext)!;
}
public COLON(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.COLON, 0)!;
}
public valueType(): ValueTypeContext | null {
return this.getRuleContext(0, ValueTypeContext);
}
public primitiveList(): PrimitiveListContext | null {
return this.getRuleContext(0, PrimitiveListContext);
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public EDGE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.EDGE, 0);
}
public cardinality(): CardinalityContext | null {
return this.getRuleContext(0, CardinalityContext);
}
public targetConstraint(): TargetConstraintContext | null {
return this.getRuleContext(0, TargetConstraintContext);
}
public INTERFACE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.INTERFACE, 0);
}
public typeArguments(): TypeArgumentsContext | null {
return this.getRuleContext(0, TypeArgumentsContext);
}
public CONSTRUCTOR(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.CONSTRUCTOR, 0);
}
public INPUT(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.INPUT, 0);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_dependencyPort;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitDependencyPort) {
return visitor.visitDependencyPort(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class PrimitiveListContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public LBRACK(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.LBRACK, 0)!;
}
public primitive(): PrimitiveContext[];
public primitive(i: number): PrimitiveContext | null;
public primitive(i?: number): PrimitiveContext[] | PrimitiveContext | null {
if (i === undefined) {
return this.getRuleContexts(PrimitiveContext);
}
return this.getRuleContext(i, PrimitiveContext);
}
public RBRACK(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.RBRACK, 0)!;
}
public COMMA(): antlr.TerminalNode[];
public COMMA(i: number): antlr.TerminalNode | null;
public COMMA(i?: number): antlr.TerminalNode | null | antlr.TerminalNode[] {
if (i === undefined) {
return this.getTokens(QuixosCapabilityParser.COMMA);
} else {
return this.getToken(QuixosCapabilityParser.COMMA, i);
}
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_primitiveList;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitPrimitiveList) {
return visitor.visitPrimitiveList(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class PrimitiveContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public READ(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.READ, 0);
}
public WRITE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.WRITE, 0);
}
public RESOLVE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.RESOLVE, 0);
}
public CONNECT(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.CONNECT, 0);
}
public DISCONNECT(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.DISCONNECT, 0);
}
public WATCH_START(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.WATCH_START, 0);
}
public WATCH_STOP(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.WATCH_STOP, 0);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_primitive;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitPrimitive) {
return visitor.visitPrimitive(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class SharedAttachmentDeclContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public SHARED(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SHARED, 0)!;
}
public attachmentDecl(): AttachmentDeclContext {
return this.getRuleContext(0, AttachmentDeclContext)!;
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_sharedAttachmentDecl;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitSharedAttachmentDecl) {
return visitor.visitSharedAttachmentDecl(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class AttachmentDeclContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public stateDecl(): StateDeclContext | null {
return this.getRuleContext(0, StateDeclContext);
}
public edgeDecl(): EdgeDeclContext | null {
return this.getRuleContext(0, EdgeDeclContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_attachmentDecl;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitAttachmentDecl) {
return visitor.visitAttachmentDecl(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class StateDeclContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public STATE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.STATE, 0)!;
}
public identifier(): IdentifierContext[];
public identifier(i: number): IdentifierContext | null;
public identifier(i?: number): IdentifierContext[] | IdentifierContext | null {
if (i === undefined) {
return this.getRuleContexts(IdentifierContext);
}
return this.getRuleContext(i, IdentifierContext);
}
public ID(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ID, 0)!;
}
public stringLiteral(): StringLiteralContext {
return this.getRuleContext(0, StringLiteralContext)!;
}
public ON(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ON, 0)!;
}
public COLON(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.COLON, 0)!;
}
public valueType(): ValueTypeContext {
return this.getRuleContext(0, ValueTypeContext)!;
}
public POLICY(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.POLICY, 0)!;
}
public storagePolicy(): StoragePolicyContext {
return this.getRuleContext(0, StoragePolicyContext)!;
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public DEFAULT(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.DEFAULT, 0);
}
public jsonLiteral(): JsonLiteralContext | null {
return this.getRuleContext(0, JsonLiteralContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_stateDecl;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitStateDecl) {
return visitor.visitStateDecl(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class StoragePolicyContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public OPTIMISTIC_REGISTER(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.OPTIMISTIC_REGISTER, 0);
}
public CRDT(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.CRDT, 0);
}
public LPAREN(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.LPAREN, 0);
}
public valueType(): ValueTypeContext | null {
return this.getRuleContext(0, ValueTypeContext);
}
public RPAREN(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.RPAREN, 0);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_storagePolicy;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitStoragePolicy) {
return visitor.visitStoragePolicy(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class EdgeDeclContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public EDGE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.EDGE, 0)!;
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public ID(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ID, 0)!;
}
public stringLiteral(): StringLiteralContext {
return this.getRuleContext(0, StringLiteralContext)!;
}
public LBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.LBRACE, 0)!;
}
public edgeEndpoint(): EdgeEndpointContext[];
public edgeEndpoint(i: number): EdgeEndpointContext | null;
public edgeEndpoint(i?: number): EdgeEndpointContext[] | EdgeEndpointContext | null {
if (i === undefined) {
return this.getRuleContexts(EdgeEndpointContext);
}
return this.getRuleContext(i, EdgeEndpointContext);
}
public RBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.RBRACE, 0)!;
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_edgeDecl;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitEdgeDecl) {
return visitor.visitEdgeDecl(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class EdgeEndpointContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public targetConstraint(): TargetConstraintContext {
return this.getRuleContext(0, TargetConstraintContext)!;
}
public PROJECTION(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.PROJECTION, 0)!;
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public ID(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ID, 0)!;
}
public stringLiteral(): StringLiteralContext[];
public stringLiteral(i: number): StringLiteralContext | null;
public stringLiteral(i?: number): StringLiteralContext[] | StringLiteralContext | null {
if (i === undefined) {
return this.getRuleContexts(StringLiteralContext);
}
return this.getRuleContext(i, StringLiteralContext);
}
public cardinality(): CardinalityContext {
return this.getRuleContext(0, CardinalityContext)!;
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public ORDERED(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.ORDERED, 0);
}
public ON_DELETE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.ON_DELETE, 0);
}
public RETAIN_OTHER(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.RETAIN_OTHER, 0);
}
public KEYED(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.KEYED, 0);
}
public PUBLIC_TRAVERSAL(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.PUBLIC_TRAVERSAL, 0);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_edgeEndpoint;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitEdgeEndpoint) {
return visitor.visitEdgeEndpoint(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class ConformanceDeclContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public CONFORM(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.CONFORM, 0)!;
}
public identifier(): IdentifierContext[];
public identifier(i: number): IdentifierContext | null;
public identifier(i?: number): IdentifierContext[] | IdentifierContext | null {
if (i === undefined) {
return this.getRuleContexts(IdentifierContext);
}
return this.getRuleContext(i, IdentifierContext);
}
public AS(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.AS, 0)!;
}
public LBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.LBRACE, 0)!;
}
public RBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.RBRACE, 0)!;
}
public typeArguments(): TypeArgumentsContext | null {
return this.getRuleContext(0, TypeArgumentsContext);
}
public ID(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.ID, 0);
}
public stringLiteral(): StringLiteralContext | null {
return this.getRuleContext(0, StringLiteralContext);
}
public SEMANTIC_MAJOR(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.SEMANTIC_MAJOR, 0);
}
public INTEGER(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.INTEGER, 0);
}
public conformanceItem(): ConformanceItemContext[];
public conformanceItem(i: number): ConformanceItemContext | null;
public conformanceItem(i?: number): ConformanceItemContext[] | ConformanceItemContext | null {
if (i === undefined) {
return this.getRuleContexts(ConformanceItemContext);
}
return this.getRuleContext(i, ConformanceItemContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_conformanceDecl;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitConformanceDecl) {
return visitor.visitConformanceDecl(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class ConformanceItemContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public PRIVATE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.PRIVATE, 0);
}
public attachmentDecl(): AttachmentDeclContext | null {
return this.getRuleContext(0, AttachmentDeclContext);
}
public operationBindingDecl(): OperationBindingDeclContext | null {
return this.getRuleContext(0, OperationBindingDeclContext);
}
public relationshipMaterializationDecl(): RelationshipMaterializationDeclContext | null {
return this.getRuleContext(0, RelationshipMaterializationDeclContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_conformanceItem;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitConformanceItem) {
return visitor.visitConformanceItem(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class RelationshipMaterializationDeclContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public MATERIALIZE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.MATERIALIZE, 0)!;
}
public identifier(): IdentifierContext[];
public identifier(i: number): IdentifierContext | null;
public identifier(i?: number): IdentifierContext[] | IdentifierContext | null {
if (i === undefined) {
return this.getRuleContexts(IdentifierContext);
}
return this.getRuleContext(i, IdentifierContext);
}
public IF(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.IF, 0)!;
}
public ABSENT(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.ABSENT, 0)!;
}
public USING(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.USING, 0)!;
}
public CONSTRUCTOR(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.CONSTRUCTOR, 0)!;
}
public VIA(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.VIA, 0)!;
}
public EDGE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.EDGE, 0)!;
}
public DOT(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.DOT, 0)!;
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_relationshipMaterializationDecl;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitRelationshipMaterializationDecl) {
return visitor.visitRelationshipMaterializationDecl(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class OperationBindingDeclContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public BIND(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.BIND, 0)!;
}
public memberOperationRef(): MemberOperationRefContext {
return this.getRuleContext(0, MemberOperationRefContext)!;
}
public TO(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.TO, 0)!;
}
public operationProvider(): OperationProviderContext {
return this.getRuleContext(0, OperationProviderContext)!;
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_operationBindingDecl;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitOperationBindingDecl) {
return visitor.visitOperationBindingDecl(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class MemberOperationRefContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public DOT(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.DOT, 0)!;
}
public operationName(): OperationNameContext {
return this.getRuleContext(0, OperationNameContext)!;
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_memberOperationRef;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitMemberOperationRef) {
return visitor.visitMemberOperationRef(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class OperationNameContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public identifier(): IdentifierContext | null {
return this.getRuleContext(0, IdentifierContext);
}
public CALL(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.CALL, 0);
}
public GET(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.GET, 0);
}
public SET(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.SET, 0);
}
public RESOLVE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.RESOLVE, 0);
}
public CONNECT(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.CONNECT, 0);
}
public DISCONNECT(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.DISCONNECT, 0);
}
public WATCH_START(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.WATCH_START, 0);
}
public WATCH_STOP(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.WATCH_STOP, 0);
}
public SUBSCRIBE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.SUBSCRIBE, 0);
}
public UNSUBSCRIBE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.UNSUBSCRIBE, 0);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_operationName;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitOperationName) {
return visitor.visitOperationName(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class OperationProviderContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public STATE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.STATE, 0);
}
public identifier(): IdentifierContext[];
public identifier(i: number): IdentifierContext | null;
public identifier(i?: number): IdentifierContext[] | IdentifierContext | null {
if (i === undefined) {
return this.getRuleContexts(IdentifierContext);
}
return this.getRuleContext(i, IdentifierContext);
}
public DOT(): antlr.TerminalNode[];
public DOT(i: number): antlr.TerminalNode | null;
public DOT(i?: number): antlr.TerminalNode | null | antlr.TerminalNode[] {
if (i === undefined) {
return this.getTokens(QuixosCapabilityParser.DOT);
} else {
return this.getToken(QuixosCapabilityParser.DOT, i);
}
}
public statePrimitive(): StatePrimitiveContext | null {
return this.getRuleContext(0, StatePrimitiveContext);
}
public EDGE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.EDGE, 0);
}
public edgePrimitive(): EdgePrimitiveContext | null {
return this.getRuleContext(0, EdgePrimitiveContext);
}
public PACKAGE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.PACKAGE, 0);
}
public typeArguments(): TypeArgumentsContext | null {
return this.getRuleContext(0, TypeArgumentsContext);
}
public dependencyBindingBlock(): DependencyBindingBlockContext | null {
return this.getRuleContext(0, DependencyBindingBlockContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_operationProvider;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitOperationProvider) {
return visitor.visitOperationProvider(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class StatePrimitiveContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public READ(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.READ, 0);
}
public WRITE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.WRITE, 0);
}
public WATCH_START(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.WATCH_START, 0);
}
public WATCH_STOP(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.WATCH_STOP, 0);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_statePrimitive;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitStatePrimitive) {
return visitor.visitStatePrimitive(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class EdgePrimitiveContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public RESOLVE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.RESOLVE, 0);
}
public CONNECT(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.CONNECT, 0);
}
public DISCONNECT(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.DISCONNECT, 0);
}
public WATCH_START(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.WATCH_START, 0);
}
public WATCH_STOP(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.WATCH_STOP, 0);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_edgePrimitive;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitEdgePrimitive) {
return visitor.visitEdgePrimitive(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class DependencyBindingBlockContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public WITH(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.WITH, 0)!;
}
public LBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.LBRACE, 0)!;
}
public RBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.RBRACE, 0)!;
}
public dependencyBinding(): DependencyBindingContext[];
public dependencyBinding(i: number): DependencyBindingContext | null;
public dependencyBinding(i?: number): DependencyBindingContext[] | DependencyBindingContext | null {
if (i === undefined) {
return this.getRuleContexts(DependencyBindingContext);
}
return this.getRuleContext(i, DependencyBindingContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_dependencyBindingBlock;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitDependencyBindingBlock) {
return visitor.visitDependencyBindingBlock(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class DependencyBindingContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public identifier(): IdentifierContext[];
public identifier(i: number): IdentifierContext | null;
public identifier(i?: number): IdentifierContext[] | IdentifierContext | null {
if (i === undefined) {
return this.getRuleContexts(IdentifierContext);
}
return this.getRuleContext(i, IdentifierContext);
}
public TO(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.TO, 0)!;
}
public STATE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.STATE, 0);
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public VIA(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.VIA, 0);
}
public EDGE(): antlr.TerminalNode[];
public EDGE(i: number): antlr.TerminalNode | null;
public EDGE(i?: number): antlr.TerminalNode | null | antlr.TerminalNode[] {
if (i === undefined) {
return this.getTokens(QuixosCapabilityParser.EDGE);
} else {
return this.getToken(QuixosCapabilityParser.EDGE, i);
}
}
public DOT(): antlr.TerminalNode[];
public DOT(i: number): antlr.TerminalNode | null;
public DOT(i?: number): antlr.TerminalNode | null | antlr.TerminalNode[] {
if (i === undefined) {
return this.getTokens(QuixosCapabilityParser.DOT);
} else {
return this.getToken(QuixosCapabilityParser.DOT, i);
}
}
public INTERFACE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.INTERFACE, 0);
}
public typeArguments(): TypeArgumentsContext | null {
return this.getRuleContext(0, TypeArgumentsContext);
}
public CONSTRUCTOR(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.CONSTRUCTOR, 0);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_dependencyBinding;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitDependencyBinding) {
return visitor.visitDependencyBinding(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class ConstructorBindingDeclContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public CONSTRUCTOR(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.CONSTRUCTOR, 0)!;
}
public identifier(): IdentifierContext[];
public identifier(i: number): IdentifierContext | null;
public identifier(i?: number): IdentifierContext[] | IdentifierContext | null {
if (i === undefined) {
return this.getRuleContexts(IdentifierContext);
}
return this.getRuleContext(i, IdentifierContext);
}
public TO(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.TO, 0)!;
}
public DOT(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.DOT, 0)!;
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public dependencyBindingBlock(): DependencyBindingBlockContext | null {
return this.getRuleContext(0, DependencyBindingBlockContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_constructorBindingDecl;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitConstructorBindingDecl) {
return visitor.visitConstructorBindingDecl(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class ValueTypeContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public scalarType(): ScalarTypeContext | null {
return this.getRuleContext(0, ScalarTypeContext);
}
public UNIT(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.UNIT, 0);
}
public WATCH_HANDLE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.WATCH_HANDLE, 0);
}
public MESSAGE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.MESSAGE, 0);
}
public stringLiteral(): StringLiteralContext | null {
return this.getRuleContext(0, StringLiteralContext);
}
public ATOM_REF(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.ATOM_REF, 0);
}
public LT(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.LT, 0);
}
public identifier(): IdentifierContext | null {
return this.getRuleContext(0, IdentifierContext);
}
public GT(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.GT, 0);
}
public INTERFACE_REF(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.INTERFACE_REF, 0);
}
public typeArguments(): TypeArgumentsContext | null {
return this.getRuleContext(0, TypeArgumentsContext);
}
public REF(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.REF, 0);
}
public OPTIONAL(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.OPTIONAL, 0);
}
public valueType(): ValueTypeContext | null {
return this.getRuleContext(0, ValueTypeContext);
}
public LIST(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.LIST, 0);
}
public RECORD(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.RECORD, 0);
}
public LBRACE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.LBRACE, 0);
}
public RBRACE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.RBRACE, 0);
}
public recordField(): RecordFieldContext[];
public recordField(i: number): RecordFieldContext | null;
public recordField(i?: number): RecordFieldContext[] | RecordFieldContext | null {
if (i === undefined) {
return this.getRuleContexts(RecordFieldContext);
}
return this.getRuleContext(i, RecordFieldContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_valueType;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitValueType) {
return visitor.visitValueType(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class RecordFieldContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public identifier(): IdentifierContext {
return this.getRuleContext(0, IdentifierContext)!;
}
public COLON(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.COLON, 0)!;
}
public valueType(): ValueTypeContext {
return this.getRuleContext(0, ValueTypeContext)!;
}
public SEMI(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.SEMI, 0)!;
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_recordField;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitRecordField) {
return visitor.visitRecordField(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class ScalarTypeContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public BOOL(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.BOOL, 0);
}
public BYTES(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.BYTES, 0);
}
public DOUBLE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.DOUBLE, 0);
}
public INT32(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.INT32, 0);
}
public INT64(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.INT64, 0);
}
public STRING(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.STRING, 0);
}
public UINT32(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.UINT32, 0);
}
public UINT64(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.UINT64, 0);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_scalarType;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitScalarType) {
return visitor.visitScalarType(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class CardinalityContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public OPTIONAL_ONE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.OPTIONAL_ONE, 0);
}
public EXACTLY_ONE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.EXACTLY_ONE, 0);
}
public MANY(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.MANY, 0);
}
public MANY_UNIQUE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.MANY_UNIQUE, 0);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_cardinality;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitCardinality) {
return visitor.visitCardinality(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class JsonLiteralContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public stringLiteral(): StringLiteralContext | null {
return this.getRuleContext(0, StringLiteralContext);
}
public INTEGER(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.INTEGER, 0);
}
public JSON_NUMBER(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.JSON_NUMBER, 0);
}
public TRUE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.TRUE, 0);
}
public FALSE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.FALSE, 0);
}
public NULL(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.NULL, 0);
}
public jsonObject(): JsonObjectContext | null {
return this.getRuleContext(0, JsonObjectContext);
}
public jsonArray(): JsonArrayContext | null {
return this.getRuleContext(0, JsonArrayContext);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_jsonLiteral;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitJsonLiteral) {
return visitor.visitJsonLiteral(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class JsonObjectContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public LBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.LBRACE, 0)!;
}
public RBRACE(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.RBRACE, 0)!;
}
public jsonMember(): JsonMemberContext[];
public jsonMember(i: number): JsonMemberContext | null;
public jsonMember(i?: number): JsonMemberContext[] | JsonMemberContext | null {
if (i === undefined) {
return this.getRuleContexts(JsonMemberContext);
}
return this.getRuleContext(i, JsonMemberContext);
}
public COMMA(): antlr.TerminalNode[];
public COMMA(i: number): antlr.TerminalNode | null;
public COMMA(i?: number): antlr.TerminalNode | null | antlr.TerminalNode[] {
if (i === undefined) {
return this.getTokens(QuixosCapabilityParser.COMMA);
} else {
return this.getToken(QuixosCapabilityParser.COMMA, i);
}
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_jsonObject;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitJsonObject) {
return visitor.visitJsonObject(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class JsonMemberContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public stringLiteral(): StringLiteralContext {
return this.getRuleContext(0, StringLiteralContext)!;
}
public COLON(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.COLON, 0)!;
}
public jsonLiteral(): JsonLiteralContext {
return this.getRuleContext(0, JsonLiteralContext)!;
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_jsonMember;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitJsonMember) {
return visitor.visitJsonMember(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class JsonArrayContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public LBRACK(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.LBRACK, 0)!;
}
public RBRACK(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.RBRACK, 0)!;
}
public jsonLiteral(): JsonLiteralContext[];
public jsonLiteral(i: number): JsonLiteralContext | null;
public jsonLiteral(i?: number): JsonLiteralContext[] | JsonLiteralContext | null {
if (i === undefined) {
return this.getRuleContexts(JsonLiteralContext);
}
return this.getRuleContext(i, JsonLiteralContext);
}
public COMMA(): antlr.TerminalNode[];
public COMMA(i: number): antlr.TerminalNode | null;
public COMMA(i?: number): antlr.TerminalNode | null | antlr.TerminalNode[] {
if (i === undefined) {
return this.getTokens(QuixosCapabilityParser.COMMA);
} else {
return this.getToken(QuixosCapabilityParser.COMMA, i);
}
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_jsonArray;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitJsonArray) {
return visitor.visitJsonArray(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class IdentifierContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public IDENTIFIER(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.IDENTIFIER, 0);
}
public SOURCE(): antlr.TerminalNode | null {
return this.getToken(QuixosCapabilityParser.SOURCE, 0);
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_identifier;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitIdentifier) {
return visitor.visitIdentifier(this);
} else {
return visitor.visitChildren(this);
}
}
}
export class StringLiteralContext extends antlr.ParserRuleContext {
public constructor(parent: antlr.ParserRuleContext | null, invokingState: number) {
super(parent, invokingState);
}
public STRING_LITERAL(): antlr.TerminalNode {
return this.getToken(QuixosCapabilityParser.STRING_LITERAL, 0)!;
}
public override get ruleIndex(): number {
return QuixosCapabilityParser.RULE_stringLiteral;
}
public override accept<Result>(visitor: QuixosCapabilityVisitor<Result>): Result | null {
if (visitor.visitStringLiteral) {
return visitor.visitStringLiteral(this);
} else {
return visitor.visitChildren(this);
}
}
}