org.aspectj.weaver.patterns.IToken Maven / Gradle / Ivy
/* *******************************************************************
* 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 v 2.0
* which accompanies this distribution and is available at
* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt
*
* Contributors:
* PARC initial implementation
* ******************************************************************/
package org.aspectj.weaver.patterns;
import org.aspectj.weaver.IHasPosition;
public interface IToken extends IHasPosition {
IToken EOF = BasicToken.makeOperator("", 0, 0);
/**
* Returns the string value of this token.
*
* If isIdentifier is false, then this string must be intern'd
* so that == matching can be used.
*
* If isIdentifier is true, interning is not required.
*/
String getString();
/**
* Whether this should be treated as a token or a generic identifier
*/
boolean isIdentifier();
/**
* Whether this should be treated as a literal value
*
* Kinds == "string", ???
*
* returns null if this isn't a literal
*/
String getLiteralKind();
/**
* If this token represents a pre-parsed Pointcut, then return it;
* otherwise returns null.
*
* Needed for the implementation of 'if'
*/
Pointcut maybeGetParsedPointcut();
}