Java tutorial
/* ******************************************************************* * Copyright (c) 2002 Palo Alto Research Center, Incorporated (PARC). * All rights reserved. * This program and the accompanying materials are made available * under the terms of the Eclipse Public License v1.0 * which accompanies this distribution and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * PARC initial implementation * ******************************************************************/ package org.aspectj.weaver.patterns; public final class BasicToken implements IToken { private String value; private boolean isIdentifier; private String literalKind; private int start; private int end; public static BasicToken makeOperator(String value, int start, int end) { return new BasicToken(value.intern(), false, null, start, end); } public static BasicToken makeIdentifier(String value, int start, int end) { return new BasicToken(value, true, null, start, end); } public static BasicToken makeLiteral(String value, String kind, int start, int end) { return new BasicToken(value, false, kind.intern(), start, end); } private BasicToken(String value, boolean isIdentifier, String literalKind, int start, int end) { this.value = value; this.isIdentifier = isIdentifier; this.literalKind = literalKind; this.start = start; this.end = end; } public int getStart() { return start; } public int getEnd() { return end; } public String getFileName() { return "unknown"; } public String getString() { return value; } public boolean isIdentifier() { return isIdentifier; } public Pointcut maybeGetParsedPointcut() { return null; } public String toString() { String s; if (isIdentifier) s = value; else s = "'" + value + "'"; return s + "@" + start + ":" + end; } public String getLiteralKind() { return literalKind; } }