JML

Uses of Class
org.multijava.mjc.CodeSequence

Packages that use CodeSequence
org.jmlspecs.checker Contains the source code for a parser and typechecker for JML annotations and java code. 
org.jmlspecs.jmlrac Generates Java classes from JML specifications that check assertions at runtime. 
org.multijava.mjc Implements mjc, a MultiJava compiler. 
 

Uses of CodeSequence in org.jmlspecs.checker
 

Methods in org.jmlspecs.checker with parameters of type CodeSequence
 void JmlAssertOrAssumeStatement.genCode(CodeSequence code)
           
 void JmlMethodDeclaration.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JmlDebugStatement.genCode(CodeSequence code)
           
 void JmlExpression.genCode(CodeSequence code)
           
 void JmlFieldDeclaration.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JmlGuardedStatement.genCode(CodeSequence code)
           
 void JmlHenceByStatement.genCode(CodeSequence code)
           
 void JmlModelProgStatement.genCode(CodeSequence code)
           
 void JmlLoopStatement.genCode(CodeSequence code)
           
 void JmlAssignmentStatement.genCode(CodeSequence code)
           
 void JmlPredicate.genCode(CodeSequence code)
           
 void JmlSetStatement.genCode(CodeSequence code)
           
 void JmlSpecExpression.genCode(CodeSequence code)
           
 void JmlUnreachableStatement.genCode(CodeSequence code)
           
 

Uses of CodeSequence in org.jmlspecs.jmlrac
 

Methods in org.jmlspecs.jmlrac with parameters of type CodeSequence
 void RacParser.RacStatement.genCode(CodeSequence code)
           
 

Uses of CodeSequence in org.multijava.mjc
 

Methods in org.multijava.mjc that return CodeSequence
static CodeSequence CodeSequence.getCodeSequence()
          Constructs a code sequence.
 

Methods in org.multijava.mjc with parameters of type CodeSequence
 void CMethod.genGenFuncInvocation(CodeSequence code, boolean nonVirtual)
          Generates a sequence of bytecode for invoking this method, assuming appropriate argument values have already been pushed to the JVM stack.
abstract  void CMethod.plantFunctionRef(CodeSequence code)
          Generates bytecode to put a reference to the external function field for the external generic function on the JVM stack.
abstract  void CMethod.plantOldFunctionRef(CodeSequence code, boolean forSuper, boolean fromOuter)
          Generates bytecode to put a reference to the oldFunction field for the external generic function on the JVM stack.
 boolean CMethod.genDispatch(CodeSequence code, CodeLabel nextAlternative, CMethod topConcreteMethod, String dispatcherName)
          Generates the dispatch code for the specialized arguments of this method.
protected  void CMethod.plantSelfArguments(CodeSequence code, CMethod topConcreteMethod)
          Plants bytecode to push the arguments for a call to this multimethod body from within a dispatcher of this generic function.
protected  void CMethod.plantMMInvocation(CodeSequence code, String dispatcherName)
          Plants an invocation of the multimethod body represented by this.
 void CSourceMethod.plantFunctionRef(CodeSequence code)
          Generates bytecode to put a reference to the external function field for the external generic function on the JVM stack.
 void CSourceMethod.plantOldFunctionRef(CodeSequence code, boolean forSuper, boolean fromOuter)
          Generates bytecode to put a reference to the oldFunction field for the external generic function on the JVM stack.
protected  void CSourceMethod.plantBodyBytecode(CodeSequence code)
          Plants the bytecode for the body of this method.
 void CSourceDispatcherMethod.plantFunctionRef(CodeSequence code)
          Generates bytecode to put a reference to the external function field for the external generic function on the JVM stack.
 void CSourceDispatcherMethod.plantOldFunctionRef(CodeSequence code, boolean forSuper, boolean fromOuter)
          Generates bytecode to put a reference to the oldFunction field for the external generic function on the JVM stack.
protected  void CSourceDispatcherMethod.plantBodyBytecode(CodeSequence code)
          Plants the bytecode for a dispatcher method that dynamically selects the appropriate multimethod body from the set represented by this.
protected  void CSourceDispatcherMethod.plantFilteredDispatcherBody(CodeSequence code, CClass receiverSubclass)
          Plants the bytecode for a dispatcher method that dynamically selects the appropriate multimethod body from the set represented by this, but filtered so that only multimethods whose receiver type is a proper supertype of receiverSubclass will be dispatched to.
private  void CSourceDispatcherMethod.plantNoMethodThrow(CodeSequence code)
          Plant instructions for throwing a NoSuchMethodException onto the given code sequence.
 void CClass.genSyntheticParams(CodeSequence code)
          Adds synthetic parameters to the code sequence for a call to this class's constructor.
 void CClass.genSyntheticParamsForExplicitThis(CodeSequence code, CMethod constructor)
          Adds synthetic parameters to the code sequence for an explicit constructor invocation to this class's constructor.
 void CSourceClass.genSyntheticParams(CodeSequence code)
          Adds synthetic parameters to the code sequence for a call to this class's constructor.
 void CSourceClass.genSyntheticParamsForExplicitThis(CodeSequence code, CMethod constructor)
          Adds synthetic parameters to the code sequence for an explicit constructor invocation to this class's constructor.
 void CSourceClass.genInit(CodeSequence code, int countLocals)
          Adds to the body of a constructor the storage of synthetic parameters (for outer local variables) into synthetic fields.
 void CType.plantDispatchTest(CodeSequence code, CodeLabel nextInstruction)
           
 void CClassType.plantDispatchTest(CodeSequence code, CodeLabel nextInstruction)
           
 void JLocalVariable.genLoad(CodeSequence code)
          Generates a sequence of bytecode to load the value of the variable on the stack
 void JLocalVariable.genStore(CodeSequence code)
          Generates a sequence of bytecodes
abstract  void JExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JExpression.genBranch(boolean cond, CodeSequence code, CodeLabel label)
          Generates a sequence of bytecodes to branch on a label This method helps to handle heavy optimizables conditions
 void JExpression.genUniverseDynCheckCode(CodeSequence code)
          Generate the code for the dynamic universe typechecks.
 void JMethodCallExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes.
private  void JMethodCallExpression.genPrefix(CodeSequence code)
          Generates the bytecode for adding the prefix to the JVM stack.
protected  void JMethodCallExpression.genActualArgs(CodeSequence code)
          Plants the code for putting the args to the call on the stack.
protected  void JMethodCallExpression.genActualArgStores(CodeSequence code)
          Plants the code for storing the actual args to local variables.
protected  void JMethodCallExpression.genActualArgLoads(CodeSequence code)
          Plants the code for loading the actual args from their local vars.
protected  void JMethodCallExpression.genExternalTargetRef(CodeSequence code)
          Plants the code for putting a reference to the appropriate dispatcher in the chain-of-responsibility onto the stack.
protected  void JMethodCallExpression.genInvocationOpcode(CodeSequence code)
          Generates the bytecode for invoking the actual target method.
 void CBinaryMethod.plantFunctionRef(CodeSequence code)
          Generates bytecode to put a reference to the external function field for the external generic function on the JVM stack.
 void CBinaryMethod.plantOldFunctionRef(CodeSequence code, boolean forSuper, boolean fromOuter)
          Generates bytecode to put a reference to the oldFunction field for the external generic function on the JVM stack.
protected  void CCORInitializer.plantBodyBytecode(CodeSequence code)
          Plants the bytecode for the body of this method, including code to initialize the chain-of-responsibility for the nested dispatcher classes.
 void CSourceDispatcherClass.plantFunctionRef(CodeSequence code)
          Generates bytecode to put a reference to the external function field for the external generic function on the JVM stack.
 void CSourceDispatcherClass.plantOldFunctionRef(CodeSequence code, boolean forSuper, boolean fromOuter)
          Plants bytecode to load the oldFunction field of this dispatcher class.
 void CSourceDispatcherClass.plantCORInitialization(CodeSequence code)
          Plants the bytecode to add this to the appropriate chain-of-responsibility and store a reference in a field of the outer class.
private  void CSourceDispatcherClass.plantSetOutersDispatcherField(CodeSequence code)
           
private  void CSourceDispatcherClass.plantGetFunctionField(CodeSequence code)
           
private  void CSourceDispatcherClass.plantSetFunctionField(CodeSequence code)
           
private  void CSourceDispatcherClass.plantGetAnchorClassObject(CodeSequence code)
           
 void JMethodDeclaration.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JThisExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JLocalVariableExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JLocalVariableExpression.genStartStoreCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JLocalVariableExpression.genEndStoreCode(CodeSequence code, boolean discardValue)
          Generates a sequence of bytecodes
abstract  void CInitializable.genStartStoreCode(CodeSequence code)
          Generates a sequence of bytecodes
abstract  void CInitializable.genEndStoreCode(CodeSequence code, boolean discardValue)
          Generates a sequence of bytecodes
abstract  void JStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JBlock.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JConstructorBlock.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JFieldDeclaration.genCode(CodeSequence code)
          Generates a sequence of bytecodes
abstract  void JFieldDeclarationType.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void CField.genLoad(CodeSequence code)
          Generates a sequence of bytecodes to load
 void CField.genStore(CodeSequence code)
          Generates a sequence of bytecodes to load
abstract  void CFieldAccessor.genLoad(CodeSequence code)
          Generates a sequence of bytecodes to load
abstract  void CFieldAccessor.genStore(CodeSequence code)
          Generates a sequence of bytecodes to load
 void JBinaryExpression.genBooleanResultCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JBinaryExpression.genBranch(boolean cond, CodeSequence code, CodeLabel label)
          Generates a sequence of bytecodes to branch on a label This method helps to handle heavy optimizables conditions
protected  void JBinaryExpression.genBranch(JExpression left, JExpression right, boolean cond, CodeSequence code, CodeLabel label)
          Optimize a bi-conditional expression
 void JRelationalExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
protected  void JRelationalExpression.genBranch(JExpression left, JExpression right, boolean cond, CodeSequence code, CodeLabel label)
          Optimize a bi-conditional expression
 void MJTopLevelMethodDeclaration.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JWhileStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JVariableDeclarationStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JTryCatchStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JTryFinallyStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JTryFinallyStatement.genFinallyCall(CodeSequence code, JReturnStatement ret)
          Generates a sequence of bytecodes
 void JThrowStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JSynchronizedStatement.genMonitorExit(CodeSequence code)
          Generates a sequence of bytecodes
 void JSynchronizedStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JSwitchStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JAssertStatement.genCode(CodeSequence code)
           
 void JReturnStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JReturnStatement.load(CodeSequence code, JLocalVariable var)
          Load the value from a local var (after finally)
 void JReturnStatement.store(CodeSequence code, JLocalVariable var)
          Load the value from a local var (after finally)
 void JLabeledStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JIfStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JForStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JCompoundStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JExpressionStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JExpressionListStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JEmptyStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JDoStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JContinueStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JBreakStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JTypeDeclarationStatement.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JUnaryExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JUnaryExpression.genBranch(boolean cond, CodeSequence code, CodeLabel label)
          Generates a sequence of bytecodes to branch on a label This method helps to handle heavy optimizables conditions
 void JTypeNameExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JSuperExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JShiftExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JPrefixExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JPostfixExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JParenthesedExpression.genStartStoreCode(CodeSequence code)
          Delegates to expr.
 void JParenthesedExpression.genEndStoreCode(CodeSequence code, boolean discard)
          Delegates to expr.
 void JParenthesedExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JParenthesedExpression.genBranch(boolean cond, CodeSequence code, CodeLabel label)
          Generates a sequence of bytecodes to branch on a label This method helps to handle heavy optimizables conditions
 void JNewObjectExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JNewObjectExpression.genUniverseDynCheckCode(CodeSequence code)
          Generate the code for the dynamic universe typechecks.
 void JNewArrayExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JNewArrayExpression.genUniverseDynCheckCode(CodeSequence code)
          Generate the code for the dynamic universe typechecks.
 void JNameExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JAddExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
private  void JAddExpression.appendToStringBuffer(CodeSequence code, JExpression expr)
          Generates a sequence of bytecodes
 void JConditionalAndExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
protected  void JConditionalAndExpression.genBranch(JExpression left, JExpression right, boolean cond, CodeSequence code, CodeLabel label)
          Optimize a bi-conditional expression
 void JConditionalOrExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
protected  void JConditionalOrExpression.genBranch(JExpression left, JExpression right, boolean cond, CodeSequence code, CodeLabel label)
          Optimize a bi-conditional expression
 void JDivideExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JMinusExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JModuloExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JMultExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JInstanceofExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JEqualityExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
protected  void JEqualityExpression.genBranch(JExpression left, JExpression right, boolean cond, CodeSequence code, CodeLabel label)
          Optimize a bi-conditional expression
 void JConditionalExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JAssignmentExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JCompoundAssignmentExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JClassFieldExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JClassFieldExpression.genStartStoreCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JClassFieldExpression.genEndStoreCode(CodeSequence code, boolean discardValue)
          Generates a sequence of bytecodes
 void JClassExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JCastExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JUnaryPromote.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JBitwiseExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JArrayLengthExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JArrayAccessExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JArrayAccessExpression.genStartStoreCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JArrayAccessExpression.genEndStoreCode(CodeSequence code, boolean discardValue)
          Generates a sequence of bytecodes
 void MJWarnExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void MJMathModeExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JSwitchGroup.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JCatchClause.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JCatchClause.genExceptionHandler(CodeSequence code, int startPC, int endPC)
          Generates a sequence of bytecodes
 void JBooleanLiteral.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JBooleanLiteral.genBranch(boolean cond, CodeSequence code, CodeLabel label)
          Generates a sequence of bytecodes to branch on a label This method helps to handle heavy optimizables conditions
 void JOrdinalLiteral.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JRealLiteral.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JStringLiteral.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JNullLiteral.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JExplicitConstructorInvocation.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JArrayInitializer.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JArrayDimsAndInits.genCode(CodeSequence code)
          Generates a sequence of bytecodes
static void JArrayDimsAndInits.allocArray(CodeSequence code, CArrayType type, JExpression[] dims)
          Generates a sequence of bytecodes
 void CNumericType.genCastTo(CNumericType dest, CodeSequence code)
          Generates a sequence of bytecodes
protected  void CAnchorInitializer.plantBodyBytecode(CodeSequence code)
          Plants the bytecode for the body of this method, including code to initialize the chain-of-responsibility for the nested dispatcher classes.
protected  void CAssertHelperMethod.plantBodyBytecode(CodeSequence code)
          Plants the bytecode for the body of this method.
protected  void CAssertStaticInitMethod.plantBodyBytecode(CodeSequence code)
          Plants the bytecode for the body of this method.
 void CBooleanValueType.plantDispatchTest(CodeSequence code, CodeLabel nextInstruction)
           
abstract  void CFieldAccessorMethod.genLoad(CodeSequence code)
           
abstract  void CFieldAccessorMethod.genStore(CodeSequence code)
           
protected  void CSourceRedirectorMethod.plantBodyBytecode(CodeSequence code)
          Plants the bytecode for the body of this method.
protected  void CDispatcherInitializer.plantBodyBytecode(CodeSequence code)
          Plants the bytecode for the body of this method, which initializes the chain-of-responsibility for the dispatcher class.
protected  void CFieldGetterMethod.plantBodyBytecode(CodeSequence code)
          Plants the bytecode for the body of this method.
 void CFieldGetterMethod.genLoad(CodeSequence code)
           
 void CFieldGetterMethod.genStore(CodeSequence code)
           
protected  void CFieldSetterMethod.plantBodyBytecode(CodeSequence code)
          Plants the bytecode for the body of this method.
 void CFieldSetterMethod.genLoad(CodeSequence code)
           
 void CFieldSetterMethod.genStore(CodeSequence code)
           
protected  void CFunctionAccessMethod.plantBodyBytecode(CodeSequence code)
          Plants the bytecode for the body of this method.
 void COrdinalValueType.plantDispatchTest(CodeSequence code, CodeLabel nextInstruction)
           
 void CRealValueType.plantDispatchTest(CodeSequence code, CodeLabel nextInstruction)
           
 void CSourceFilteredDispatcherMethod.plantFunctionRef(CodeSequence code)
          Generates bytecode to put a reference to the external function field for the external generic function on the JVM stack.
 void CSourceFilteredDispatcherMethod.genGenFuncInvocation(CodeSequence code, boolean nonVirtual)
          Generates a sequence of bytecode for invoking this method, assuming appropriate argument values have already been pushed to the JVM stack.
protected  void CSourceFilteredDispatcherMethod.plantBodyBytecode(CodeSequence code)
          Plants the bytecode for a dispatcher method that dynamically selects the appropriate multimethod body from the generic function to which CSourceFilteredDispatcherMethod.target belongs, filtered by receivers that are proper supertypes of CSourceFilteredDispatcherMethod.receiverSubclass.
 void CStringValueType.plantDispatchTest(CodeSequence code, CodeLabel nextInstruction)
           
protected  void CWrapperMethod.plantBodyBytecode(CodeSequence code)
          Plants the bytecode for the body of this method.
 void JCheckedExpression.genCode(CodeSequence code)
          Generates a sequence of bytecodes
 void JClassFieldDeclarator.genCode(CodeSequence code)
          Generates a sequence of bytecodes
protected  void JResendExpression.genExternalTargetRef(CodeSequence code)
          Plants the code for putting a reference to the appropriate dispatcher in the chain-of-responsibility onto the stack.
protected  void JResendExpression.genInvocationOpcode(CodeSequence code)
          Generates the bytecode for invoking the actual target method.
 


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.