/* * Copyright (C) 2009 JavaRosa * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ package org.openrosa.client.jr.xpath.parser; import org.openrosa.client.jr.xpath.expr.XPathQName; public class Token { public static final int AND = 1; public static final int AT = 2; public static final int COMMA = 3; public static final int DBL_COLON = 4; public static final int DBL_DOT = 5; public static final int DBL_SLASH = 6; public static final int DIV = 7; public static final int DOT = 8; public static final int EQ = 9; public static final int GT = 10; public static final int GTE = 11; public static final int LBRACK = 12; public static final int LPAREN = 13; public static final int LT = 14; public static final int LTE = 15; public static final int MINUS = 16; public static final int MOD = 17; public static final int MULT = 18; public static final int NEQ = 19; public static final int NSWILDCARD = 20; public static final int NUM = 21; public static final int OR = 22; public static final int PLUS = 23; public static final int QNAME = 24; public static final int RBRACK = 25; public static final int RPAREN = 26; public static final int SLASH = 27; public static final int STR = 28; public static final int UMINUS = 29; public static final int UNION = 30; public static final int VAR = 31; public static final int WILDCARD = 32; public int type; public Object val; public Token (int type) { this(type, null); } public Token (int type, Object val) { this.type = type; this.val = val; } public String toString () { String s = null; switch (type) { case AND: s = "AND"; break; case AT: s = "AT"; break; case COMMA: s = "COMMA"; break; case DBL_COLON: s = "DBL_COLON"; break; case DBL_DOT: s = "DBL_DOT"; break; case DBL_SLASH: s = "DBL_SLASH"; break; case DIV: s = "DIV"; break; case DOT: s = "DOT"; break; case EQ: s = "EQ"; break; case GT: s = "GT"; break; case GTE: s = "GTE"; break; case LBRACK: s = "LBRACK"; break; case LPAREN: s = "LPAREN"; break; case LT: s = "LT"; break; case LTE: s = "LTE"; break; case MINUS: s = "MINUS"; break; case MOD: s = "MOD"; break; case MULT: s = "MULT"; break; case NEQ: s = "NEQ"; break; case NSWILDCARD: s = "NSWILDCARD(" + (String)val + ")"; break; case NUM: s = "NUM(" + ((Double)val).toString() + ")"; break; case OR: s = "OR"; break; case PLUS: s = "PLUS"; break; case QNAME: s = "QNAME(" + ((XPathQName)val).toString() + ")"; break; case RBRACK: s = "RBRACK"; break; case RPAREN: s = "RPAREN"; break; case SLASH: s = "SLASH"; break; case STR: s = "STR(" + (String)val + ")"; break; case UMINUS: s = "UMINUS"; break; case UNION: s = "UNION"; break; case VAR: s = "VAR(" + ((XPathQName)val).toString() + ")"; break; case WILDCARD: s = "WILDCARD"; break; } return s; } }