All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.graphwalker.dsl.yed.YEdVertexParser Maven / Gradle / Ivy

The newest version!
// Generated from org/graphwalker/dsl/yed/YEdVertexParser.g4 by ANTLR 4.13.1
package org.graphwalker.dsl.yed;
import org.antlr.v4.runtime.atn.*;
import org.antlr.v4.runtime.dfa.DFA;
import org.antlr.v4.runtime.*;
import org.antlr.v4.runtime.misc.*;
import org.antlr.v4.runtime.tree.*;
import java.util.List;
import java.util.Iterator;
import java.util.ArrayList;

@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast", "CheckReturnValue"})
public class YEdVertexParser extends Parser {
	static { RuntimeMetaData.checkVersion("4.13.1", RuntimeMetaData.VERSION); }

	protected static final DFA[] _decisionToDFA;
	protected static final PredictionContextCache _sharedContextCache =
		new PredictionContextCache();
	public static final int
		DOT=1, SLASH=2, COLON=3, SEMICOLON=4, COMMA=5, ASSIGN=6, BLOCKED=7, SHARED=8, 
		INIT=9, START=10, REQTAG=11, WEIGHT=12, DEPENDENCY=13, NestedBrackets=14, 
		Identifier=15, String=16, Value=17, COMMENT=18, LINE_COMMENT=19, WHITESPACE=20, 
		ANY=21;
	public static final int
		RULE_parse = 0, RULE_field = 1, RULE_start = 2, RULE_shared = 3, RULE_names = 4, 
		RULE_name = 5, RULE_blocked = 6, RULE_actions = 7, RULE_action = 8, RULE_reqtags = 9, 
		RULE_reqtagList = 10, RULE_reqtag = 11;
	private static String[] makeRuleNames() {
		return new String[] {
			"parse", "field", "start", "shared", "names", "name", "blocked", "actions", 
			"action", "reqtags", "reqtagList", "reqtag"
		};
	}
	public static final String[] ruleNames = makeRuleNames();

	private static String[] makeLiteralNames() {
		return new String[] {
			null, "'.'", "'/'", "':'", "';'", "','", "'='", "'BLOCKED'", "'SHARED'", 
			"'INIT'", null, "'REQTAG'"
		};
	}
	private static final String[] _LITERAL_NAMES = makeLiteralNames();
	private static String[] makeSymbolicNames() {
		return new String[] {
			null, "DOT", "SLASH", "COLON", "SEMICOLON", "COMMA", "ASSIGN", "BLOCKED", 
			"SHARED", "INIT", "START", "REQTAG", "WEIGHT", "DEPENDENCY", "NestedBrackets", 
			"Identifier", "String", "Value", "COMMENT", "LINE_COMMENT", "WHITESPACE", 
			"ANY"
		};
	}
	private static final String[] _SYMBOLIC_NAMES = makeSymbolicNames();
	public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES);

	/**
	 * @deprecated Use {@link #VOCABULARY} instead.
	 */
	@Deprecated
	public static final String[] tokenNames;
	static {
		tokenNames = new String[_SYMBOLIC_NAMES.length];
		for (int i = 0; i < tokenNames.length; i++) {
			tokenNames[i] = VOCABULARY.getLiteralName(i);
			if (tokenNames[i] == null) {
				tokenNames[i] = VOCABULARY.getSymbolicName(i);
			}

			if (tokenNames[i] == null) {
				tokenNames[i] = "";
			}
		}
	}

	@Override
	@Deprecated
	public String[] getTokenNames() {
		return tokenNames;
	}

	@Override

	public Vocabulary getVocabulary() {
		return VOCABULARY;
	}

	@Override
	public String getGrammarFileName() { return "YEdVertexParser.g4"; }

	@Override
	public String[] getRuleNames() { return ruleNames; }

	@Override
	public String getSerializedATN() { return _serializedATN; }

	@Override
	public ATN getATN() { return _ATN; }

	public YEdVertexParser(TokenStream input) {
		super(input);
		_interp = new ParserATNSimulator(this,_ATN,_decisionToDFA,_sharedContextCache);
	}

	@SuppressWarnings("CheckReturnValue")
	public static class ParseContext extends ParserRuleContext {
		public java.util.Set fields = new java.util.HashSet();;
		public StartContext start() {
			return getRuleContext(StartContext.class,0);
		}
		public TerminalNode EOF() { return getToken(YEdVertexParser.EOF, 0); }
		public List field() {
			return getRuleContexts(FieldContext.class);
		}
		public FieldContext field(int i) {
			return getRuleContext(FieldContext.class,i);
		}
		public ParseContext(ParserRuleContext parent, int invokingState) {
			super(parent, invokingState);
		}
		@Override public int getRuleIndex() { return RULE_parse; }
		@Override
		public void enterRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).enterParse(this);
		}
		@Override
		public void exitRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).exitParse(this);
		}
	}

	public final ParseContext parse() throws RecognitionException {
		ParseContext _localctx = new ParseContext(_ctx, getState());
		enterRule(_localctx, 0, RULE_parse);
		try {
			int _alt;
			setState(32);
			_errHandler.sync(this);
			switch ( getInterpreter().adaptivePredict(_input,1,_ctx) ) {
			case 1:
				enterOuterAlt(_localctx, 1);
				{
				setState(24);
				start();
				}
				break;
			case 2:
				enterOuterAlt(_localctx, 2);
				{
				setState(28);
				_errHandler.sync(this);
				_alt = getInterpreter().adaptivePredict(_input,0,_ctx);
				while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) {
					if ( _alt==1 ) {
						{
						{
						setState(25);
						field();
						}
						} 
					}
					setState(30);
					_errHandler.sync(this);
					_alt = getInterpreter().adaptivePredict(_input,0,_ctx);
				}
				setState(31);
				match(EOF);
				}
				break;
			}
		}
		catch (RecognitionException re) {
			_localctx.exception = re;
			_errHandler.reportError(this, re);
			_errHandler.recover(this, re);
		}
		finally {
			exitRule();
		}
		return _localctx;
	}

	@SuppressWarnings("CheckReturnValue")
	public static class FieldContext extends ParserRuleContext {
		public NamesContext names() {
			return getRuleContext(NamesContext.class,0);
		}
		public SharedContext shared() {
			return getRuleContext(SharedContext.class,0);
		}
		public BlockedContext blocked() {
			return getRuleContext(BlockedContext.class,0);
		}
		public ActionsContext actions() {
			return getRuleContext(ActionsContext.class,0);
		}
		public ReqtagsContext reqtags() {
			return getRuleContext(ReqtagsContext.class,0);
		}
		public TerminalNode WHITESPACE() { return getToken(YEdVertexParser.WHITESPACE, 0); }
		public FieldContext(ParserRuleContext parent, int invokingState) {
			super(parent, invokingState);
		}
		@Override public int getRuleIndex() { return RULE_field; }
		@Override
		public void enterRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).enterField(this);
		}
		@Override
		public void exitRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).exitField(this);
		}
	}

	public final FieldContext field() throws RecognitionException {
		FieldContext _localctx = new FieldContext(_ctx, getState());
		enterRule(_localctx, 2, RULE_field);
		try {
			setState(55);
			_errHandler.sync(this);
			switch ( getInterpreter().adaptivePredict(_input,2,_ctx) ) {
			case 1:
				enterOuterAlt(_localctx, 1);
				{
				setState(34);
				if (!(!((ParseContext)getInvokingContext(0)).fields.contains("names"))) throw new FailedPredicateException(this, "!$parse::fields.contains(\"names\")");
				setState(35);
				names();
				((ParseContext)getInvokingContext(0)).fields.add("names");
				}
				break;
			case 2:
				enterOuterAlt(_localctx, 2);
				{
				setState(38);
				if (!(!((ParseContext)getInvokingContext(0)).fields.contains("shared"))) throw new FailedPredicateException(this, "!$parse::fields.contains(\"shared\")");
				setState(39);
				shared();
				((ParseContext)getInvokingContext(0)).fields.add("shared");
				}
				break;
			case 3:
				enterOuterAlt(_localctx, 3);
				{
				setState(42);
				if (!(!((ParseContext)getInvokingContext(0)).fields.contains("blocked"))) throw new FailedPredicateException(this, "!$parse::fields.contains(\"blocked\")");
				setState(43);
				blocked();
				((ParseContext)getInvokingContext(0)).fields.add("blocked");
				}
				break;
			case 4:
				enterOuterAlt(_localctx, 4);
				{
				setState(46);
				if (!(!((ParseContext)getInvokingContext(0)).fields.contains("actions"))) throw new FailedPredicateException(this, "!$parse::fields.contains(\"actions\")");
				setState(47);
				actions();
				((ParseContext)getInvokingContext(0)).fields.add("actions");
				}
				break;
			case 5:
				enterOuterAlt(_localctx, 5);
				{
				setState(50);
				if (!(!((ParseContext)getInvokingContext(0)).fields.contains("reqtags"))) throw new FailedPredicateException(this, "!$parse::fields.contains(\"reqtags\")");
				setState(51);
				reqtags();
				((ParseContext)getInvokingContext(0)).fields.add("reqtags");
				}
				break;
			case 6:
				enterOuterAlt(_localctx, 6);
				{
				setState(54);
				match(WHITESPACE);
				}
				break;
			}
		}
		catch (RecognitionException re) {
			_localctx.exception = re;
			_errHandler.reportError(this, re);
			_errHandler.recover(this, re);
		}
		finally {
			exitRule();
		}
		return _localctx;
	}

	@SuppressWarnings("CheckReturnValue")
	public static class StartContext extends ParserRuleContext {
		public TerminalNode START() { return getToken(YEdVertexParser.START, 0); }
		public List WHITESPACE() { return getTokens(YEdVertexParser.WHITESPACE); }
		public TerminalNode WHITESPACE(int i) {
			return getToken(YEdVertexParser.WHITESPACE, i);
		}
		public StartContext(ParserRuleContext parent, int invokingState) {
			super(parent, invokingState);
		}
		@Override public int getRuleIndex() { return RULE_start; }
		@Override
		public void enterRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).enterStart(this);
		}
		@Override
		public void exitRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).exitStart(this);
		}
	}

	public final StartContext start() throws RecognitionException {
		StartContext _localctx = new StartContext(_ctx, getState());
		enterRule(_localctx, 4, RULE_start);
		int _la;
		try {
			enterOuterAlt(_localctx, 1);
			{
			setState(60);
			_errHandler.sync(this);
			_la = _input.LA(1);
			while (_la==WHITESPACE) {
				{
				{
				setState(57);
				match(WHITESPACE);
				}
				}
				setState(62);
				_errHandler.sync(this);
				_la = _input.LA(1);
			}
			{
			setState(63);
			match(START);
			}
			setState(67);
			_errHandler.sync(this);
			_la = _input.LA(1);
			while (_la==WHITESPACE) {
				{
				{
				setState(64);
				match(WHITESPACE);
				}
				}
				setState(69);
				_errHandler.sync(this);
				_la = _input.LA(1);
			}
			}
		}
		catch (RecognitionException re) {
			_localctx.exception = re;
			_errHandler.reportError(this, re);
			_errHandler.recover(this, re);
		}
		finally {
			exitRule();
		}
		return _localctx;
	}

	@SuppressWarnings("CheckReturnValue")
	public static class SharedContext extends ParserRuleContext {
		public TerminalNode SHARED() { return getToken(YEdVertexParser.SHARED, 0); }
		public TerminalNode COLON() { return getToken(YEdVertexParser.COLON, 0); }
		public TerminalNode Identifier() { return getToken(YEdVertexParser.Identifier, 0); }
		public List WHITESPACE() { return getTokens(YEdVertexParser.WHITESPACE); }
		public TerminalNode WHITESPACE(int i) {
			return getToken(YEdVertexParser.WHITESPACE, i);
		}
		public SharedContext(ParserRuleContext parent, int invokingState) {
			super(parent, invokingState);
		}
		@Override public int getRuleIndex() { return RULE_shared; }
		@Override
		public void enterRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).enterShared(this);
		}
		@Override
		public void exitRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).exitShared(this);
		}
	}

	public final SharedContext shared() throws RecognitionException {
		SharedContext _localctx = new SharedContext(_ctx, getState());
		enterRule(_localctx, 6, RULE_shared);
		int _la;
		try {
			enterOuterAlt(_localctx, 1);
			{
			setState(70);
			match(SHARED);
			setState(74);
			_errHandler.sync(this);
			_la = _input.LA(1);
			while (_la==WHITESPACE) {
				{
				{
				setState(71);
				match(WHITESPACE);
				}
				}
				setState(76);
				_errHandler.sync(this);
				_la = _input.LA(1);
			}
			setState(77);
			match(COLON);
			setState(81);
			_errHandler.sync(this);
			_la = _input.LA(1);
			while (_la==WHITESPACE) {
				{
				{
				setState(78);
				match(WHITESPACE);
				}
				}
				setState(83);
				_errHandler.sync(this);
				_la = _input.LA(1);
			}
			setState(84);
			match(Identifier);
			}
		}
		catch (RecognitionException re) {
			_localctx.exception = re;
			_errHandler.reportError(this, re);
			_errHandler.recover(this, re);
		}
		finally {
			exitRule();
		}
		return _localctx;
	}

	@SuppressWarnings("CheckReturnValue")
	public static class NamesContext extends ParserRuleContext {
		public List name() {
			return getRuleContexts(NameContext.class);
		}
		public NameContext name(int i) {
			return getRuleContext(NameContext.class,i);
		}
		public List SEMICOLON() { return getTokens(YEdVertexParser.SEMICOLON); }
		public TerminalNode SEMICOLON(int i) {
			return getToken(YEdVertexParser.SEMICOLON, i);
		}
		public NamesContext(ParserRuleContext parent, int invokingState) {
			super(parent, invokingState);
		}
		@Override public int getRuleIndex() { return RULE_names; }
		@Override
		public void enterRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).enterNames(this);
		}
		@Override
		public void exitRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).exitNames(this);
		}
	}

	public final NamesContext names() throws RecognitionException {
		NamesContext _localctx = new NamesContext(_ctx, getState());
		enterRule(_localctx, 8, RULE_names);
		try {
			int _alt;
			enterOuterAlt(_localctx, 1);
			{
			setState(86);
			name();
			setState(91);
			_errHandler.sync(this);
			_alt = getInterpreter().adaptivePredict(_input,7,_ctx);
			while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) {
				if ( _alt==1 ) {
					{
					{
					setState(87);
					match(SEMICOLON);
					setState(88);
					name();
					}
					} 
				}
				setState(93);
				_errHandler.sync(this);
				_alt = getInterpreter().adaptivePredict(_input,7,_ctx);
			}
			}
		}
		catch (RecognitionException re) {
			_localctx.exception = re;
			_errHandler.reportError(this, re);
			_errHandler.recover(this, re);
		}
		finally {
			exitRule();
		}
		return _localctx;
	}

	@SuppressWarnings("CheckReturnValue")
	public static class NameContext extends ParserRuleContext {
		public List Identifier() { return getTokens(YEdVertexParser.Identifier); }
		public TerminalNode Identifier(int i) {
			return getToken(YEdVertexParser.Identifier, i);
		}
		public List DOT() { return getTokens(YEdVertexParser.DOT); }
		public TerminalNode DOT(int i) {
			return getToken(YEdVertexParser.DOT, i);
		}
		public NameContext(ParserRuleContext parent, int invokingState) {
			super(parent, invokingState);
		}
		@Override public int getRuleIndex() { return RULE_name; }
		@Override
		public void enterRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).enterName(this);
		}
		@Override
		public void exitRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).exitName(this);
		}
	}

	public final NameContext name() throws RecognitionException {
		NameContext _localctx = new NameContext(_ctx, getState());
		enterRule(_localctx, 10, RULE_name);
		try {
			int _alt;
			enterOuterAlt(_localctx, 1);
			{
			setState(94);
			match(Identifier);
			setState(99);
			_errHandler.sync(this);
			_alt = getInterpreter().adaptivePredict(_input,8,_ctx);
			while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) {
				if ( _alt==1 ) {
					{
					{
					setState(95);
					match(DOT);
					setState(96);
					match(Identifier);
					}
					} 
				}
				setState(101);
				_errHandler.sync(this);
				_alt = getInterpreter().adaptivePredict(_input,8,_ctx);
			}
			}
		}
		catch (RecognitionException re) {
			_localctx.exception = re;
			_errHandler.reportError(this, re);
			_errHandler.recover(this, re);
		}
		finally {
			exitRule();
		}
		return _localctx;
	}

	@SuppressWarnings("CheckReturnValue")
	public static class BlockedContext extends ParserRuleContext {
		public TerminalNode BLOCKED() { return getToken(YEdVertexParser.BLOCKED, 0); }
		public BlockedContext(ParserRuleContext parent, int invokingState) {
			super(parent, invokingState);
		}
		@Override public int getRuleIndex() { return RULE_blocked; }
		@Override
		public void enterRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).enterBlocked(this);
		}
		@Override
		public void exitRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).exitBlocked(this);
		}
	}

	public final BlockedContext blocked() throws RecognitionException {
		BlockedContext _localctx = new BlockedContext(_ctx, getState());
		enterRule(_localctx, 12, RULE_blocked);
		try {
			enterOuterAlt(_localctx, 1);
			{
			setState(102);
			match(BLOCKED);
			}
		}
		catch (RecognitionException re) {
			_localctx.exception = re;
			_errHandler.reportError(this, re);
			_errHandler.recover(this, re);
		}
		finally {
			exitRule();
		}
		return _localctx;
	}

	@SuppressWarnings("CheckReturnValue")
	public static class ActionsContext extends ParserRuleContext {
		public TerminalNode INIT() { return getToken(YEdVertexParser.INIT, 0); }
		public TerminalNode COLON() { return getToken(YEdVertexParser.COLON, 0); }
		public List WHITESPACE() { return getTokens(YEdVertexParser.WHITESPACE); }
		public TerminalNode WHITESPACE(int i) {
			return getToken(YEdVertexParser.WHITESPACE, i);
		}
		public List action() {
			return getRuleContexts(ActionContext.class);
		}
		public ActionContext action(int i) {
			return getRuleContext(ActionContext.class,i);
		}
		public ActionsContext(ParserRuleContext parent, int invokingState) {
			super(parent, invokingState);
		}
		@Override public int getRuleIndex() { return RULE_actions; }
		@Override
		public void enterRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).enterActions(this);
		}
		@Override
		public void exitRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).exitActions(this);
		}
	}

	public final ActionsContext actions() throws RecognitionException {
		ActionsContext _localctx = new ActionsContext(_ctx, getState());
		enterRule(_localctx, 14, RULE_actions);
		int _la;
		try {
			int _alt;
			enterOuterAlt(_localctx, 1);
			{
			setState(104);
			match(INIT);
			setState(108);
			_errHandler.sync(this);
			_la = _input.LA(1);
			while (_la==WHITESPACE) {
				{
				{
				setState(105);
				match(WHITESPACE);
				}
				}
				setState(110);
				_errHandler.sync(this);
				_la = _input.LA(1);
			}
			setState(111);
			match(COLON);
			setState(115);
			_errHandler.sync(this);
			_alt = getInterpreter().adaptivePredict(_input,10,_ctx);
			while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) {
				if ( _alt==1 ) {
					{
					{
					setState(112);
					match(WHITESPACE);
					}
					} 
				}
				setState(117);
				_errHandler.sync(this);
				_alt = getInterpreter().adaptivePredict(_input,10,_ctx);
			}
			setState(119); 
			_errHandler.sync(this);
			_alt = 1;
			do {
				switch (_alt) {
				case 1:
					{
					{
					setState(118);
					action();
					}
					}
					break;
				default:
					throw new NoViableAltException(this);
				}
				setState(121); 
				_errHandler.sync(this);
				_alt = getInterpreter().adaptivePredict(_input,11,_ctx);
			} while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER );
			}
		}
		catch (RecognitionException re) {
			_localctx.exception = re;
			_errHandler.reportError(this, re);
			_errHandler.recover(this, re);
		}
		finally {
			exitRule();
		}
		return _localctx;
	}

	@SuppressWarnings("CheckReturnValue")
	public static class ActionContext extends ParserRuleContext {
		public TerminalNode SEMICOLON() { return getToken(YEdVertexParser.SEMICOLON, 0); }
		public ActionContext(ParserRuleContext parent, int invokingState) {
			super(parent, invokingState);
		}
		@Override public int getRuleIndex() { return RULE_action; }
		@Override
		public void enterRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).enterAction(this);
		}
		@Override
		public void exitRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).exitAction(this);
		}
	}

	public final ActionContext action() throws RecognitionException {
		ActionContext _localctx = new ActionContext(_ctx, getState());
		enterRule(_localctx, 16, RULE_action);
		try {
			int _alt;
			enterOuterAlt(_localctx, 1);
			{
			setState(124); 
			_errHandler.sync(this);
			_alt = 1;
			do {
				switch (_alt) {
				case 1:
					{
					{
					setState(123);
					matchWildcard();
					}
					}
					break;
				default:
					throw new NoViableAltException(this);
				}
				setState(126); 
				_errHandler.sync(this);
				_alt = getInterpreter().adaptivePredict(_input,12,_ctx);
			} while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER );
			setState(128);
			match(SEMICOLON);
			}
		}
		catch (RecognitionException re) {
			_localctx.exception = re;
			_errHandler.reportError(this, re);
			_errHandler.recover(this, re);
		}
		finally {
			exitRule();
		}
		return _localctx;
	}

	@SuppressWarnings("CheckReturnValue")
	public static class ReqtagsContext extends ParserRuleContext {
		public TerminalNode REQTAG() { return getToken(YEdVertexParser.REQTAG, 0); }
		public ReqtagListContext reqtagList() {
			return getRuleContext(ReqtagListContext.class,0);
		}
		public TerminalNode COLON() { return getToken(YEdVertexParser.COLON, 0); }
		public TerminalNode ASSIGN() { return getToken(YEdVertexParser.ASSIGN, 0); }
		public List WHITESPACE() { return getTokens(YEdVertexParser.WHITESPACE); }
		public TerminalNode WHITESPACE(int i) {
			return getToken(YEdVertexParser.WHITESPACE, i);
		}
		public ReqtagsContext(ParserRuleContext parent, int invokingState) {
			super(parent, invokingState);
		}
		@Override public int getRuleIndex() { return RULE_reqtags; }
		@Override
		public void enterRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).enterReqtags(this);
		}
		@Override
		public void exitRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).exitReqtags(this);
		}
	}

	public final ReqtagsContext reqtags() throws RecognitionException {
		ReqtagsContext _localctx = new ReqtagsContext(_ctx, getState());
		enterRule(_localctx, 18, RULE_reqtags);
		int _la;
		try {
			int _alt;
			enterOuterAlt(_localctx, 1);
			{
			setState(130);
			match(REQTAG);
			setState(134);
			_errHandler.sync(this);
			_la = _input.LA(1);
			while (_la==WHITESPACE) {
				{
				{
				setState(131);
				match(WHITESPACE);
				}
				}
				setState(136);
				_errHandler.sync(this);
				_la = _input.LA(1);
			}
			setState(137);
			_la = _input.LA(1);
			if ( !(_la==COLON || _la==ASSIGN) ) {
			_errHandler.recoverInline(this);
			}
			else {
				if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
				_errHandler.reportMatch(this);
				consume();
			}
			setState(141);
			_errHandler.sync(this);
			_alt = getInterpreter().adaptivePredict(_input,14,_ctx);
			while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) {
				if ( _alt==1 ) {
					{
					{
					setState(138);
					match(WHITESPACE);
					}
					} 
				}
				setState(143);
				_errHandler.sync(this);
				_alt = getInterpreter().adaptivePredict(_input,14,_ctx);
			}
			setState(144);
			reqtagList();
			}
		}
		catch (RecognitionException re) {
			_localctx.exception = re;
			_errHandler.reportError(this, re);
			_errHandler.recover(this, re);
		}
		finally {
			exitRule();
		}
		return _localctx;
	}

	@SuppressWarnings("CheckReturnValue")
	public static class ReqtagListContext extends ParserRuleContext {
		public List reqtag() {
			return getRuleContexts(ReqtagContext.class);
		}
		public ReqtagContext reqtag(int i) {
			return getRuleContext(ReqtagContext.class,i);
		}
		public List COMMA() { return getTokens(YEdVertexParser.COMMA); }
		public TerminalNode COMMA(int i) {
			return getToken(YEdVertexParser.COMMA, i);
		}
		public List WHITESPACE() { return getTokens(YEdVertexParser.WHITESPACE); }
		public TerminalNode WHITESPACE(int i) {
			return getToken(YEdVertexParser.WHITESPACE, i);
		}
		public ReqtagListContext(ParserRuleContext parent, int invokingState) {
			super(parent, invokingState);
		}
		@Override public int getRuleIndex() { return RULE_reqtagList; }
		@Override
		public void enterRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).enterReqtagList(this);
		}
		@Override
		public void exitRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).exitReqtagList(this);
		}
	}

	public final ReqtagListContext reqtagList() throws RecognitionException {
		ReqtagListContext _localctx = new ReqtagListContext(_ctx, getState());
		enterRule(_localctx, 20, RULE_reqtagList);
		int _la;
		try {
			int _alt;
			enterOuterAlt(_localctx, 1);
			{
			setState(162);
			_errHandler.sync(this);
			_alt = getInterpreter().adaptivePredict(_input,17,_ctx);
			while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) {
				if ( _alt==1 ) {
					{
					{
					setState(146);
					reqtag();
					setState(150);
					_errHandler.sync(this);
					_la = _input.LA(1);
					while (_la==WHITESPACE) {
						{
						{
						setState(147);
						match(WHITESPACE);
						}
						}
						setState(152);
						_errHandler.sync(this);
						_la = _input.LA(1);
					}
					setState(153);
					match(COMMA);
					setState(157);
					_errHandler.sync(this);
					_alt = getInterpreter().adaptivePredict(_input,16,_ctx);
					while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER ) {
						if ( _alt==1 ) {
							{
							{
							setState(154);
							match(WHITESPACE);
							}
							} 
						}
						setState(159);
						_errHandler.sync(this);
						_alt = getInterpreter().adaptivePredict(_input,16,_ctx);
					}
					}
					} 
				}
				setState(164);
				_errHandler.sync(this);
				_alt = getInterpreter().adaptivePredict(_input,17,_ctx);
			}
			setState(165);
			reqtag();
			}
		}
		catch (RecognitionException re) {
			_localctx.exception = re;
			_errHandler.reportError(this, re);
			_errHandler.recover(this, re);
		}
		finally {
			exitRule();
		}
		return _localctx;
	}

	@SuppressWarnings("CheckReturnValue")
	public static class ReqtagContext extends ParserRuleContext {
		public List COMMA() { return getTokens(YEdVertexParser.COMMA); }
		public TerminalNode COMMA(int i) {
			return getToken(YEdVertexParser.COMMA, i);
		}
		public ReqtagContext(ParserRuleContext parent, int invokingState) {
			super(parent, invokingState);
		}
		@Override public int getRuleIndex() { return RULE_reqtag; }
		@Override
		public void enterRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).enterReqtag(this);
		}
		@Override
		public void exitRule(ParseTreeListener listener) {
			if ( listener instanceof YEdVertexParserListener ) ((YEdVertexParserListener)listener).exitReqtag(this);
		}
	}

	public final ReqtagContext reqtag() throws RecognitionException {
		ReqtagContext _localctx = new ReqtagContext(_ctx, getState());
		enterRule(_localctx, 22, RULE_reqtag);
		int _la;
		try {
			int _alt;
			enterOuterAlt(_localctx, 1);
			{
			setState(168); 
			_errHandler.sync(this);
			_alt = 1;
			do {
				switch (_alt) {
				case 1:
					{
					{
					setState(167);
					_la = _input.LA(1);
					if ( _la <= 0 || (_la==COMMA) ) {
					_errHandler.recoverInline(this);
					}
					else {
						if ( _input.LA(1)==Token.EOF ) matchedEOF = true;
						_errHandler.reportMatch(this);
						consume();
					}
					}
					}
					break;
				default:
					throw new NoViableAltException(this);
				}
				setState(170); 
				_errHandler.sync(this);
				_alt = getInterpreter().adaptivePredict(_input,18,_ctx);
			} while ( _alt!=2 && _alt!=org.antlr.v4.runtime.atn.ATN.INVALID_ALT_NUMBER );
			}
		}
		catch (RecognitionException re) {
			_localctx.exception = re;
			_errHandler.reportError(this, re);
			_errHandler.recover(this, re);
		}
		finally {
			exitRule();
		}
		return _localctx;
	}

	public boolean sempred(RuleContext _localctx, int ruleIndex, int predIndex) {
		switch (ruleIndex) {
		case 1:
			return field_sempred((FieldContext)_localctx, predIndex);
		}
		return true;
	}
	private boolean field_sempred(FieldContext _localctx, int predIndex) {
		switch (predIndex) {
		case 0:
			return !((ParseContext)getInvokingContext(0)).fields.contains("names");
		case 1:
			return !((ParseContext)getInvokingContext(0)).fields.contains("shared");
		case 2:
			return !((ParseContext)getInvokingContext(0)).fields.contains("blocked");
		case 3:
			return !((ParseContext)getInvokingContext(0)).fields.contains("actions");
		case 4:
			return !((ParseContext)getInvokingContext(0)).fields.contains("reqtags");
		}
		return true;
	}

	public static final String _serializedATN =
		"\u0004\u0001\u0015\u00ad\u0002\u0000\u0007\u0000\u0002\u0001\u0007\u0001"+
		"\u0002\u0002\u0007\u0002\u0002\u0003\u0007\u0003\u0002\u0004\u0007\u0004"+
		"\u0002\u0005\u0007\u0005\u0002\u0006\u0007\u0006\u0002\u0007\u0007\u0007"+
		"\u0002\b\u0007\b\u0002\t\u0007\t\u0002\n\u0007\n\u0002\u000b\u0007\u000b"+
		"\u0001\u0000\u0001\u0000\u0005\u0000\u001b\b\u0000\n\u0000\f\u0000\u001e"+
		"\t\u0000\u0001\u0000\u0003\u0000!\b\u0000\u0001\u0001\u0001\u0001\u0001"+
		"\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001"+
		"\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001"+
		"\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001"+
		"\u0001\u0003\u00018\b\u0001\u0001\u0002\u0005\u0002;\b\u0002\n\u0002\f"+
		"\u0002>\t\u0002\u0001\u0002\u0001\u0002\u0005\u0002B\b\u0002\n\u0002\f"+
		"\u0002E\t\u0002\u0001\u0003\u0001\u0003\u0005\u0003I\b\u0003\n\u0003\f"+
		"\u0003L\t\u0003\u0001\u0003\u0001\u0003\u0005\u0003P\b\u0003\n\u0003\f"+
		"\u0003S\t\u0003\u0001\u0003\u0001\u0003\u0001\u0004\u0001\u0004\u0001"+
		"\u0004\u0005\u0004Z\b\u0004\n\u0004\f\u0004]\t\u0004\u0001\u0005\u0001"+
		"\u0005\u0001\u0005\u0005\u0005b\b\u0005\n\u0005\f\u0005e\t\u0005\u0001"+
		"\u0006\u0001\u0006\u0001\u0007\u0001\u0007\u0005\u0007k\b\u0007\n\u0007"+
		"\f\u0007n\t\u0007\u0001\u0007\u0001\u0007\u0005\u0007r\b\u0007\n\u0007"+
		"\f\u0007u\t\u0007\u0001\u0007\u0004\u0007x\b\u0007\u000b\u0007\f\u0007"+
		"y\u0001\b\u0004\b}\b\b\u000b\b\f\b~\u0001\b\u0001\b\u0001\t\u0001\t\u0005"+
		"\t\u0085\b\t\n\t\f\t\u0088\t\t\u0001\t\u0001\t\u0005\t\u008c\b\t\n\t\f"+
		"\t\u008f\t\t\u0001\t\u0001\t\u0001\n\u0001\n\u0005\n\u0095\b\n\n\n\f\n"+
		"\u0098\t\n\u0001\n\u0001\n\u0005\n\u009c\b\n\n\n\f\n\u009f\t\n\u0005\n"+
		"\u00a1\b\n\n\n\f\n\u00a4\t\n\u0001\n\u0001\n\u0001\u000b\u0004\u000b\u00a9"+
		"\b\u000b\u000b\u000b\f\u000b\u00aa\u0001\u000b\u0000\u0000\f\u0000\u0002"+
		"\u0004\u0006\b\n\f\u000e\u0010\u0012\u0014\u0016\u0000\u0002\u0002\u0000"+
		"\u0003\u0003\u0006\u0006\u0001\u0000\u0005\u0005\u00b7\u0000 \u0001\u0000"+
		"\u0000\u0000\u00027\u0001\u0000\u0000\u0000\u0004<\u0001\u0000\u0000\u0000"+
		"\u0006F\u0001\u0000\u0000\u0000\bV\u0001\u0000\u0000\u0000\n^\u0001\u0000"+
		"\u0000\u0000\ff\u0001\u0000\u0000\u0000\u000eh\u0001\u0000\u0000\u0000"+
		"\u0010|\u0001\u0000\u0000\u0000\u0012\u0082\u0001\u0000\u0000\u0000\u0014"+
		"\u00a2\u0001\u0000\u0000\u0000\u0016\u00a8\u0001\u0000\u0000\u0000\u0018"+
		"!\u0003\u0004\u0002\u0000\u0019\u001b\u0003\u0002\u0001\u0000\u001a\u0019"+
		"\u0001\u0000\u0000\u0000\u001b\u001e\u0001\u0000\u0000\u0000\u001c\u001a"+
		"\u0001\u0000\u0000\u0000\u001c\u001d\u0001\u0000\u0000\u0000\u001d\u001f"+
		"\u0001\u0000\u0000\u0000\u001e\u001c\u0001\u0000\u0000\u0000\u001f!\u0005"+
		"\u0000\u0000\u0001 \u0018\u0001\u0000\u0000\u0000 \u001c\u0001\u0000\u0000"+
		"\u0000!\u0001\u0001\u0000\u0000\u0000\"#\u0004\u0001\u0000\u0001#$\u0003"+
		"\b\u0004\u0000$%\u0006\u0001\uffff\uffff\u0000%8\u0001\u0000\u0000\u0000"+
		"&\'\u0004\u0001\u0001\u0001\'(\u0003\u0006\u0003\u0000()\u0006\u0001\uffff"+
		"\uffff\u0000)8\u0001\u0000\u0000\u0000*+\u0004\u0001\u0002\u0001+,\u0003"+
		"\f\u0006\u0000,-\u0006\u0001\uffff\uffff\u0000-8\u0001\u0000\u0000\u0000"+
		"./\u0004\u0001\u0003\u0001/0\u0003\u000e\u0007\u000001\u0006\u0001\uffff"+
		"\uffff\u000018\u0001\u0000\u0000\u000023\u0004\u0001\u0004\u000134\u0003"+
		"\u0012\t\u000045\u0006\u0001\uffff\uffff\u000058\u0001\u0000\u0000\u0000"+
		"68\u0005\u0014\u0000\u00007\"\u0001\u0000\u0000\u00007&\u0001\u0000\u0000"+
		"\u00007*\u0001\u0000\u0000\u00007.\u0001\u0000\u0000\u000072\u0001\u0000"+
		"\u0000\u000076\u0001\u0000\u0000\u00008\u0003\u0001\u0000\u0000\u0000"+
		"9;\u0005\u0014\u0000\u0000:9\u0001\u0000\u0000\u0000;>\u0001\u0000\u0000"+
		"\u0000<:\u0001\u0000\u0000\u0000<=\u0001\u0000\u0000\u0000=?\u0001\u0000"+
		"\u0000\u0000><\u0001\u0000\u0000\u0000?C\u0005\n\u0000\u0000@B\u0005\u0014"+
		"\u0000\u0000A@\u0001\u0000\u0000\u0000BE\u0001\u0000\u0000\u0000CA\u0001"+
		"\u0000\u0000\u0000CD\u0001\u0000\u0000\u0000D\u0005\u0001\u0000\u0000"+
		"\u0000EC\u0001\u0000\u0000\u0000FJ\u0005\b\u0000\u0000GI\u0005\u0014\u0000"+
		"\u0000HG\u0001\u0000\u0000\u0000IL\u0001\u0000\u0000\u0000JH\u0001\u0000"+
		"\u0000\u0000JK\u0001\u0000\u0000\u0000KM\u0001\u0000\u0000\u0000LJ\u0001"+
		"\u0000\u0000\u0000MQ\u0005\u0003\u0000\u0000NP\u0005\u0014\u0000\u0000"+
		"ON\u0001\u0000\u0000\u0000PS\u0001\u0000\u0000\u0000QO\u0001\u0000\u0000"+
		"\u0000QR\u0001\u0000\u0000\u0000RT\u0001\u0000\u0000\u0000SQ\u0001\u0000"+
		"\u0000\u0000TU\u0005\u000f\u0000\u0000U\u0007\u0001\u0000\u0000\u0000"+
		"V[\u0003\n\u0005\u0000WX\u0005\u0004\u0000\u0000XZ\u0003\n\u0005\u0000"+
		"YW\u0001\u0000\u0000\u0000Z]\u0001\u0000\u0000\u0000[Y\u0001\u0000\u0000"+
		"\u0000[\\\u0001\u0000\u0000\u0000\\\t\u0001\u0000\u0000\u0000][\u0001"+
		"\u0000\u0000\u0000^c\u0005\u000f\u0000\u0000_`\u0005\u0001\u0000\u0000"+
		"`b\u0005\u000f\u0000\u0000a_\u0001\u0000\u0000\u0000be\u0001\u0000\u0000"+
		"\u0000ca\u0001\u0000\u0000\u0000cd\u0001\u0000\u0000\u0000d\u000b\u0001"+
		"\u0000\u0000\u0000ec\u0001\u0000\u0000\u0000fg\u0005\u0007\u0000\u0000"+
		"g\r\u0001\u0000\u0000\u0000hl\u0005\t\u0000\u0000ik\u0005\u0014\u0000"+
		"\u0000ji\u0001\u0000\u0000\u0000kn\u0001\u0000\u0000\u0000lj\u0001\u0000"+
		"\u0000\u0000lm\u0001\u0000\u0000\u0000mo\u0001\u0000\u0000\u0000nl\u0001"+
		"\u0000\u0000\u0000os\u0005\u0003\u0000\u0000pr\u0005\u0014\u0000\u0000"+
		"qp\u0001\u0000\u0000\u0000ru\u0001\u0000\u0000\u0000sq\u0001\u0000\u0000"+
		"\u0000st\u0001\u0000\u0000\u0000tw\u0001\u0000\u0000\u0000us\u0001\u0000"+
		"\u0000\u0000vx\u0003\u0010\b\u0000wv\u0001\u0000\u0000\u0000xy\u0001\u0000"+
		"\u0000\u0000yw\u0001\u0000\u0000\u0000yz\u0001\u0000\u0000\u0000z\u000f"+
		"\u0001\u0000\u0000\u0000{}\t\u0000\u0000\u0000|{\u0001\u0000\u0000\u0000"+
		"}~\u0001\u0000\u0000\u0000~|\u0001\u0000\u0000\u0000~\u007f\u0001\u0000"+
		"\u0000\u0000\u007f\u0080\u0001\u0000\u0000\u0000\u0080\u0081\u0005\u0004"+
		"\u0000\u0000\u0081\u0011\u0001\u0000\u0000\u0000\u0082\u0086\u0005\u000b"+
		"\u0000\u0000\u0083\u0085\u0005\u0014\u0000\u0000\u0084\u0083\u0001\u0000"+
		"\u0000\u0000\u0085\u0088\u0001\u0000\u0000\u0000\u0086\u0084\u0001\u0000"+
		"\u0000\u0000\u0086\u0087\u0001\u0000\u0000\u0000\u0087\u0089\u0001\u0000"+
		"\u0000\u0000\u0088\u0086\u0001\u0000\u0000\u0000\u0089\u008d\u0007\u0000"+
		"\u0000\u0000\u008a\u008c\u0005\u0014\u0000\u0000\u008b\u008a\u0001\u0000"+
		"\u0000\u0000\u008c\u008f\u0001\u0000\u0000\u0000\u008d\u008b\u0001\u0000"+
		"\u0000\u0000\u008d\u008e\u0001\u0000\u0000\u0000\u008e\u0090\u0001\u0000"+
		"\u0000\u0000\u008f\u008d\u0001\u0000\u0000\u0000\u0090\u0091\u0003\u0014"+
		"\n\u0000\u0091\u0013\u0001\u0000\u0000\u0000\u0092\u0096\u0003\u0016\u000b"+
		"\u0000\u0093\u0095\u0005\u0014\u0000\u0000\u0094\u0093\u0001\u0000\u0000"+
		"\u0000\u0095\u0098\u0001\u0000\u0000\u0000\u0096\u0094\u0001\u0000\u0000"+
		"\u0000\u0096\u0097\u0001\u0000\u0000\u0000\u0097\u0099\u0001\u0000\u0000"+
		"\u0000\u0098\u0096\u0001\u0000\u0000\u0000\u0099\u009d\u0005\u0005\u0000"+
		"\u0000\u009a\u009c\u0005\u0014\u0000\u0000\u009b\u009a\u0001\u0000\u0000"+
		"\u0000\u009c\u009f\u0001\u0000\u0000\u0000\u009d\u009b\u0001\u0000\u0000"+
		"\u0000\u009d\u009e\u0001\u0000\u0000\u0000\u009e\u00a1\u0001\u0000\u0000"+
		"\u0000\u009f\u009d\u0001\u0000\u0000\u0000\u00a0\u0092\u0001\u0000\u0000"+
		"\u0000\u00a1\u00a4\u0001\u0000\u0000\u0000\u00a2\u00a0\u0001\u0000\u0000"+
		"\u0000\u00a2\u00a3\u0001\u0000\u0000\u0000\u00a3\u00a5\u0001\u0000\u0000"+
		"\u0000\u00a4\u00a2\u0001\u0000\u0000\u0000\u00a5\u00a6\u0003\u0016\u000b"+
		"\u0000\u00a6\u0015\u0001\u0000\u0000\u0000\u00a7\u00a9\b\u0001\u0000\u0000"+
		"\u00a8\u00a7\u0001\u0000\u0000\u0000\u00a9\u00aa\u0001\u0000\u0000\u0000"+
		"\u00aa\u00a8\u0001\u0000\u0000\u0000\u00aa\u00ab\u0001\u0000\u0000\u0000"+
		"\u00ab\u0017\u0001\u0000\u0000\u0000\u0013\u001c 7




© 2015 - 2025 Weber Informatics LLC | Privacy Policy