|
JML | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectorg.multijava.util.Utils
org.multijava.util.compiler.Phylum
org.multijava.mjc.JPhylum
org.jmlspecs.checker.JmlNode
org.jmlspecs.checker.JmlDeclaration
This abstract class is the superclass of all jml-declaration AST nodes, (i.e., invariants, history constraints, depends declarations, and represents declarations)
| Nested Class Summary |
| Nested classes inherited from class org.jmlspecs.checker.JmlNode |
JmlNode.DummyInitializerDeclaration |
| Field Summary | |
protected long |
modifiers
The bit-mask representing the modifiers of this declaration. |
protected boolean |
redundantly
Indicates whether this is a redundant annotation. |
| Fields inherited from class org.jmlspecs.checker.JmlNode |
MJCVISIT_MESSAGE |
| Fields inherited from class org.multijava.util.compiler.Phylum |
|
| Fields inherited from class org.multijava.util.Utils |
DBG_LEVEL_HIGH, DBG_LEVEL_LOW, DBG_LEVEL_NO |
| Fields inherited from interface org.multijava.mjc.Constants |
ACC_PURE, AMID_JAVA_MATH, AMID_MAX, AMID_SAFE_MATH, CMP_VERSION, JAV_ASSERTION_ERROR, JAV_CLASS, JAV_CLASSLOADER, JAV_CLASSNOTFOUND_EXCEPTION, JAV_CLONE, JAV_CLONEABLE, JAV_CONSTRUCTOR, JAV_ERROR, JAV_EXCEPTION, JAV_INIT, JAV_LENGTH, JAV_NAME_SEPARATOR, JAV_NOCLASSDEFFOUND_ERROR, JAV_OBJECT, JAV_OUTER_THIS, JAV_RMJ_RUNTIME_EXCEPTION, JAV_RUNTIME, JAV_RUNTIME_EXCEPTION, JAV_SERIALIZABLE, JAV_STATIC_INIT, JAV_STRING, JAV_STRINGBUFFER, JAV_SUPER, JAV_THIS, JAV_THROWABLE, MJ_ANCHOR, OPE_BAND, OPE_BNOT, OPE_BOR, OPE_BSR, OPE_BXOR, OPE_EQ, OPE_GE, OPE_GT, OPE_LAND, OPE_LE, OPE_LNOT, OPE_LOR, OPE_LT, OPE_MINUS, OPE_NE, OPE_PERCENT, OPE_PLUS, OPE_POSTDEC, OPE_POSTINC, OPE_PREDEC, OPE_PREINC, OPE_SIMPLE, OPE_SL, OPE_SLASH, OPE_SR, OPE_STAR, TID_ARRAY, TID_BOOLEAN, TID_BYTE, TID_CHAR, TID_CLASS, TID_DOUBLE, TID_FLOAT, TID_INT, TID_LONG, TID_MAX, TID_SHORT, TID_VOID, UNIV_ARRAY_TMP, UNIV_TMP |
| Constructor Summary | |
JmlDeclaration(TokenReference where,
long modifiers,
boolean redundantly)
Creates a new JmlDeclaration instance. |
|
| Method Summary | |
void |
accept(MjcVisitor m)
Throws an UnsupportedOperationException since an MjcVisitor cannot be used to visit a JML AST. |
protected void |
checkModifiers(CContextType context)
Checks the modifiers of this JML declaration. |
Object |
clone()
All subclasses must be clonable. |
protected JmlExpressionContext |
createContext(CContextType context)
Create a JmlExpressionContext object as a child of the given (CClassContextType) context that can be used to typecheck this JML declaration. |
protected CFlowControlContextType |
createContextHelper(CContextType context)
Returns a flow control context object that can be used to create an expression context objec to typecheck this JML declaration. |
boolean |
isRedundantly()
Indicates whether this is declared to be a redundant declaration. |
boolean |
isStatic()
Returns true if this JML declaration is a static declaration. |
long |
modifiers()
Returns the bit-mask representing the modifiers of this declaration. |
protected long |
privacy()
Returns the privacy of this declaration. |
abstract void |
typecheck(CContextType context)
Typechecks this invariant clause in the context in which it appears. |
| Methods inherited from class org.jmlspecs.checker.JmlNode |
enterSpecScope, enterSpecScope, exitSpecScope, exitSpecScope, privacy, privacyString |
| Methods inherited from class org.multijava.mjc.JPhylum |
check, check, check, check, fail, fail, fail, warn, warn, warn, warn |
| Methods inherited from class org.multijava.util.compiler.Phylum |
getTokenReference, setTokenReference |
| Methods inherited from class org.multijava.util.Utils |
assertTrue, assertTrue, combineArrays, escapeString, escapeString, fail, fail, getFilePath, hasFlag, hasOtherFlags, parsePathParts, relativePathTo, splitQualifiedName, splitQualifiedName, stripJavaModifiers, stripNonJavaModifiers, stripPrivateModifier, unescapeString, vectorToArray, vectorToIntArray |
| Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
protected long modifiers
protected final boolean redundantly
| Constructor Detail |
public JmlDeclaration(TokenReference where,
long modifiers,
boolean redundantly)
JmlDeclaration instance.
where - a TokenReference valuemodifiers - an int valueredundantly - indicates whether this is a redundant annotation| Method Detail |
public Object clone()
clone in class Objectpublic long modifiers()
int value formed by bit-wise ORing of
constants from Constants.Constantsprotected long privacy()
public boolean isStatic()
public boolean isRedundantly()
public void accept(MjcVisitor m)
JmlNode
accept in class JmlNode
public abstract void typecheck(CContextType context)
throws PositionedError
context - the context in which this type declaration appears
PositionedError - if any checks fail protected JmlExpressionContext createContext(CContextType context)
context - the pararent contextprotected CFlowControlContextType createContextHelper(CContextType context)
protected void checkModifiers(CContextType context)
throws PositionedError
PositionedError
|
JML | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||