JML

org.multijava.mjc
Interface CGenericFunctionCollection

All Known Implementing Classes:
CBinaryGFCollection, CGenericFunctionCollection.CGenericFunctionCollection$1, CGenericFunctionCollection.Impl, CSourceGFCollection

public interface CGenericFunctionCollection

This interface represents a single generic function collection, which encapsulates all the top-level methods of the same name declared in a given context. It include a methods for adding the methods of the collection to the classes that they augment. A nested class is provided that implementors can delegate to.

See Also:
CGFCollectionMap

Field Summary
static CGenericFunctionCollection GF_UNDEFINED
          This is just a unique object implementing the interface but doing nothing.
 
Method Summary
 void applyAugmentationFor(CContextType context)
          For the given context, augments the appropriate classes based on the methods in this collection.
 String qualifiedName()
          Returns the fully qualified name of this generic function collection.
 

Field Detail

GF_UNDEFINED

public static final CGenericFunctionCollection GF_UNDEFINED
This is just a unique object implementing the interface but doing nothing. It is used as a marker in CTopLevel.gfCollSingletonMap and as a return value from CTopLevel.lookupGFCollection

See Also:
CTopLevel.gfCollSingletonMap, CTopLevel.lookupGFCollection(String)
Method Detail

applyAugmentationFor

public void applyAugmentationFor(CContextType context)
For the given context, augments the appropriate classes based on the methods in this collection. For each method m in this collection, a mapping from the given context to m is added to the CClass representing m's receiver type.

Parameters:
context - the context in which the augmentation occurs

qualifiedName

public String qualifiedName()
Returns the fully qualified name of this generic function collection.


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.