JML

org.multijava.mjc
Class ClassCreator

java.lang.Object
  extended byorg.multijava.mjc.ClassCreator
Direct Known Subclasses:
JmlSigClassCreator

public class ClassCreator
extends Object

A factory class to create classes.


Field Summary
private static ClassCreator theInstance
          The unique instance of this class.
 
Constructor Summary
protected ClassCreator()
          Creates a new instance.
 
Method Summary
 CBinaryField createBinaryField(CClass owner, FieldInfo fieldInfo)
          Creates a binary field object.
 CBinaryMethod createBinaryMethod(CClass owner, MethodInfo methodInfo, CClassContextType declCtx)
          Creates a binary method object.
 MemberAccess createMemberAccess(CClass owner, CMemberHost host, ClassInfo classInfo)
          Creates a member access object.
static ClassCreator getInstance()
          Returns the unique intance of this class.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

theInstance

private static final ClassCreator theInstance
The unique instance of this class.

Constructor Detail

ClassCreator

protected ClassCreator()
Creates a new instance. This constructor is private to implement the Singleton pattern.

Method Detail

createBinaryField

public CBinaryField createBinaryField(CClass owner,
                                      FieldInfo fieldInfo)
Creates a binary field object.


createBinaryMethod

public CBinaryMethod createBinaryMethod(CClass owner,
                                        MethodInfo methodInfo,
                                        CClassContextType declCtx)
Creates a binary method object.


createMemberAccess

public MemberAccess createMemberAccess(CClass owner,
                                       CMemberHost host,
                                       ClassInfo classInfo)
Creates a member access object.


getInstance

public static ClassCreator getInstance()
Returns the unique intance of this class.


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.