org.omegahat.Environment.Language.UserClasses
Class AbstractUserClass
java.lang.Object
|
+--org.omegahat.Environment.Databases.ObjectDatabase
|
+--org.omegahat.Environment.Databases.ReadWriteDatabase
|
+--org.omegahat.Environment.Language.UserClasses.MethodsCollection
|
+--org.omegahat.Environment.Language.UserClasses.AbstractUserClass
- All Implemented Interfaces:
- Activable, Database, DatabaseNotifier, DynamicFieldAccessInt, DynamicMethodAccessInt, MergableInt, Named, ReadWriteDatabaseInt, java.io.Serializable, Subsettable, UserClassChangeListener
- Direct Known Subclasses:
- UserClass
- public class AbstractUserClass
- extends MethodsCollection
- implements java.io.Serializable, DynamicFieldAccessInt, DynamicMethodAccessInt, UserClassChangeListener
- See Also:
- Serialized Form
|
Method Summary |
java.util.Vector |
addChangeListener(UserClassChangeListener l)
|
Method |
addConstructor(Function f)
|
Method |
addConstructor(Method f)
|
Method |
addMethod(Function f)
|
Method |
addMethod(java.lang.String name,
Function f)
|
boolean |
classRepresentationChanged(UserClassChangeEvent ev,
boolean force)
Method invoked when a user-level class definition is changed to notify an
object of this modification. |
Method |
constructors()
|
Method |
constructors(Method m)
|
java.util.Vector |
getDeclaredFields()
|
java.lang.Object |
getDynamicField(java.lang.String name)
|
OmegaField |
getField(java.lang.String name)
|
java.util.Vector |
getFields()
|
java.util.Vector |
getFields(boolean declared)
|
Method |
getMethod(java.lang.String name)
|
java.util.Vector |
getSuperclass()
Same as the one for java.lang.Class. |
java.lang.Object |
invoke(java.lang.String name,
List args,
Evaluator evaluator)
|
java.lang.Object |
invoke(java.lang.String name,
java.lang.Object[] args,
Evaluator evaluator)
|
java.util.Vector |
listeners()
|
java.util.Vector |
listeners(java.util.Vector v)
|
Database |
mergeMethods(Database parentMethods)
|
Database |
methods()
|
Database |
methods(Database m)
|
java.lang.String |
name()
|
java.lang.String |
name(java.lang.String n)
|
protected UserClass |
processSuperClass(UserClass cl,
boolean add)
|
boolean |
removeChangeListener(UserClassChangeListener l)
|
java.lang.Object |
setDynamicField(java.lang.String name,
java.lang.Object value)
|
OmegaField |
setField(OmegaField field)
|
OmegaField |
setField(java.lang.String name)
|
OmegaField |
setField(java.lang.String name,
java.lang.Class c)
|
OmegaField |
setField(java.lang.String name,
java.lang.String type)
|
Database |
staticFields()
|
Database |
staticFields(Database tb)
|
Database |
staticFields(int size)
|
java.util.Vector |
superClass()
|
java.util.Vector |
superClass(AbstractUserClass c)
|
java.util.Vector |
superClass(java.util.Vector c)
|
protected java.util.Vector |
superClass(java.util.Vector c,
boolean add)
|
| Methods inherited from class org.omegahat.Environment.Databases.ObjectDatabase |
addAssignListener, addAttachListener, addDetachListener, addListener, addRemoveListener, assign, attach, clear, detach, exists, get, getName, getState, getTable, merge, merge, notify, objects, put, readOnly, readOnly, readSerialized, readSerialized, readSerialized, remove, setName, setState, setTable, size, subset, table, table |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
name
protected java.lang.String name
superClass
protected java.util.Vector superClass
derivedClasses
protected java.util.Vector derivedClasses
listeners
protected java.util.Vector listeners
constructors
protected Method constructors
methods
protected Database methods
staticFields
protected Database staticFields
AbstractUserClass
public AbstractUserClass()
AbstractUserClass
public AbstractUserClass(int size)
AbstractUserClass
public AbstractUserClass(java.lang.String name)
AbstractUserClass
public AbstractUserClass(java.lang.String name,
AbstractUserClass superClass)
- Protected since one shouldn't be able to change this.
AbstractUserClass
public AbstractUserClass(java.lang.String name,
AbstractUserClass[] baseClasses)
AbstractUserClass
public AbstractUserClass(java.lang.String name,
java.util.Vector baseClassName)
getFields
public java.util.Vector getFields(boolean declared)
getFields
public java.util.Vector getFields()
getDeclaredFields
public java.util.Vector getDeclaredFields()
listeners
public java.util.Vector listeners()
listeners
public java.util.Vector listeners(java.util.Vector v)
superClass
public java.util.Vector superClass()
getSuperclass
public java.util.Vector getSuperclass()
- Same as the one for java.lang.Class.
superClass
public java.util.Vector superClass(AbstractUserClass c)
superClass
public java.util.Vector superClass(java.util.Vector c)
superClass
protected java.util.Vector superClass(java.util.Vector c,
boolean add)
name
public java.lang.String name()
name
public java.lang.String name(java.lang.String n)
staticFields
public Database staticFields()
staticFields
public Database staticFields(int size)
staticFields
public Database staticFields(Database tb)
methods
public Database methods()
methods
public Database methods(Database m)
constructors
public Method constructors()
constructors
public Method constructors(Method m)
processSuperClass
protected UserClass processSuperClass(UserClass cl,
boolean add)
mergeMethods
public Database mergeMethods(Database parentMethods)
setField
public OmegaField setField(java.lang.String name,
java.lang.Class c)
setField
public OmegaField setField(java.lang.String name,
java.lang.String type)
throws java.lang.ClassNotFoundException
setField
public OmegaField setField(java.lang.String name)
setField
public OmegaField setField(OmegaField field)
addMethod
public Method addMethod(java.lang.String name,
Function f)
addMethod
public Method addMethod(Function f)
addConstructor
public Method addConstructor(Function f)
addConstructor
public Method addConstructor(Method f)
getField
public OmegaField getField(java.lang.String name)
throws java.lang.Throwable
getMethod
public Method getMethod(java.lang.String name)
throws java.lang.Throwable
getDynamicField
public java.lang.Object getDynamicField(java.lang.String name)
throws java.lang.Throwable
- Specified by:
getDynamicField in interface DynamicFieldAccessInt- Overrides:
getDynamicField in class ObjectDatabase
setDynamicField
public java.lang.Object setDynamicField(java.lang.String name,
java.lang.Object value)
throws java.lang.Throwable
- Specified by:
setDynamicField in interface DynamicFieldAccessInt- Overrides:
setDynamicField in class ObjectDatabase
invoke
public java.lang.Object invoke(java.lang.String name,
java.lang.Object[] args,
Evaluator evaluator)
throws java.lang.Throwable
- Specified by:
invoke in interface DynamicMethodAccessInt
invoke
public java.lang.Object invoke(java.lang.String name,
List args,
Evaluator evaluator)
throws java.lang.Throwable
- Specified by:
invoke in interface DynamicMethodAccessInt
addChangeListener
public java.util.Vector addChangeListener(UserClassChangeListener l)
removeChangeListener
public boolean removeChangeListener(UserClassChangeListener l)
classRepresentationChanged
public boolean classRepresentationChanged(UserClassChangeEvent ev,
boolean force)
- Description copied from interface:
UserClassChangeListener
- Method invoked when a user-level class definition is changed to notify an
object of this modification. This might be a class viewer, an instance of the class,
a logging system, etc.
- Specified by:
classRepresentationChanged in interface UserClassChangeListener
- Following copied from interface:
org.omegahat.Environment.Language.UserClasses.UserClassChangeListener
- Parameters:
ev - an event containing information about which class and element was changed.force - ?- Returns:
- boolean indicating whether the change is ok or if this object wishes
to veto the change (
false)