JML

org.multijava.mjc
Interface CInterfaceContextType

All Superinterfaces:
CClassContextType, CContextType
All Known Implementing Classes:
CInterfaceContext, JmlInterfaceContext

public interface CInterfaceContextType
extends CClassContextType

This class represents the context for an interface declaration during checking passes (checkInterface, checkInitializers, typecheck).

See Also:
CContextType

Method Summary
 void checkingComplete(JTypeDeclarationType decl, CVariableInfoTable staticC, CVariableInfoTable instanceC, CVariableInfoTable[] constructorsC)
          Verifies all final fields are initialized.
 
Methods inherited from interface org.multijava.mjc.CClassContextType
addInitializer, createConstructorContext, createInitializerContext, createMethodContext, fieldInfo, fieldInfoTable, findNearestHost, getClassContext, getHostClass, getOwnerClass, hasInitializer, initializeField, isFieldDefinitelyAssigned, lookupClass, lookupField, lookupMethod, lookupMethodOrSet, lookupOuterField, lookupOuterLocalVariable, lookupTypeVariable, markAllFieldsAsInitialized, registerVisibleType, replaceFieldInfoUpTo, resolveMaybeExtMethodRef, setFieldInfoTable
 
Methods inherited from interface org.multijava.mjc.CContextType
addFANonNull, addFANonNulls, addFANull, addFANulls, adoptNullityInfo, arithmeticMode, catchUp, check, check, check, check, classToGenerate, createClassContext, createExtMethodContext, createInterfaceContext, declaredOutsideOfLoop, declares, dumpNonNulls, fail, fail, getCMethod, getCompilationUnit, getCompiler, getFANonNulls, getFANulls, getFlowControlContext, getMethodContext, getParentContext, isBeforeSuperConstructorCall, isFANonNull, isInConstructor, isInInitializer, isInLoop, isPure, isStatic, lookupField, lookupLocalVariable, lookupMethod, lookupMethodOrSet, lookupOuterField, mergeNullityInfo, modUtil, registerGFDecl, registerVisibleMethod, removeAllFANullity, removeFANonNull, reportTrouble
 

Method Detail

checkingComplete

public void checkingComplete(JTypeDeclarationType decl,
                             CVariableInfoTable staticC,
                             CVariableInfoTable instanceC,
                             CVariableInfoTable[] constructorsC)
                               throws UnpositionedError
Verifies all final fields are initialized. Currently this checks nothing. Probably needs to check that fields are initialized since interfaces can have fields (or does this initialization then fall to implementors?). !FIXME!

Specified by:
checkingComplete in interface CClassContextType
Throws:
UnpositionedError - if any checks fail

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.