JML

org.multijava.mjc
Class JPhylum

java.lang.Object
  extended byorg.multijava.util.Utils
      extended byorg.multijava.util.compiler.Phylum
          extended byorg.multijava.mjc.JPhylum
All Implemented Interfaces:
Cloneable, Constants, Constants, PhylumType
Direct Known Subclasses:
JArrayDimsAndInits, JCatchClause, JClassOrGFImport, JCompilationUnit, JExpression, JLocalVariable, JMemberDeclaration, JmlNode, JPackageImport, JPackageName, JStatement, JSwitchGroup, JSwitchLabel

public abstract class JPhylum
extends Phylum
implements Constants, Cloneable

This class is a superclass for all elements of the parsing tree. That is, all classes for nodes of the AST descend from this class.


Field Summary
static JPhylum[] EMPTY
           
 
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_MODIFIER_FLAGS_MASK, ACC_NON_NULL, ACC_NON_NULL_BY_DEFAULT, ACC_NULLABLE, ACC_NULLABLE_BY_DEFAULT, ACC_PURE, ACCESS_FLAG_ARRAY, ACCESS_FLAG_NAMES, AMID_JAVA_MATH, AMID_MAX, AMID_SAFE_MATH, CMP_VERSION, IMPLICITLY_NON_NULL, 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, NULLITY_MODS, 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
 
Fields inherited from interface org.multijava.util.classfile.Constants
ACC_ABSTRACT, ACC_FINAL, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_SYNTHETIC, ACC_TRANSIENT, ACC_VOLATILE, ATT_ANCHOR, ATT_BRIDGE, ATT_CODE, ATT_CONSTANTVALUE, ATT_DEPRECATED, ATT_DISPATCHER, ATT_EXCEPTIONS, ATT_GENERIC, ATT_GENERIC_FUNCTIONS, ATT_INNERCLASSES, ATT_LINENUMBERTABLE, ATT_LOCALVARIABLETABLE, ATT_MM_BODY, ATT_REDIRECTOR, ATT_RMJ_GLUE, ATT_RMJ_SIGNATURE, ATT_RUNTIME_VISIBLE_ANNOTATIONS, ATT_RUNTIME_VISIBLE_PARAMETER_ANNOTATIONS, ATT_SIGNATURE, ATT_SOURCEFILE, ATT_SYNTHETIC, ATT_UNIVERSE_FIELD, ATT_UNIVERSE_METHOD, ATT_UNIVERSE_VERSION, CST_CLASS, CST_DOUBLE, CST_FIELD, CST_FLOAT, CST_INTEGER, CST_INTERFACEMETHOD, CST_LONG, CST_METHOD, CST_NAMEANDTYPE, CST_STRING, CST_UTF8, ENV_DEBUG_MODE, ENV_USE_CACHE, JAVA_MAGIC, JAVA_MAJOR, JAVA_MINOR, MAX_CODE_PER_METHOD, opc_aaload, opc_aastore, opc_aconst_null, opc_aload, opc_aload_0, opc_aload_1, opc_aload_2, opc_aload_3, opc_anewarray, opc_areturn, opc_arraylength, opc_astore, opc_astore_0, opc_astore_1, opc_astore_2, opc_astore_3, opc_athrow, opc_baload, opc_bastore, opc_bipush, opc_caload, opc_castore, opc_checkcast, opc_d2f, opc_d2i, opc_d2l, opc_dadd, opc_daload, opc_dastore, opc_dcmpg, opc_dcmpl, opc_dconst_0, opc_dconst_1, opc_ddiv, opc_dload, opc_dload_0, opc_dload_1, opc_dload_2, opc_dload_3, opc_dmul, opc_dneg, opc_drem, opc_dreturn, opc_dstore, opc_dstore_0, opc_dstore_1, opc_dstore_2, opc_dstore_3, opc_dsub, opc_dup, opc_dup2, opc_dup2_x1, opc_dup2_x2, opc_dup_x1, opc_dup_x2, opc_f2d, opc_f2i, opc_f2l, opc_fadd, opc_faload, opc_fastore, opc_fcmpg, opc_fcmpl, opc_fconst_0, opc_fconst_1, opc_fconst_2, opc_fdiv, opc_fload, opc_fload_0, opc_fload_1, opc_fload_2, opc_fload_3, opc_fmul, opc_fneg, opc_frem, opc_freturn, opc_fstore, opc_fstore_0, opc_fstore_1, opc_fstore_2, opc_fstore_3, opc_fsub, opc_getfield, opc_getstatic, opc_goto, opc_goto_w, opc_i2b, opc_i2c, opc_i2d, opc_i2f, opc_i2l, opc_i2s, opc_iadd, opc_iaload, opc_iand, opc_iastore, opc_iconst_0, opc_iconst_1, opc_iconst_2, opc_iconst_3, opc_iconst_4, opc_iconst_5, opc_iconst_m1, opc_idiv, opc_if_acmpeq, opc_if_acmpne, opc_if_icmpeq, opc_if_icmpge, opc_if_icmpgt, opc_if_icmple, opc_if_icmplt, opc_if_icmpne, opc_ifeq, opc_ifge, opc_ifgt, opc_ifle, opc_iflt, opc_ifne, opc_ifnonnull, opc_ifnull, opc_iinc, opc_iload, opc_iload_0, opc_iload_1, opc_iload_2, opc_iload_3, opc_imul, opc_ineg, opc_instanceof, opc_invokeinterface, opc_invokespecial, opc_invokestatic, opc_invokevirtual, opc_ior, opc_irem, opc_ireturn, opc_ishl, opc_ishr, opc_istore, opc_istore_0, opc_istore_1, opc_istore_2, opc_istore_3, opc_isub, opc_iushr, opc_ixor, opc_jsr, opc_jsr_w, opc_l2d, opc_l2f, opc_l2i, opc_ladd, opc_laload, opc_land, opc_lastore, opc_lcmp, opc_lconst_0, opc_lconst_1, opc_ldc, opc_ldc2_w, opc_ldc_w, opc_ldiv, opc_lload, opc_lload_0, opc_lload_1, opc_lload_2, opc_lload_3, opc_lmul, opc_lneg, opc_lookupswitch, opc_lor, opc_lrem, opc_lreturn, opc_lshl, opc_lshr, opc_lstore, opc_lstore_0, opc_lstore_1, opc_lstore_2, opc_lstore_3, opc_lsub, opc_lushr, opc_lxor, opc_monitorenter, opc_monitorexit, opc_multianewarray, opc_new, opc_newarray, opc_nop, opc_pop, opc_pop2, opc_putfield, opc_putstatic, opc_ret, opc_return, opc_saload, opc_sastore, opc_sipush, opc_swap, opc_tableswitch, opc_wide, opc_xxxunusedxxx, POO_ASCII_CONSTANT, POO_CLASS_CONSTANT, POO_DOUBLE_CONSTANT, POO_FLOAT_CONSTANT, POO_INTEGER_CONSTANT, POO_LONG_CONSTANT, POO_NAT_CONSTANT, POO_REF_CONSTANT, POO_STRING_CONSTANT, TYP_ADDRESS, TYP_DOUBLE, TYP_FLOAT, TYP_INT, TYP_LONG, TYP_REFERENCE, TYP_VOID
 
Constructor Summary
JPhylum(TokenReference where)
          construct an element of the parsing tree
 
Method Summary
abstract  void accept(MjcVisitor p)
          Accepts the specified visitor
 void check(CContextType context, boolean cond, MessageDescription description)
          Verifies that the condition is true; otherwise adds an error.
 void check(CContextType context, boolean cond, MessageDescription description, Object param)
          Verifies that the condition is true; otherwise adds an error.
 void check(CContextType context, boolean cond, MessageDescription description, Object param1, Object param2)
          Verifies that the condition is true; otherwise adds an error.
 void check(CContextType context, boolean cond, MessageDescription description, Object[] params)
          Verifies that the condition is true; otherwise adds an error.
protected  void fail(CContextType context, MessageDescription description)
          Adds a compiler error.
protected  void fail(CContextType context, MessageDescription description, Object param)
          Adds a compiler error.
protected  void fail(CContextType context, MessageDescription description, Object[] params)
          Adds a compiler error.
 void warn(CContextType context, MessageDescription description)
          Gives a warning message.
 void warn(CContextType context, MessageDescription description, Object param)
          Gives a warning message.
 void warn(CContextType context, MessageDescription description, Object param1, Object param2)
          Gives a warning message.
 void warn(CContextType context, MessageDescription description, Object[] params)
          Gives a warning message.
 
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
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

EMPTY

public static final JPhylum[] EMPTY
Constructor Detail

JPhylum

public JPhylum(TokenReference where)
construct an element of the parsing tree

Parameters:
where - the token reference of this node
Method Detail

fail

protected void fail(CContextType context,
                    MessageDescription description,
                    Object[] params)
             throws PositionedError
Adds a compiler error. Redefine this method to change error handling behaviour.

Parameters:
context - the context in which the error occurred
description - the message ident to be displayed
params - the array of parameters
Throws:
PositionedError

fail

protected void fail(CContextType context,
                    MessageDescription description)
             throws PositionedError
Adds a compiler error. Redefine this method to change error handling behaviour.

Parameters:
context - the context in which the error occurred
description - the message ident to be displayed
Throws:
PositionedError

fail

protected void fail(CContextType context,
                    MessageDescription description,
                    Object param)
             throws PositionedError
Adds a compiler error. Redefine this method to change error handling behaviour.

Parameters:
context - the context in which the error occurred
description - the message ident to be displayed
param - the parameter
Throws:
PositionedError

check

public final void check(CContextType context,
                        boolean cond,
                        MessageDescription description,
                        Object[] params)
                 throws PositionedError
Verifies that the condition is true; otherwise adds an error.

Parameters:
context - the context in which the check occurred
cond - the condition to verify
description - the message ident to be displayed
params - the array of parameters
Throws:
PositionedError

check

public final void check(CContextType context,
                        boolean cond,
                        MessageDescription description,
                        Object param1,
                        Object param2)
                 throws PositionedError
Verifies that the condition is true; otherwise adds an error.

Parameters:
context - the context in which the check occurred
cond - the condition to verify
description - the message ident to be displayed
param1 - the first parameter
param2 - the second parameter
Throws:
PositionedError

check

public final void check(CContextType context,
                        boolean cond,
                        MessageDescription description,
                        Object param)
                 throws PositionedError
Verifies that the condition is true; otherwise adds an error.

Parameters:
context - the context in which the check occurred
cond - the condition to verify
description - the message ident to be displayed
param - the parameter
Throws:
PositionedError

check

public final void check(CContextType context,
                        boolean cond,
                        MessageDescription description)
                 throws PositionedError
Verifies that the condition is true; otherwise adds an error.

Parameters:
context - the context in which the check occurred
cond - the condition to verify
description - the message ident to be displayed
Throws:
PositionedError

warn

public final void warn(CContextType context,
                       MessageDescription description,
                       Object[] params)
                throws PositionedError
Gives a warning message.

Parameters:
context - the context in which the warning occurred
description - the message ident to be displayed
params - the array of parameters
Throws:
PositionedError

warn

public final void warn(CContextType context,
                       MessageDescription description)
                throws PositionedError
Gives a warning message.

Parameters:
context - the context in which the warning occurred
description - the message ident to be displayed
Throws:
PositionedError

warn

public final void warn(CContextType context,
                       MessageDescription description,
                       Object param)
                throws PositionedError
Gives a warning message.

Parameters:
context - the context in which the warning occurred
description - the message ident to be displayed
param - the parameter
Throws:
PositionedError

warn

public final void warn(CContextType context,
                       MessageDescription description,
                       Object param1,
                       Object param2)
                throws PositionedError
Gives a warning message.

Parameters:
context - the context in which the warning occurred
description - the message ident to be displayed
param1 - the parameter
param2 - the parameter
Throws:
PositionedError

accept

public abstract void accept(MjcVisitor p)
Accepts the specified visitor

Parameters:
p - the visitor

JML

JML is Copyright (C) 1998-2002 by Iowa State University and is distributed under the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This release depends on code from the MultiJava project and is based in part on the Kopi project Copyright (C) 1990-99 DMS Decision Management Systems Ges.m.b.H.