edu.vub.at.objects
Interface ATField
- All Superinterfaces:
- ATConversions, ATObject
- All Known Implementing Classes:
- JavaField, NATField, NativeField
- public interface ATField
- extends ATObject
ATFields provide a mapping from an immutable name to a potentially mutable value.
Note that when field objects are added to an object, and that object is cloned,
the field object will be re-instantiated (i.e. its 'new' method is invoked).
This implies that any object implementing ATField should provide a meta_newInstance
method whose sole initarg is the new host for the field.
- Author:
- smostinc
Methods inherited from interface edu.vub.at.objects.ATObject |
base__opeql__opeql_, base_init, base_new, meta_addField, meta_addMethod, meta_assignField, meta_assignVariable, meta_clone, meta_defineField, meta_doesNotUnderstand, meta_eval, meta_extend, meta_getDynamicParent, meta_getLexicalParent, meta_getStripes, meta_grabField, meta_grabMethod, meta_invoke, meta_isCloneOf, meta_isRelatedTo, meta_isStripedWith, meta_listFields, meta_listMethods, meta_lookup, meta_newInstance, meta_pass, meta_print, meta_quote, meta_receive, meta_resolve, meta_respondsTo, meta_select, meta_send, meta_share |
Methods inherited from interface edu.vub.at.objects.coercion.ATConversions |
asAmbientTalkObject, asJavaClassUnderSymbiosis, asJavaObjectUnderSymbiosis, asNativeBoolean, asNativeException, asNativeFarReference, asNativeFraction, asNativeNumber, asNativeNumeric, asNativeTable, asNativeText, base_asActorMirror, base_asAsyncMessage, base_asBegin, base_asBoolean, base_asClosure, base_asDefinition, base_asExpression, base_asFarReference, base_asField, base_asHandler, base_asMessage, base_asMessageCreation, base_asMethod, base_asMirror, base_asNumber, base_asSplice, base_asStatement, base_asStripe, base_asSymbol, base_asTable, base_asUnquoteSplice, base_asVariableAssignment, base_isBoolean, base_isCallFrame, base_isClosure, base_isFarReference, base_isMessageCreation, base_isMethod, base_isMirror, base_isSplice, base_isStripe, base_isSymbol, base_isTable, base_isUnquoteSplice, base_isVariableAssignment, isAmbientTalkObject, isJavaObjectUnderSymbiosis, isNativeBoolean, isNativeField, isNativeText |
base_getName
public ATSymbol base_getName()
throws InterpreterException
- Returns:
- a string by which the slot can be identified.
- Throws:
InterpreterException
base_readField
public ATObject base_readField()
throws InterpreterException
- Returns:
- the current value of the field.
- Throws:
InterpreterException
base_writeField
public ATNil base_writeField(ATObject newValue)
throws InterpreterException
- Sets the value of the field if possible
- Parameters:
newValue
- - the value the field should hold.
- Returns:
- - the return value is ignored.
- Throws:
InterpreterException
- - if the field cannot be modified.