GQLToken.java
- package net.morimekta.providence.graphql.parser;
- import net.morimekta.util.lexer.Token;
- import javax.annotation.Nonnull;
- public class GQLToken extends Token<GQLTokenType> {
- // Various symbols.
- public static final char kMessageStart = '{';
- public static final char kMessageEnd = '}';
- public static final char kKeyValueSep = ':';
- public static final char kFieldValueSep = '=';
- public static final char kParamsStart = '(';
- public static final char kParamsEnd = ')';
- public static final char kListStart = '[';
- public static final char kListEnd = ']';
- public static final char kEntrySep = ',';
- public static final char kDirective = '@';
- public static final char kVariable = '$';
- /**
- * Create a slice instance. The slice is only meant to be internal state
- * immutable, and not representing an immutable byte content.
- *
- * @param fb The buffer to wrap.
- * @param off The start offset to wrap.
- * @param len The length to represent.
- * @param type The token type represented.
- * @param lineNo The current line number.
- * @param linePos The current line position.
- */
- public GQLToken(char[] fb,
- int off,
- int len,
- @Nonnull GQLTokenType type, int lineNo, int linePos) {
- super(fb, off, len, type, lineNo, linePos);
- }
- public boolean isString() {
- return type == GQLTokenType.STRING;
- }
- public boolean isIdentifier() {
- return type == GQLTokenType.IDENTIFIER;
- }
- public boolean isVariable() {
- return type == GQLTokenType.VARIABLE;
- }
- public boolean isDirectve() {
- return type == GQLTokenType.DIRECTIVE;
- }
- }