// Generated from org/jdbi/v3/core/internal/lexer/HashStatementLexer.g4 by ANTLR 4.7.2
package org.jdbi.v3.core.internal.lexer;
import org.antlr.v4.runtime.Lexer;
import org.antlr.v4.runtime.CharStream;
import org.antlr.v4.runtime.Token;
import org.antlr.v4.runtime.TokenStream;
import org.antlr.v4.runtime.*;
import org.antlr.v4.runtime.atn.*;
import org.antlr.v4.runtime.dfa.DFA;
import org.antlr.v4.runtime.misc.*;

@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast"})
public class HashStatementLexer extends Lexer {
	static { RuntimeMetaData.checkVersion("4.7.2", RuntimeMetaData.VERSION); }

	protected static final DFA[] _decisionToDFA;
	protected static final PredictionContextCache _sharedContextCache =
		new PredictionContextCache();
	public static final int
		COMMENT=1, QUOTED_TEXT=2, DOUBLE_QUOTED_TEXT=3, ESCAPED_TEXT=4, NAMED_PARAM=5, 
		POSITIONAL_PARAM=6, LITERAL=7;
	public static String[] channelNames = {
		"DEFAULT_TOKEN_CHANNEL", "HIDDEN"
	};

	public static String[] modeNames = {
		"DEFAULT_MODE"
	};

	private static String[] makeRuleNames() {
		return new String[] {
			"QUOTE", "ESCAPE", "ESCAPE_QUOTE", "DOUBLE_QUOTE", "HASH", "QUESTION", 
			"DOUBLE_QUESTION", "NAME", "JAVA_LETTER", "COMMENT", "QUOTED_TEXT", "DOUBLE_QUOTED_TEXT", 
			"ESCAPED_TEXT", "NAMED_PARAM", "POSITIONAL_PARAM", "LITERAL"
		};
	}
	public static final String[] ruleNames = makeRuleNames();

	private static String[] makeLiteralNames() {
		return new String[] {
		};
	}
	private static final String[] _LITERAL_NAMES = makeLiteralNames();
	private static String[] makeSymbolicNames() {
		return new String[] {
			null, "COMMENT", "QUOTED_TEXT", "DOUBLE_QUOTED_TEXT", "ESCAPED_TEXT", 
			"NAMED_PARAM", "POSITIONAL_PARAM", "LITERAL"
		};
	}
	private static final String[] _SYMBOLIC_NAMES = makeSymbolicNames();
	public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES);

	
Deprecated:Use VOCABULARY instead.
/** * @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] = "<INVALID>"; } } } @Override @Deprecated public String[] getTokenNames() { return tokenNames; } @Override public Vocabulary getVocabulary() { return VOCABULARY; } public HashStatementLexer(CharStream input) { super(input); _interp = new LexerATNSimulator(this,_ATN,_decisionToDFA,_sharedContextCache); } @Override public String getGrammarFileName() { return "HashStatementLexer.g4"; } @Override public String[] getRuleNames() { return ruleNames; } @Override public String getSerializedATN() { return _serializedATN; } @Override public String[] getChannelNames() { return channelNames; } @Override public String[] getModeNames() { return modeNames; } @Override public ATN getATN() { return _ATN; } @Override public boolean sempred(RuleContext _localctx, int ruleIndex, int predIndex) { switch (ruleIndex) { case 5: return QUESTION_sempred((RuleContext)_localctx, predIndex); case 6: return DOUBLE_QUESTION_sempred((RuleContext)_localctx, predIndex); } return true; } private boolean QUESTION_sempred(RuleContext _localctx, int predIndex) { switch (predIndex) { case 0: return _input.LA(2) != '?'; } return true; } private boolean DOUBLE_QUESTION_sempred(RuleContext _localctx, int predIndex) { switch (predIndex) { case 1: return _input.LA(2) == '?'; } return true; } public static final String _serializedATN = "\3\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964\2\tn\b\1\4\2\t\2\4"+ "\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7\4\b\t\b\4\t\t\t\4\n\t\n\4\13\t"+ "\13\4\f\t\f\4\r\t\r\4\16\t\16\4\17\t\17\4\20\t\20\4\21\t\21\3\2\3\2\3"+ "\3\3\3\3\4\3\4\3\4\3\5\3\5\3\6\3\6\3\7\3\7\3\7\3\b\3\b\3\b\3\b\3\t\3\t"+ "\3\t\3\t\5\t:\n\t\3\n\3\n\3\n\3\n\5\n@\n\n\3\13\3\13\3\13\3\13\7\13F\n"+ "\13\f\13\16\13I\13\13\3\13\3\13\3\13\3\f\3\f\3\f\7\fQ\n\f\f\f\16\fT\13"+ "\f\3\f\3\f\3\r\3\r\6\rZ\n\r\r\r\16\r[\3\r\3\r\3\16\3\16\3\16\3\17\3\17"+ "\6\17e\n\17\r\17\16\17f\3\20\3\20\3\21\3\21\5\21m\n\21\3G\2\22\3\2\5\2"+ "\7\2\t\2\13\2\r\2\17\2\21\2\23\2\25\3\27\4\31\5\33\6\35\7\37\b!\t\3\2"+ "\t\4\2\60\60\62;\6\2&&C\\aac|\4\2\2\u0081\ud802\udc01\3\2\ud802\udc01"+ "\3\2\udc02\ue001\3\2))\3\2$$\2n\2\25\3\2\2\2\2\27\3\2\2\2\2\31\3\2\2\2"+ "\2\33\3\2\2\2\2\35\3\2\2\2\2\37\3\2\2\2\2!\3\2\2\2\3#\3\2\2\2\5%\3\2\2"+ "\2\7\'\3\2\2\2\t*\3\2\2\2\13,\3\2\2\2\r.\3\2\2\2\17\61\3\2\2\2\219\3\2"+ "\2\2\23?\3\2\2\2\25A\3\2\2\2\27M\3\2\2\2\31W\3\2\2\2\33_\3\2\2\2\35b\3"+ "\2\2\2\37h\3\2\2\2!l\3\2\2\2#$\7)\2\2$\4\3\2\2\2%&\7^\2\2&\6\3\2\2\2\'"+ "(\5\5\3\2()\5\3\2\2)\b\3\2\2\2*+\7$\2\2+\n\3\2\2\2,-\7%\2\2-\f\3\2\2\2"+ "./\6\7\2\2/\60\7A\2\2\60\16\3\2\2\2\61\62\6\b\3\2\62\63\7A\2\2\63\64\7"+ "A\2\2\64\20\3\2\2\2\65:\5\23\n\2\66:\t\2\2\2\678\7A\2\28:\7\60\2\29\65"+ "\3\2\2\29\66\3\2\2\29\67\3\2\2\2:\22\3\2\2\2;@\t\3\2\2<@\n\4\2\2=>\t\5"+ "\2\2>@\t\6\2\2?;\3\2\2\2?<\3\2\2\2?=\3\2\2\2@\24\3\2\2\2AB\7\61\2\2BC"+ "\7,\2\2CG\3\2\2\2DF\13\2\2\2ED\3\2\2\2FI\3\2\2\2GH\3\2\2\2GE\3\2\2\2H"+ "J\3\2\2\2IG\3\2\2\2JK\7,\2\2KL\7\61\2\2L\26\3\2\2\2MR\5\3\2\2NQ\5\7\4"+ "\2OQ\n\7\2\2PN\3\2\2\2PO\3\2\2\2QT\3\2\2\2RP\3\2\2\2RS\3\2\2\2SU\3\2\2"+ "\2TR\3\2\2\2UV\5\3\2\2V\30\3\2\2\2WY\5\t\5\2XZ\n\b\2\2YX\3\2\2\2Z[\3\2"+ "\2\2[Y\3\2\2\2[\\\3\2\2\2\\]\3\2\2\2]^\5\t\5\2^\32\3\2\2\2_`\5\5\3\2`"+ "a\13\2\2\2a\34\3\2\2\2bd\5\13\6\2ce\5\21\t\2dc\3\2\2\2ef\3\2\2\2fd\3\2"+ "\2\2fg\3\2\2\2g\36\3\2\2\2hi\5\r\7\2i \3\2\2\2jm\5\17\b\2km\13\2\2\2l"+ "j\3\2\2\2lk\3\2\2\2m\"\3\2\2\2\13\29?GPR[fl\2"; public static final ATN _ATN = new ATNDeserializer().deserialize(_serializedATN.toCharArray()); static { _decisionToDFA = new DFA[_ATN.getNumberOfDecisions()]; for (int i = 0; i < _ATN.getNumberOfDecisions(); i++) { _decisionToDFA[i] = new DFA(_ATN.getDecisionState(i), i); } } }