edu.isi.stella
Class Stella_Class

java.lang.Object
  extended by edu.isi.stella.Stella_Object
      extended by edu.isi.stella.StandardObject
          extended by edu.isi.stella.MappableObject
              extended by edu.isi.stella.Relation
                  extended by edu.isi.stella.Stella_Class

public class Stella_Class
extends Relation


Field Summary
 Cons classAllSlots
           
 Cons classAllSuperClasses
           
 boolean classCollectionP
           
 java.lang.reflect.Method classConstructorCode
           
 List classDirectSubs
           
 List classDirectSupers
           
 boolean classFinalizedP
           
 List classLocalSlots
           
 boolean classMarkedP
           
 boolean classPublicP
           
 java.lang.reflect.Method classSlotAccessorCode
           
 Vector classSlotAndMethodCache
           
 boolean classSlotsFinalizedP
           
 java.lang.String classStringifiedSource
           
 TaxonomyNode classTaxonomyNode
           
 Surrogate classType
           
 boolean clStructP
           
 boolean mixinP
           
 
Fields inherited from class edu.isi.stella.Relation
abstractP
 
Fields inherited from class edu.isi.stella.MappableObject
dynamicSlots
 
Constructor Summary
Stella_Class()
           
 
Method Summary
static Stella_Object accessClassSlotValue(Stella_Class self, Symbol slotname, Stella_Object value, boolean setvalueP)
           
static void activateClass(Stella_Class renamed_Class)
           
 boolean activeP()
           
static void addDirectSubsBackLinks(Stella_Class renamed_Class)
           
static void addDirectSupersBackLinks(Stella_Class renamed_Class)
           
static void addPrimaryType(Stella_Class renamed_Class)
           
 Iterator allClassSlots()
           
 int arity()
           
static boolean clAlwaysTranslateToClosClassP(Stella_Class renamed_Class)
           
 int classArity()
           
 List classAuxiliaryMethods()
           
 List classClStructSlots()
           
 List classConstructorDemons()
           
 List classDestructorDemons()
           
 List classGuardConstructorDemons()
           
 List classGuardDestructorDemons()
           
 List classKey()
           
static Iterator classMethods(Stella_Class renamed_Class, Cons filters)
           
static java.lang.String className(Stella_Class renamed_Class)
           
static boolean classNameConflictsWithSlotNameP(Stella_Class definingClass, java.lang.String javaClassName)
           
static List classNativeSupers(Stella_Class renamed_Class)
           
 List classParameters()
           
 Keyword classRecycleMethod()
           
 List classRequiredSlotNames()
           
 Iterator classSlots()
           
static Iterator classStorageSlots(Stella_Class renamed_Class, Cons filters)
           
static Symbol classSymbol(Stella_Class renamed_Class)
           
 List classSynonyms()
           
static Iterator classTables(Stella_Class renamed_Class, Cons filters)
           
static boolean classWithInitializerP(Stella_Class renamed_Class)
           
static void cleanupAuxiliaryMethods(Stella_Class renamed_Class)
           
static void clearSlotAndMethodCache(Stella_Class renamed_Class)
           
 java.lang.String clNativeType()
           
static List clStructSlots(Stella_Class renamed_Class)
           
static Stella_Object clTranslateClassName(Stella_Class renamed_Class)
           
static void collectDirectSuperClasses(Stella_Class renamed_Class, List parents)
           
static void collectMostSpecificPrimitiveSupers(Stella_Class renamed_Class, List supers)
           
static List computeClStructSlots(Stella_Class renamed_Class)
           
static int computeRecycledItemSize(Stella_Class renamed_Class)
           
static void computeRequiredSlotNames(Stella_Class renamed_Class)
           
static boolean cppClassHasOnlyNativeParentsP(Stella_Class renamed_Class)
           
static Cons cppGetConstructorDefinitions(Stella_Class renamed_Class)
           
static Cons cppGetMemberVariableDefinitions(Stella_Class renamed_Class, java.lang.Object[] MV_returnarray)
           
static Cons cppGetMethodDefinitions(Stella_Class renamed_Class, java.lang.Object[] MV_returnarray)
           
static Cons cppGetParameterizedMemberVariableDefinitions(Stella_Class renamed_Class)
           
static Cons cppGetStaticVariableDefinitions(Stella_Class renamed_Class)
           
 java.lang.String cppNativeType()
           
static Cons cppYieldExceptionConstructorDefinition(Stella_Class renamed_Class)
           
static void createConstructorAndDestructorUnits(Stella_Class renamed_Class)
           
static void createCppConstructorUnit(Stella_Class renamed_Class)
           
static void createDefprintUnit(Stella_Class renamed_Class)
           
static void createGenericSlotAccessorUnit(Stella_Class renamed_Class)
           
static void createInlineMethodUnits(Stella_Class renamed_Class)
           
static void createKeyedEqualityMethodUnit(Stella_Class renamed_Class)
           
static void createMixinMethodUnits(Stella_Class renamed_Class)
           
static boolean createNativeClassP(Stella_Class renamed_Class)
           
static void createSlotAccessorUnits(Stella_Class renamed_Class)
           
 Symbol creator()
           
static boolean decidedToRecycleP(Stella_Class renamed_Class)
           
 void describeObject(OutputStream stream, Keyword mode)
          Prints a description of 'self' to stream 'stream'.
 void destroyClass()
          Destroy the Stella class self.
static void destroyClassAndSubclasses(Stella_Class self)
          Destroy the Stella class self and all its subclasses.
 Symbol destructor()
           
 Iterator directSuperClasses()
          Returns an iterator that generates all direct super classes of self.
static boolean exceptionClassP(Stella_Class renamed_Class)
           
 ClassExtension extension()
          Return the nearest class extension that records instances of the class self.
static boolean fastSubclassOfP(Stella_Class subclass, Stella_Class superclass)
           
static boolean filterStringToClassP(Stella_Class self, AllPurposeIterator iterator)
           
static boolean finalizeClass(Stella_Class renamed_Class)
           
static void finalizeClassSlots(Stella_Class renamed_Class)
           
static void finalizeOneClass(Stella_Class renamed_Class)
           
static void forgetUnfinalizedClass(Stella_Class renamed_Class)
           
static void freeRequiredSlotNames(Stella_Class renamed_Class)
           
static java.lang.reflect.Method getConstructor(Stella_Class renamed_Class, boolean warnP)
           
static PropertyList getUnstringifiedClassOptions(Stella_Class renamed_Class)
           
static boolean helpFinalizeClass(Stella_Class renamed_Class, Surrogate finalizedparent)
           
static boolean helpMostSpecificMethodP(Stella_Class renamed_Class, MethodSlot method)
           
 void helpPrintOutline(OutputStream stream, int currentDepth, int depth, boolean namedP)
          Helper method for printOutline
static void helpUnfinalizeClassSlots(Stella_Class renamed_Class)
           
 Module homeModule()
          Return the home module of self.
static Symbol idlClassCategory(Stella_Class renamed_Class)
           
static Cons idlGetAttributeDefinitions(Stella_Class renamed_Class)
           
static Cons idlGetConstructorDefinitions(Stella_Class renamed_Class)
           
static Cons idlGetOperationDefinitions(Stella_Class renamed_Class)
           
static Cons idlGetParameterizedAttributeDefinitions(Stella_Class renamed_Class)
           
static Cons idlGetStaticVariableDefinitions(Stella_Class renamed_Class)
           
 java.lang.String idlNativeType()
           
static void idlTranslateClassToStream(Stella_Class renamed_Class, java.io.PrintStream nativeStream)
           
static void incorporateClassOptions(Stella_Class renamed_Class, KeywordKeyValueList options)
           
static void inheritSlots(Stella_Class renamed_Class)
           
static void inheritSuperclasses(Stella_Class renamed_Class)
           
 Symbol initializer()
           
static void initializeSlotAndMethodCache(Stella_Class renamed_Class)
           
 Stella_Object initialValue()
          Return an initial value for the class self.
static Cons javaGetConstructorAndMethodDefinitions(Stella_Class renamed_Class, java.lang.Object[] MV_returnarray)
           
static Cons javaGetInstanceVariableDefinitions(Stella_Class renamed_Class)
           
 java.lang.String javaMakeCodeOutputFileName(boolean donttruncateP)
           
 java.lang.String javaNativeType()
           
static void javaOutputClassToFile(Stella_Class renamed_Class)
           
static Cons javaTranslateDefineNativeClass(Stella_Class renamed_Class)
           
 List localSlots()
           
static Slot lookupLocalSlot(Stella_Class renamed_Class, Symbol slotName)
          Lookup a local slot with slotName on renamed_Class.
static Slot lookupSlot(Stella_Class renamed_Class, Symbol slotName)
          Return a slot owned by the class renamed_Class with name slotName.
static Slot lookupVisibleSlot(Stella_Class renamed_Class, Stella_Object slotName)
           
static void markRenamingSlots(Stella_Class renamed_Class)
           
static List mostSpecificPrimitiveSupers(Stella_Class renamed_Class)
           
 boolean multipleParentsP()
          Return true if renamed_Class has more than one direct superclass.
 java.lang.String name()
           
static Stella_Class newClass()
           
static boolean parameterizedClassP(Stella_Class renamed_Class)
           
 List parameters()
          Returns the list of parameters names of self.
static void prettyPrintClassOptions(Stella_Class renamed_Class, OutputStream stream)
           
 void prettyPrintObject(OutputStream stream)
           
static void prettyPrintSlots(Stella_Class self, OutputStream stream)
           
 Surrogate primaryType()
          Returns the primary type of self.
 void printObject(java.io.PrintStream stream)
           
static Iterator privateClassMethods(Stella_Class renamed_Class)
          Iterate over all private methods attached to 'class'.
static Iterator privateClassStorageSlots(Stella_Class renamed_Class)
          Iterate over all private storage-slots attached to 'class'.
static Iterator publicClassMethods(Stella_Class renamed_Class)
          Iterate over all private methods attached to 'class'.
static Iterator publicClassStorageSlots(Stella_Class renamed_Class)
          Iterate over all public storage-slots attached to 'class'.
 boolean publicP()
           
 Iterator publicSlots()
          Return an iterator over public slots of self.
static StorageSlot recycleSlot(Stella_Class renamed_Class)
           
static void rememberUnfinalizedClass(Stella_Class renamed_Class, boolean forceP)
           
static void removeDirectSupersBackLinks(Stella_Class renamed_Class)
           
 List requiredSlots()
          Returns a list of names of required slots for self.
static boolean rootClassP(Stella_Class renamed_Class)
           
static Slot safeLookupSlot(Stella_Class renamed_Class, Symbol slotName)
          Alias for lookupSlot.
static boolean subclassOfP(Stella_Class subclass, Stella_Class superclass)
          Return true if subclass is a subclass of superclass.
 Iterator superClasses()
          Returns an iterator that generates all super classes of self.
static boolean taxonomySubclassOfP(Stella_Class subclass, Stella_Class superclass)
           
 Symbol terminator()
           
static void transferDemonsFromOldclass(Stella_Class oldclass, Stella_Class newclass)
           
static Stella_Class twoArgumentLeastCommonSuperclass(Stella_Class class1, Stella_Class class2)
          Return the most specific class that is a superclass of both class1 and class2.
 void unbindFromSurrogate()
           
static void undefineOldClass(Stella_Class oldclass, Stella_Class newclass)
           
static void unfinalizeClassAndSubclasses(Stella_Class renamed_Class)
           
static void unfinalizeClassSlots(Stella_Class renamed_Class)
           
static void uninheritSlots(Stella_Class renamed_Class)
           
static void uninheritSuperclasses(Stella_Class renamed_Class)
           
static boolean useFreeListP(Stella_Class renamed_Class)
           
static boolean useSweepListP(Stella_Class renamed_Class)
           
static void warnAboutMultipleParents(Stella_Class renamed_Class)
           
static void warnAboutNonDirectSupers(Stella_Class renamed_Class)
           
static Cons yieldClassParameterTypes(Stella_Class renamed_Class)
           
static Cons yieldClosClassTree(Stella_Class renamed_Class)
           
static Cons yieldConditionTree(Stella_Class renamed_Class)
           
static Cons yieldConstructorAttachment(Stella_Class renamed_Class, Symbol classref)
           
static Cons yieldConstructorBody(Stella_Class renamed_Class, Cons requiredassignments)
           
static Cons yieldConstructorDefinition(Stella_Class renamed_Class)
           
static Symbol yieldConstructorName(Stella_Class renamed_Class)
           
static Cons yieldCreationOrReuseTrees(Stella_Class renamed_Class)
           
static Cons yieldCreationOrReuseTreesFromFreeList(Stella_Class renamed_Class)
           
static Cons yieldCreationOrReuseTreesFromFreeOrSweepList(Stella_Class renamed_Class)
           
static Cons yieldCreationOrReuseTreesFromSweepList(Stella_Class renamed_Class)
           
static Cons yieldCreationTrees(Stella_Class renamed_Class)
           
static Cons yieldDefineStellaClass(Stella_Class renamed_Class)
          Return a cons tree that (when evaluated) constructs a Stella class object.
static Cons yieldDestructorDefinitions(Stella_Class renamed_Class)
           
static Cons yieldExceptionConstructorBody(Stella_Class renamed_Class, Symbol messageparameter, Cons requiredassignments)
           
static Cons yieldExceptionConstructorDefinition(Stella_Class renamed_Class)
           
static Cons yieldGenericSlotAccessorAttachment(Stella_Class renamed_Class, Symbol classref)
           
static Cons yieldGenericSlotAccessorDefinition(Stella_Class renamed_Class)
           
static Symbol yieldGenericSlotAccessorName(Stella_Class renamed_Class)
           
static Cons yieldInitializeHardwiredSlots(Stella_Class renamed_Class)
           
static Cons yieldInitializerDefinition(Stella_Class renamed_Class)
           
static Symbol yieldInitializerName(Stella_Class renamed_Class)
           
static Cons yieldInitializerTrees(Stella_Class renamed_Class)
           
static Cons yieldInitialValueAssignments(Stella_Class renamed_Class, Keyword mode)
           
static Cons yieldLocalInitialValueAssignments(Stella_Class renamed_Class)
           
static Cons yieldMakeTrees(Stella_Class renamed_Class)
           
static Cons yieldMixinClassUsersTree(Stella_Class renamed_Class)
           
static Cons yieldRecycleListDefinitions(Stella_Class renamed_Class)
           
static Symbol yieldRecycleListName(Stella_Class renamed_Class)
           
static Stella_Object yieldStructConstructorName(Stella_Class renamed_Class)
           
static Cons yieldStructSlotTrees(Stella_Class renamed_Class)
           
static Cons yieldStructTree(Stella_Class renamed_Class)
           
static Cons yieldTerminateObjectTrees(Stella_Class renamed_Class)
           
static Stella_Object yieldVectorStructName(Stella_Class renamed_Class)
           
static Cons yieldVectorStructTree(Stella_Class renamed_Class)
           
 
Methods inherited from class edu.isi.stella.Relation
accessRelationSlotValue, allSupers, directSupers, primitiveP, privateP, properties, slots
 
Methods inherited from class edu.isi.stella.MappableObject
accessMappableObjectSlotValue, badP, deletedP, deletedPSetter, projectedFrom, projectsOnto
 
Methods inherited from class edu.isi.stella.StandardObject
arrayTypeSpecifierP, baseTypeToTypeSpec, cantOverwriteActiveCollectionSlot, compatibleParameterTypesP, computeAnchoredTypeSpec, computeRelativeTypeSpec, conformingTypeSpecP, copyWrappedLiteral, cppReferenceTypeP, cppReferencizeType, cppTranslateAndPointerizeTypeSpec, cppTranslateAndReferencizeTypeSpec, cppTranslateTypeSpec, dropSlotValue, extractParameterType, extractRequiredArgumentValues, getSlot, hashCode_, idlTranslateTypeSpec, inverseSlotDemon, javaLiteralP, javaNativeLiteralWrapperNames, javaSpecialSetterName, javaTranslateArrayOfTypeSpec, javaTranslateTypeSpec, javaTranslateTypeSpecForFunction, javaTranslateTypeSpecHelper, javaYieldClassObjectArrayExpression, javaYieldClassObjectExpression, javaYieldFullyQualifiedTypeName, javaYieldTranslatedClassAndMethodNames, listifyTypeSpec, lookupClTypeFromStellaType, objectEqlP, putSlotValue, readSlotValue, runConstructorDemons, runDestructorDemons, runSlotDemons, runSlotGuardDemonsP, standardObjectP, subTypeSpecOfP, twoArgumentLeastCommonSupertype, typeSpecToBaseType, typeSpecToClass, typeToWalkedNullValueTree, validateTypeSpecifier, voidP, walkTypeSpecIsNativeTypeP, writeSlotValue, yieldTypeSpecTree
 
Methods inherited from class edu.isi.stella.Stella_Object
_, accessInContext, amPm, anchoredTypeSpecifierP, andOrNotTreeP, applyCoercionMethod, atomicExpressionP, bindToSurrogateP, booleanP, bootstrapIsaP, bquotify, cast, characterP, clTranslateAtomicTree, clTranslateATree, clTranslateBooleanTest, clTranslatePlainBooleanTest, clTranslateVerbatimBodySymbols, clYieldTypedExpressionTree, coerceATree, coerceEvaluatedTree, coerceMvTree, coerceToBoolean, coerceToModule, coerceToModuleName, coerceToSymbol, coerceToXmlElement, coercibleP, collectFeatureList, collectKeyValueList, commonLispSymbolP, computeExpressionType, cons, consify, consifyListsAndIterators, consP, consTreeMatchP, convertToLiteral, copyConsTree, cppArgumentIsStreamP, cppBinaryOperatorP, cppBlockP, cppMaybeOutputStatementWithParentheses, cppOperatorP, cppOutputAtomicExpression, cppOutputLiteral, cppOutputOneActualParameter, cppOutputStatement, cppOutputTypedEntity, cppPrognifyStatement, cppPrognP, cppStatementToList, cppStreamIsStandardOutputP, cpptrans, cppTranslateAtomicTree, cppTranslateATree, cppTranslatedArrayTypeP, csValueP, dateDivider, dateTimeDivider, day, dealWithAmPm, dealWithEra, dealWithNoonMidn, decrementReferenceCount, defaultOptionHandler, defineSystem, defmodule, describe, describeTersely, destructureMethodNameTree, deUglifyParseTree, either, eqlP, eqlToBooleanP, eqlToCharacterP, eqlToFloatP, eqlToIntegerP, eqlToStringP, equalConsTreesP, equalHashCode, equalP, era, estimatedEvaluationCost, evaluate, evaluateArgumentTree, evaluateAtomicTree, evaluateCommand, expandBquoteTree, filterModuleP, floatP, free, get, getObject, hashlist, hashMemoizedArguments, helpBquotify, helpClTranslateATree, helpCoerceATree, helpLptrans, helpTransformBooleanProceduralExpression, helpWalkATree, hour, idlOutputAtomicExpression, idlOutputLiteral, idlOutputStatement, idlTranslateAtomicTree, idlTranslateATree, illegalTreeP, implodePathname, incrementallyTranslate, incrementReferenceCount, inlineUnwrapBoolean, inlineWrapBoolean, inModule, integerP, isaP, javaBinaryOperatorP, javaBlockP, javaEndOfLineTokenP, javaHelpOutputPrintStream, javaMaybeOutputStatementWithParentheses, javaOperatorP, javaOutputLiteral, javaOutputStatement, javaPrognP, javaStreamIsStandardOutputP, javaSymbolCaseP, javaTranslateAtomicTree, javaTranslateATree, javaTranslateWithNativeWrapper, jptrans, keywordP, kvCons, legalTokenizerFromStateP, legalTokenizerStateP, legalTokenizerToStateP, literalEqlP, logLevelLE, lptrans, makeFileNameFromRelativePath, makeMemoizedValueEntry, makeMemoizedValueEntryn, matchConsTree, methodSlotP, minute, month, nameToString, nilP, noonMidn, numberWrapperToFloat, objectEqualP, objectHashCode, one, oneI, onlyIf, parametricTypeSpecifierP, parseArrayDimensionsSpec, parseTokenizerCharacterSpec, parseTokenizerStateModifiers, permanentCopy, permanentify, permanentifyForm, po, prettyPrintLiteral, primaryClass, printOutline, printStellaCode, printStellaDefinition, printUndefinedSuperClasses, proceduralExpressionP, ptrans, registerRecycledItem, runOptionHandlerP, safeEqualHashCode, safeHashCode, safePrimaryType, safeYieldTypeSpecifier, searchConsTreeP, searchConsTreeWithFilterP, searchForObject, secondp, sideEffectFreeExpressionP, simplifyBquoteTree, specialp, stella_Increment, stellaClassP, stellaCollectionP, stellaNeedToCompileP, stellaNeedToTranslateP, stellaObjectP, stellify, storageSlotP, stringifyInModule, stringP, substituteConsTree, substituteOnce, surrogateP, surrogatify, sweep, symbolCaseP, symbolP, sysTree, targetLanguageType, taxonomyIsaP, timeDivider, timeMultiply, tokenizerIncludeSpecP, tokenizerToStateAlias, tokenizerToStateName, toString, traceIf, traceKeywordP, transientifyForm, transientObjectP, transientSymbolP, translateWalkedTree, treeSize, treeToTrees, trueOptionP, tryToEvaluate, typeP, typify, unmake, unregisterRecycledItem, updateInContext, valuesTreeP, variableExpressionP, verbatimStringP, verbatimTreeP, vetOptions, vrletExpressionP, walkAtomicTree, walkATree, walkCollectionTree, walkDontCallMeTree, walkedExpressionType, walkExpressionTree, walkMvExpressionTree, walkMvTree, walkStatement, walkTopLevelExpression, walkWithoutTypeTree, warnAboutUnknownSourceType, weekday, withinContext, withinModule, withinWorld, withStellaTokenizer, withSystemDefinition, withTokenizer, wrapperP, wrapWhereTest, xmlAttributeP, xmlCdataFormP, xmlCdataP, xmlDeclarationFormP, xmlDeclarationP, xmlDoctypeFormP, xmlElementFormP, xmlElementP, xmlnsAttributeP, xmlProcessingInstructionFormP, xmlProcessingInstructionP, xmlTagCase, year, yieldCondTest, yieldCondTestOrTests, yieldHardcodedCaseSymbolIdOrIds, yieldInCursorClausesForArgumentList, yieldInCursorClausesForGeneralCollection, yieldInCursorClausesForVector, yieldTypeSpecifier, zone, zoneMinute
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

clStructP

public boolean clStructP

mixinP

public boolean mixinP

classType

public Surrogate classType

classDirectSupers

public List classDirectSupers

classDirectSubs

public List classDirectSubs

classAllSuperClasses

public Cons classAllSuperClasses

classAllSlots

public Cons classAllSlots

classLocalSlots

public List classLocalSlots

classSlotAndMethodCache

public Vector classSlotAndMethodCache

classCollectionP

public boolean classCollectionP

classPublicP

public boolean classPublicP

classFinalizedP

public boolean classFinalizedP

classSlotsFinalizedP

public boolean classSlotsFinalizedP

classStringifiedSource

public java.lang.String classStringifiedSource

classConstructorCode

public java.lang.reflect.Method classConstructorCode

classSlotAccessorCode

public java.lang.reflect.Method classSlotAccessorCode

classMarkedP

public boolean classMarkedP

classTaxonomyNode

public TaxonomyNode classTaxonomyNode
Constructor Detail

Stella_Class

public Stella_Class()
Method Detail

newClass

public static Stella_Class newClass()

helpPrintOutline

public void helpPrintOutline(OutputStream stream,
                             int currentDepth,
                             int depth,
                             boolean namedP)
Helper method for printOutline

Overrides:
helpPrintOutline in class Stella_Object
Parameters:
stream -
currentDepth -
depth -
namedP -

idlTranslateClassToStream

public static void idlTranslateClassToStream(Stella_Class renamed_Class,
                                             java.io.PrintStream nativeStream)

idlClassCategory

public static Symbol idlClassCategory(Stella_Class renamed_Class)

idlGetOperationDefinitions

public static Cons idlGetOperationDefinitions(Stella_Class renamed_Class)

idlGetConstructorDefinitions

public static Cons idlGetConstructorDefinitions(Stella_Class renamed_Class)

idlGetStaticVariableDefinitions

public static Cons idlGetStaticVariableDefinitions(Stella_Class renamed_Class)

idlGetAttributeDefinitions

public static Cons idlGetAttributeDefinitions(Stella_Class renamed_Class)

idlGetParameterizedAttributeDefinitions

public static Cons idlGetParameterizedAttributeDefinitions(Stella_Class renamed_Class)

javaTranslateDefineNativeClass

public static Cons javaTranslateDefineNativeClass(Stella_Class renamed_Class)

javaGetConstructorAndMethodDefinitions

public static Cons javaGetConstructorAndMethodDefinitions(Stella_Class renamed_Class,
                                                          java.lang.Object[] MV_returnarray)

javaGetInstanceVariableDefinitions

public static Cons javaGetInstanceVariableDefinitions(Stella_Class renamed_Class)

classNameConflictsWithSlotNameP

public static boolean classNameConflictsWithSlotNameP(Stella_Class definingClass,
                                                      java.lang.String javaClassName)

javaOutputClassToFile

public static void javaOutputClassToFile(Stella_Class renamed_Class)

javaMakeCodeOutputFileName

public java.lang.String javaMakeCodeOutputFileName(boolean donttruncateP)

cppClassHasOnlyNativeParentsP

public static boolean cppClassHasOnlyNativeParentsP(Stella_Class renamed_Class)

markRenamingSlots

public static void markRenamingSlots(Stella_Class renamed_Class)

cppGetMethodDefinitions

public static Cons cppGetMethodDefinitions(Stella_Class renamed_Class,
                                           java.lang.Object[] MV_returnarray)

cppGetConstructorDefinitions

public static Cons cppGetConstructorDefinitions(Stella_Class renamed_Class)

cppGetStaticVariableDefinitions

public static Cons cppGetStaticVariableDefinitions(Stella_Class renamed_Class)

cppGetMemberVariableDefinitions

public static Cons cppGetMemberVariableDefinitions(Stella_Class renamed_Class,
                                                   java.lang.Object[] MV_returnarray)

cppGetParameterizedMemberVariableDefinitions

public static Cons cppGetParameterizedMemberVariableDefinitions(Stella_Class renamed_Class)

cppYieldExceptionConstructorDefinition

public static Cons cppYieldExceptionConstructorDefinition(Stella_Class renamed_Class)

describeObject

public void describeObject(OutputStream stream,
                           Keyword mode)
Description copied from class: Stella_Object
Prints a description of 'self' to stream 'stream'. 'mode' can be :terse, :verbose, or :source. The :terse mode is often equivalent to the standard print function.

Overrides:
describeObject in class Stella_Object

prettyPrintObject

public void prettyPrintObject(OutputStream stream)

prettyPrintSlots

public static void prettyPrintSlots(Stella_Class self,
                                    OutputStream stream)

prettyPrintClassOptions

public static void prettyPrintClassOptions(Stella_Class renamed_Class,
                                           OutputStream stream)

getUnstringifiedClassOptions

public static PropertyList getUnstringifiedClassOptions(Stella_Class renamed_Class)

filterStringToClassP

public static boolean filterStringToClassP(Stella_Class self,
                                           AllPurposeIterator iterator)

clAlwaysTranslateToClosClassP

public static boolean clAlwaysTranslateToClosClassP(Stella_Class renamed_Class)

yieldConditionTree

public static Cons yieldConditionTree(Stella_Class renamed_Class)

yieldVectorStructTree

public static Cons yieldVectorStructTree(Stella_Class renamed_Class)

yieldVectorStructName

public static Stella_Object yieldVectorStructName(Stella_Class renamed_Class)

yieldStructTree

public static Cons yieldStructTree(Stella_Class renamed_Class)

yieldStructSlotTrees

public static Cons yieldStructSlotTrees(Stella_Class renamed_Class)

clStructSlots

public static List clStructSlots(Stella_Class renamed_Class)

computeClStructSlots

public static List computeClStructSlots(Stella_Class renamed_Class)

yieldClosClassTree

public static Cons yieldClosClassTree(Stella_Class renamed_Class)

yieldStructConstructorName

public static Stella_Object yieldStructConstructorName(Stella_Class renamed_Class)

clTranslateClassName

public static Stella_Object clTranslateClassName(Stella_Class renamed_Class)

createDefprintUnit

public static void createDefprintUnit(Stella_Class renamed_Class)

createMixinMethodUnits

public static void createMixinMethodUnits(Stella_Class renamed_Class)

createInlineMethodUnits

public static void createInlineMethodUnits(Stella_Class renamed_Class)

createSlotAccessorUnits

public static void createSlotAccessorUnits(Stella_Class renamed_Class)

cleanupAuxiliaryMethods

public static void cleanupAuxiliaryMethods(Stella_Class renamed_Class)

classAuxiliaryMethods

public List classAuxiliaryMethods()

yieldConstructorAttachment

public static Cons yieldConstructorAttachment(Stella_Class renamed_Class,
                                              Symbol classref)

yieldInitializeHardwiredSlots

public static Cons yieldInitializeHardwiredSlots(Stella_Class renamed_Class)

helpMostSpecificMethodP

public static boolean helpMostSpecificMethodP(Stella_Class renamed_Class,
                                              MethodSlot method)

createKeyedEqualityMethodUnit

public static void createKeyedEqualityMethodUnit(Stella_Class renamed_Class)

yieldMixinClassUsersTree

public static Cons yieldMixinClassUsersTree(Stella_Class renamed_Class)

yieldGenericSlotAccessorAttachment

public static Cons yieldGenericSlotAccessorAttachment(Stella_Class renamed_Class,
                                                      Symbol classref)

createGenericSlotAccessorUnit

public static void createGenericSlotAccessorUnit(Stella_Class renamed_Class)

yieldGenericSlotAccessorDefinition

public static Cons yieldGenericSlotAccessorDefinition(Stella_Class renamed_Class)

yieldGenericSlotAccessorName

public static Symbol yieldGenericSlotAccessorName(Stella_Class renamed_Class)

createCppConstructorUnit

public static void createCppConstructorUnit(Stella_Class renamed_Class)

yieldInitializerDefinition

public static Cons yieldInitializerDefinition(Stella_Class renamed_Class)

yieldInitializerName

public static Symbol yieldInitializerName(Stella_Class renamed_Class)

classWithInitializerP

public static boolean classWithInitializerP(Stella_Class renamed_Class)

parameterizedClassP

public static boolean parameterizedClassP(Stella_Class renamed_Class)

createConstructorAndDestructorUnits

public static void createConstructorAndDestructorUnits(Stella_Class renamed_Class)

yieldDestructorDefinitions

public static Cons yieldDestructorDefinitions(Stella_Class renamed_Class)

yieldExceptionConstructorDefinition

public static Cons yieldExceptionConstructorDefinition(Stella_Class renamed_Class)

yieldExceptionConstructorBody

public static Cons yieldExceptionConstructorBody(Stella_Class renamed_Class,
                                                 Symbol messageparameter,
                                                 Cons requiredassignments)

yieldConstructorDefinition

public static Cons yieldConstructorDefinition(Stella_Class renamed_Class)

yieldConstructorBody

public static Cons yieldConstructorBody(Stella_Class renamed_Class,
                                        Cons requiredassignments)

yieldInitializerTrees

public static Cons yieldInitializerTrees(Stella_Class renamed_Class)

yieldLocalInitialValueAssignments

public static Cons yieldLocalInitialValueAssignments(Stella_Class renamed_Class)

yieldInitialValueAssignments

public static Cons yieldInitialValueAssignments(Stella_Class renamed_Class,
                                                Keyword mode)

yieldCreationOrReuseTreesFromFreeOrSweepList

public static Cons yieldCreationOrReuseTreesFromFreeOrSweepList(Stella_Class renamed_Class)

yieldCreationOrReuseTreesFromSweepList

public static Cons yieldCreationOrReuseTreesFromSweepList(Stella_Class renamed_Class)

yieldCreationOrReuseTreesFromFreeList

public static Cons yieldCreationOrReuseTreesFromFreeList(Stella_Class renamed_Class)

yieldCreationOrReuseTrees

public static Cons yieldCreationOrReuseTrees(Stella_Class renamed_Class)

yieldTerminateObjectTrees

public static Cons yieldTerminateObjectTrees(Stella_Class renamed_Class)

yieldCreationTrees

public static Cons yieldCreationTrees(Stella_Class renamed_Class)

yieldConstructorName

public static Symbol yieldConstructorName(Stella_Class renamed_Class)

yieldMakeTrees

public static Cons yieldMakeTrees(Stella_Class renamed_Class)

yieldRecycleListDefinitions

public static Cons yieldRecycleListDefinitions(Stella_Class renamed_Class)

computeRecycledItemSize

public static int computeRecycledItemSize(Stella_Class renamed_Class)

decidedToRecycleP

public static boolean decidedToRecycleP(Stella_Class renamed_Class)

useSweepListP

public static boolean useSweepListP(Stella_Class renamed_Class)

useFreeListP

public static boolean useFreeListP(Stella_Class renamed_Class)

recycleSlot

public static StorageSlot recycleSlot(Stella_Class renamed_Class)

yieldRecycleListName

public static Symbol yieldRecycleListName(Stella_Class renamed_Class)

warnAboutNonDirectSupers

public static void warnAboutNonDirectSupers(Stella_Class renamed_Class)

warnAboutMultipleParents

public static void warnAboutMultipleParents(Stella_Class renamed_Class)

exceptionClassP

public static boolean exceptionClassP(Stella_Class renamed_Class)

createNativeClassP

public static boolean createNativeClassP(Stella_Class renamed_Class)

yieldDefineStellaClass

public static Cons yieldDefineStellaClass(Stella_Class renamed_Class)
Return a cons tree that (when evaluated) constructs a Stella class object.

Parameters:
renamed_Class -
Returns:
Cons

yieldClassParameterTypes

public static Cons yieldClassParameterTypes(Stella_Class renamed_Class)

taxonomySubclassOfP

public static boolean taxonomySubclassOfP(Stella_Class subclass,
                                          Stella_Class superclass)

fastSubclassOfP

public static boolean fastSubclassOfP(Stella_Class subclass,
                                      Stella_Class superclass)

subclassOfP

public static boolean subclassOfP(Stella_Class subclass,
                                  Stella_Class superclass)
Return true if subclass is a subclass of superclass.

Parameters:
subclass -
superclass -
Returns:
boolean

rootClassP

public static boolean rootClassP(Stella_Class renamed_Class)

superClasses

public Iterator superClasses()
Returns an iterator that generates all super classes of self. Non-reflexive.

Returns:
Iterator

directSuperClasses

public Iterator directSuperClasses()
Returns an iterator that generates all direct super classes of self.

Returns:
Iterator

localSlots

public List localSlots()

classSlots

public Iterator classSlots()

allClassSlots

public Iterator allClassSlots()

publicSlots

public Iterator publicSlots()
Return an iterator over public slots of self.

Overrides:
publicSlots in class Stella_Object
Returns:
Iterator

freeRequiredSlotNames

public static void freeRequiredSlotNames(Stella_Class renamed_Class)

computeRequiredSlotNames

public static void computeRequiredSlotNames(Stella_Class renamed_Class)

clearSlotAndMethodCache

public static void clearSlotAndMethodCache(Stella_Class renamed_Class)

lookupLocalSlot

public static Slot lookupLocalSlot(Stella_Class renamed_Class,
                                   Symbol slotName)
Lookup a local slot with slotName on renamed_Class.

Parameters:
renamed_Class -
slotName -
Returns:
Slot

lookupVisibleSlot

public static Slot lookupVisibleSlot(Stella_Class renamed_Class,
                                     Stella_Object slotName)

safeLookupSlot

public static Slot safeLookupSlot(Stella_Class renamed_Class,
                                  Symbol slotName)
Alias for lookupSlot. Kept for backwards compatibility.

Parameters:
renamed_Class -
slotName -
Returns:
Slot

lookupSlot

public static Slot lookupSlot(Stella_Class renamed_Class,
                              Symbol slotName)
Return a slot owned by the class renamed_Class with name slotName. Multiply inherited slots are disambiguated by a left-to-right class precedence order for classes with multiple parents (similar to CLOS).

Parameters:
renamed_Class -
slotName -
Returns:
Slot

initializeSlotAndMethodCache

public static void initializeSlotAndMethodCache(Stella_Class renamed_Class)

uninheritSlots

public static void uninheritSlots(Stella_Class renamed_Class)

inheritSlots

public static void inheritSlots(Stella_Class renamed_Class)

twoArgumentLeastCommonSuperclass

public static Stella_Class twoArgumentLeastCommonSuperclass(Stella_Class class1,
                                                            Stella_Class class2)
Return the most specific class that is a superclass of both class1 and class2. If there is more than one, arbitrarily pick one. If there is none, return null.

Parameters:
class1 -
class2 -
Returns:
Stella_Class

uninheritSuperclasses

public static void uninheritSuperclasses(Stella_Class renamed_Class)

inheritSuperclasses

public static void inheritSuperclasses(Stella_Class renamed_Class)

collectDirectSuperClasses

public static void collectDirectSuperClasses(Stella_Class renamed_Class,
                                             List parents)

removeDirectSupersBackLinks

public static void removeDirectSupersBackLinks(Stella_Class renamed_Class)

addDirectSubsBackLinks

public static void addDirectSubsBackLinks(Stella_Class renamed_Class)

addDirectSupersBackLinks

public static void addDirectSupersBackLinks(Stella_Class renamed_Class)

multipleParentsP

public boolean multipleParentsP()
Return true if renamed_Class has more than one direct superclass.

Returns:
boolean

helpUnfinalizeClassSlots

public static void helpUnfinalizeClassSlots(Stella_Class renamed_Class)

unfinalizeClassSlots

public static void unfinalizeClassSlots(Stella_Class renamed_Class)

finalizeClassSlots

public static void finalizeClassSlots(Stella_Class renamed_Class)

unfinalizeClassAndSubclasses

public static void unfinalizeClassAndSubclasses(Stella_Class renamed_Class)

helpFinalizeClass

public static boolean helpFinalizeClass(Stella_Class renamed_Class,
                                        Surrogate finalizedparent)

finalizeClass

public static boolean finalizeClass(Stella_Class renamed_Class)

finalizeOneClass

public static void finalizeOneClass(Stella_Class renamed_Class)

addPrimaryType

public static void addPrimaryType(Stella_Class renamed_Class)

activateClass

public static void activateClass(Stella_Class renamed_Class)

forgetUnfinalizedClass

public static void forgetUnfinalizedClass(Stella_Class renamed_Class)

rememberUnfinalizedClass

public static void rememberUnfinalizedClass(Stella_Class renamed_Class,
                                            boolean forceP)

classNativeSupers

public static List classNativeSupers(Stella_Class renamed_Class)

mostSpecificPrimitiveSupers

public static List mostSpecificPrimitiveSupers(Stella_Class renamed_Class)

collectMostSpecificPrimitiveSupers

public static void collectMostSpecificPrimitiveSupers(Stella_Class renamed_Class,
                                                      List supers)

destroyClassAndSubclasses

public static void destroyClassAndSubclasses(Stella_Class self)
Destroy the Stella class self and all its subclasses.

Parameters:
self -

destroyClass

public void destroyClass()
Destroy the Stella class self. Unfinalize its subclasses (if it has any).


undefineOldClass

public static void undefineOldClass(Stella_Class oldclass,
                                    Stella_Class newclass)

transferDemonsFromOldclass

public static void transferDemonsFromOldclass(Stella_Class oldclass,
                                              Stella_Class newclass)

incorporateClassOptions

public static void incorporateClassOptions(Stella_Class renamed_Class,
                                           KeywordKeyValueList options)

getConstructor

public static java.lang.reflect.Method getConstructor(Stella_Class renamed_Class,
                                                      boolean warnP)

unbindFromSurrogate

public void unbindFromSurrogate()

classSymbol

public static Symbol classSymbol(Stella_Class renamed_Class)

className

public static java.lang.String className(Stella_Class renamed_Class)

privateClassStorageSlots

public static Iterator privateClassStorageSlots(Stella_Class renamed_Class)
Iterate over all private storage-slots attached to 'class'.

Parameters:
renamed_Class -
Returns:
Iterator

publicClassStorageSlots

public static Iterator publicClassStorageSlots(Stella_Class renamed_Class)
Iterate over all public storage-slots attached to 'class'.

Parameters:
renamed_Class -
Returns:
Iterator

classTables

public static Iterator classTables(Stella_Class renamed_Class,
                                   Cons filters)

classStorageSlots

public static Iterator classStorageSlots(Stella_Class renamed_Class,
                                         Cons filters)

privateClassMethods

public static Iterator privateClassMethods(Stella_Class renamed_Class)
Iterate over all private methods attached to 'class'.

Parameters:
renamed_Class -
Returns:
Iterator

publicClassMethods

public static Iterator publicClassMethods(Stella_Class renamed_Class)
Iterate over all private methods attached to 'class'.

Parameters:
renamed_Class -
Returns:
Iterator

classMethods

public static Iterator classMethods(Stella_Class renamed_Class,
                                    Cons filters)

printObject

public void printObject(java.io.PrintStream stream)
Overrides:
printObject in class Stella_Object

accessClassSlotValue

public static Stella_Object accessClassSlotValue(Stella_Class self,
                                                 Symbol slotname,
                                                 Stella_Object value,
                                                 boolean setvalueP)

classSynonyms

public List classSynonyms()

classKey

public List classKey()

classDestructorDemons

public List classDestructorDemons()

classGuardDestructorDemons

public List classGuardDestructorDemons()

classConstructorDemons

public List classConstructorDemons()

classGuardConstructorDemons

public List classGuardConstructorDemons()

classRequiredSlotNames

public List classRequiredSlotNames()

classParameters

public List classParameters()

classRecycleMethod

public Keyword classRecycleMethod()

classClStructSlots

public List classClStructSlots()

classArity

public int classArity()

javaNativeType

public java.lang.String javaNativeType()

idlNativeType

public java.lang.String idlNativeType()

cppNativeType

public java.lang.String cppNativeType()

clNativeType

public java.lang.String clNativeType()

extension

public ClassExtension extension()
Return the nearest class extension that records instances of the class self.

Returns:
ClassExtension

initialValue

public Stella_Object initialValue()
Return an initial value for the class self.

Returns:
Stella_Object

parameters

public List parameters()
Returns the list of parameters names of self.

Returns:
List

requiredSlots

public List requiredSlots()
Returns a list of names of required slots for self.

Returns:
List

destructor

public Symbol destructor()

terminator

public Symbol terminator()

initializer

public Symbol initializer()

creator

public Symbol creator()

activeP

public boolean activeP()

publicP

public boolean publicP()
Overrides:
publicP in class Relation

arity

public int arity()
Overrides:
arity in class Relation

homeModule

public Module homeModule()
Description copied from class: Stella_Object
Return the home module of self.

Overrides:
homeModule in class Relation
Returns:
Module

name

public java.lang.String name()
Overrides:
name in class Relation

primaryType

public Surrogate primaryType()
Description copied from class: Stella_Object
Returns the primary type of self. Gets defined automatically for every non-abstract subclass of OBJECT.

Overrides:
primaryType in class Stella_Object
Returns:
Surrogate