edu.isi.stella
Class StandardObject

java.lang.Object
  extended by edu.isi.stella.Stella_Object
      extended by edu.isi.stella.StandardObject
Direct Known Subclasses:
AbstractCollection, AbstractIterator, AtomicGoalCache, BacklinksIndex, BooleanVectorIndexNode, CheckTypesRecord, ClassificationCache, ClassificationSession, CmdLineOption, CompoundTypeSpecifier, Cons, ContextSensitiveObject, ControlFrame, ControlFramePriorityQueue, DecisionTree, DecodedDateTime, DecodedTimeDuration, Demon, Environment, ExceptionRecord, ExplanationInfo, ForwardChainingIndex, ForwardGoalRecord, GoalCache, GoalRecord, InferenceLevel, Interval, Justification, KvCons, MappableObject, MarkerTable, Measure, MemoizationTable, ObjectStore, ParallelThread, PartialMatchFrame, PartialSupport, PatternRecord, ProofAdjunct, PropagationEnvironment, PropositionNeuralNetwork, QuerySolution, QuotedExpression, RelationColumnInfo, RelationTableInfo, SequenceIndex, ShellProcess, Stream, SystemDefinition, TaxonomyGraph, TaxonomyNode, Thing, Thread, TokenizerStreamState, TokenizerTable, TokenizerToken, TrainingExample, TranslationUnit, VizInfo, XmlDoctype, XmlObject, edu.isi.webtools.objects.xml_objects.XMLObject

public abstract class StandardObject
extends Stella_Object

Object that used to find its type stored in a :class slot. By reimplementing primaryType as a method, the justification for this class went away, but we'll keep it for now to keep things working.


Constructor Summary
StandardObject()
           
 
Method Summary
static boolean arrayTypeSpecifierP(StandardObject typespec)
           
static StandardObject baseTypeToTypeSpec(StandardObject self)
           
static void cantOverwriteActiveCollectionSlot(StandardObject self, Symbol slotname)
           
static boolean compatibleParameterTypesP(StandardObject subtype, StandardObject supertype)
           
static StandardObject computeAnchoredTypeSpec(StandardObject ownertype, AnchoredTypeSpecifier reltype)
           
static StandardObject computeRelativeTypeSpec(StandardObject relativetype, StandardObject ownertype)
           
static boolean conformingTypeSpecP(StandardObject subTypeSpec, StandardObject superTypeSpec)
           
 Stella_Object copyWrappedLiteral()
           
static boolean cppNonPointerTypeP(StandardObject typespec)
           
static boolean cppReferenceTypeP(StandardObject typespec)
           
static StringWrapper cppReferencizeType(StandardObject typespec)
           
static StringWrapper cppTranslateAndPointerizeTypeSpec(StandardObject typespec)
           
static StringWrapper cppTranslateAndReferencizeTypeSpec(StandardObject typespec)
           
static StringWrapper cppTranslateTypeSpec(StandardObject typespec)
           
static boolean cppTypeWithoutInteriorPointersP(StandardObject typespec)
           
static void dropSlotValue(StandardObject self, StorageSlot slot, Stella_Object value)
           
static StandardObject extractParameterType(StandardObject self, Symbol parameter, java.lang.Object[] MV_returnarray)
           
static Cons extractRequiredArgumentValues(StandardObject classtype, PropertyList slotsandvalues)
           
static Slot getSlot(StandardObject self, Symbol slotName)
          Return the slot named slotName on the class representing the type of self.
 int hashCode_()
          Return a hash code for self (can be negative).
static StringWrapper idlTranslateTypeSpec(StandardObject typespec)
           
static void inverseSlotDemon(StandardObject self, StorageSlot slot, StandardObject oldvalue, StandardObject newvalue)
           
static boolean javaLiteralP(StandardObject typespec)
           
static StringWrapper javaNativeLiteralWrapperNames(StandardObject typespec, java.lang.Object[] MV_returnarray)
           
static StringWrapper javaSpecialSetterName(StandardObject typespec)
           
static StringWrapper javaTranslateArrayOfTypeSpec(StandardObject typespec, boolean fullyqualifiedP)
           
static StringWrapper javaTranslateTypeSpec(StandardObject typeSpec)
           
static StringWrapper javaTranslateTypeSpecForFunction(StandardObject typeSpec)
           
static StringWrapper javaTranslateTypeSpecHelper(StandardObject typeSpec, boolean functionP)
           
static Cons javaYieldClassObjectArrayExpression(StandardObject typespec, int ndimensions)
           
static Cons javaYieldClassObjectExpression(StandardObject typespec)
           
static StringWrapper javaYieldFullyQualifiedTypeName(StandardObject typespec)
           
static java.lang.String javaYieldTranslatedClassAndMethodNames(StandardObject owner, MethodSlot f, java.lang.Object[] MV_returnarray)
           
static List listifyTypeSpec(StandardObject typespec)
           
static Stella_Object lookupClTypeFromStellaType(StandardObject type)
           
 boolean objectEqlP(Stella_Object y)
           
static Stella_Object putSlotValue(StandardObject self, StorageSlot slot, Stella_Object value)
           
static Stella_Object readSlotValue(StandardObject self, StorageSlot slot)
           
static void runConstructorDemons(StandardObject self)
           
static void runDestructorDemons(StandardObject self)
           
static void runSlotDemons(StandardObject self, StorageSlot slot, Stella_Object oldvalue, Stella_Object newvalue)
           
static boolean runSlotGuardDemonsP(StandardObject self, StorageSlot slot, Stella_Object oldvalue, Stella_Object newvalue)
           
 boolean standardObjectP()
           
static boolean subTypeSpecOfP(StandardObject subtype, StandardObject supertype)
           
static StandardObject twoArgumentLeastCommonSupertype(StandardObject type1, StandardObject type2)
          Return the most specific type that is a supertype of both type1 and type2.
static Surrogate typeSpecToBaseType(StandardObject self)
           
static Stella_Class typeSpecToClass(StandardObject self)
           
static Stella_Object typeToWalkedNullValueTree(StandardObject typespec, Surrogate type)
           
static Surrogate validateTypeSpecifier(StandardObject self, Stella_Class anchorclass, boolean skipanchoredtypeP)
           
static boolean voidP(StandardObject type)
           
static boolean walkTypeSpecIsNativeTypeP(StandardObject thetype)
           
static Stella_Object writeSlotValue(StandardObject self, StorageSlot slot, Stella_Object value)
           
static Stella_Object yieldTypeSpecTree(StandardObject self)
           
 
Methods inherited from class edu.isi.stella.Stella_Object
_, accessInContext, addPropertyValue, amPm, anchoredTypeSpecifierP, andOrNotTreeP, applyCoercionMethod, atomicExpressionP, bindToSurrogateP, booleanP, bootstrapIsaP, bquotify, cast, characterP, chooseSortPredicate, clConditionalizeTypeDeclarationTree, clTranslateAtomicTree, clTranslateATree, clTranslateBooleanTest, clTranslatePlainBooleanTest, clTranslateVerbatimBodySymbols, clYieldTypedExpressionTree, coerceATree, coerceEvaluatedTree, coerceMvTree, coerceOptionValue, coerceToBoolean, coerceToFloat, coerceToHashSet, coerceToModule, coerceToModuleName, coerceToString, coerceToSymbol, coerceToXmlElement, coerceValueToBoolean, coerceValueToFloat, coerceValueToString, coerceValueToType, coercibleP, collectFeatureList, collectKeyValueList, commonLispSymbolP, computeExpressionType, 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, deletedP, describe, describeObject, describeTersely, destructureMethodNameTree, deUglifyParseTree, either, eqlP, eqlToBooleanP, eqlToCharacterP, eqlToFloatP, eqlToIntegerP, eqlToLongIntegerP, eqlToStringP, equalConsTreesP, equalHashCode, equalP, era, estimatedEvaluationCost, evaluate, evaluateArgumentTree, evaluateAtomicTree, evaluateCommand, expandBquoteTree, filterModuleP, floatP, free, get, getObject, getProperty, hashlist, hashMemoizedArguments, helpBquotify, helpClTranslateATree, helpCoerceATree, helpLptrans, helpPrintOutline, helpTransformBooleanProceduralExpression, helpWalkATree, homeModule, 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, legalTokenizerFromStateP, legalTokenizerStateP, legalTokenizerToStateP, literalEqlP, logLevelLE, longIntegerP, lptrans, makeEvaluatableBquoteTree, makeFileNameFromRelativePath, makeMemoizedValueEntry, makeMemoizedValueEntryn, matchConsTree, methodSlotP, minute, month, nameToString, nilP, noonMidn, numberWrapperToFloat, objectEqualP, objectHashCode, one, oneI, onlyIf, parametricTypeSpecifierP, parseArrayDimensionsSpec, parseOptions, parseTokenizerCharacterSpec, parseTokenizerStateModifiers, permanentCopy, permanentify, permanentifyForm, po, prettyPrintLiteral, primaryClass, primaryType, printObject, printOutline, printStellaCode, printStellaDefinition, printUndefinedSuperClasses, proceduralExpressionP, ptrans, publicSlots, registerRecycledItem, runOptionHandlerP, safeEqualHashCode, safeHashCode, safePrimaryType, safeYieldTypeSpecifier, searchConsTreeP, searchConsTreeWithFilterP, searchForObject, secondp, setProperty, 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, walkedExpressionExpression, walkedExpressionType, walkExpressionTree, walkMvExpressionTree, walkMvTree, walkStatement, walkTopLevelExpression, walkWithoutTypeTree, warnAboutUnknownSourceType, weekday, withinContext, withinModule, withinWorld, withStellaTokenizer, withSystemDefinition, withTokenizer, wrapperP, wrapWhereTest, xmlAttributeP, xmlBaseAttributeP, xmlCdataFormP, xmlCdataP, xmlDeclarationFormP, xmlDeclarationP, xmlDoctypeFormP, xmlElementFormP, xmlElementP, xmlGlobalAttributeP, xmlLocalAttributeP, 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
 

Constructor Detail

StandardObject

public StandardObject()
Method Detail

idlTranslateTypeSpec

public static StringWrapper idlTranslateTypeSpec(StandardObject typespec)

javaYieldClassObjectExpression

public static Cons javaYieldClassObjectExpression(StandardObject typespec)

javaYieldClassObjectArrayExpression

public static Cons javaYieldClassObjectArrayExpression(StandardObject typespec,
                                                       int ndimensions)

javaYieldTranslatedClassAndMethodNames

public static java.lang.String javaYieldTranslatedClassAndMethodNames(StandardObject owner,
                                                                      MethodSlot f,
                                                                      java.lang.Object[] MV_returnarray)

javaYieldFullyQualifiedTypeName

public static StringWrapper javaYieldFullyQualifiedTypeName(StandardObject typespec)

javaTranslateArrayOfTypeSpec

public static StringWrapper javaTranslateArrayOfTypeSpec(StandardObject typespec,
                                                         boolean fullyqualifiedP)

javaTranslateTypeSpecHelper

public static StringWrapper javaTranslateTypeSpecHelper(StandardObject typeSpec,
                                                        boolean functionP)

javaTranslateTypeSpecForFunction

public static StringWrapper javaTranslateTypeSpecForFunction(StandardObject typeSpec)

javaTranslateTypeSpec

public static StringWrapper javaTranslateTypeSpec(StandardObject typeSpec)

javaSpecialSetterName

public static StringWrapper javaSpecialSetterName(StandardObject typespec)

javaNativeLiteralWrapperNames

public static StringWrapper javaNativeLiteralWrapperNames(StandardObject typespec,
                                                          java.lang.Object[] MV_returnarray)

javaLiteralP

public static boolean javaLiteralP(StandardObject typespec)

cppReferencizeType

public static StringWrapper cppReferencizeType(StandardObject typespec)

cppReferenceTypeP

public static boolean cppReferenceTypeP(StandardObject typespec)

cppTranslateAndReferencizeTypeSpec

public static StringWrapper cppTranslateAndReferencizeTypeSpec(StandardObject typespec)

cppTranslateAndPointerizeTypeSpec

public static StringWrapper cppTranslateAndPointerizeTypeSpec(StandardObject typespec)

cppTranslateTypeSpec

public static StringWrapper cppTranslateTypeSpec(StandardObject typespec)

cppTypeWithoutInteriorPointersP

public static boolean cppTypeWithoutInteriorPointersP(StandardObject typespec)

cppNonPointerTypeP

public static boolean cppNonPointerTypeP(StandardObject typespec)

inverseSlotDemon

public static void inverseSlotDemon(StandardObject self,
                                    StorageSlot slot,
                                    StandardObject oldvalue,
                                    StandardObject newvalue)

cantOverwriteActiveCollectionSlot

public static void cantOverwriteActiveCollectionSlot(StandardObject self,
                                                     Symbol slotname)

runDestructorDemons

public static void runDestructorDemons(StandardObject self)

runConstructorDemons

public static void runConstructorDemons(StandardObject self)

runSlotDemons

public static void runSlotDemons(StandardObject self,
                                 StorageSlot slot,
                                 Stella_Object oldvalue,
                                 Stella_Object newvalue)

runSlotGuardDemonsP

public static boolean runSlotGuardDemonsP(StandardObject self,
                                          StorageSlot slot,
                                          Stella_Object oldvalue,
                                          Stella_Object newvalue)

dropSlotValue

public static void dropSlotValue(StandardObject self,
                                 StorageSlot slot,
                                 Stella_Object value)

putSlotValue

public static Stella_Object putSlotValue(StandardObject self,
                                         StorageSlot slot,
                                         Stella_Object value)

writeSlotValue

public static Stella_Object writeSlotValue(StandardObject self,
                                           StorageSlot slot,
                                           Stella_Object value)

readSlotValue

public static Stella_Object readSlotValue(StandardObject self,
                                          StorageSlot slot)

lookupClTypeFromStellaType

public static Stella_Object lookupClTypeFromStellaType(StandardObject type)

extractRequiredArgumentValues

public static Cons extractRequiredArgumentValues(StandardObject classtype,
                                                 PropertyList slotsandvalues)

walkTypeSpecIsNativeTypeP

public static boolean walkTypeSpecIsNativeTypeP(StandardObject thetype)

listifyTypeSpec

public static List listifyTypeSpec(StandardObject typespec)

typeToWalkedNullValueTree

public static Stella_Object typeToWalkedNullValueTree(StandardObject typespec,
                                                      Surrogate type)

yieldTypeSpecTree

public static Stella_Object yieldTypeSpecTree(StandardObject self)

computeRelativeTypeSpec

public static StandardObject computeRelativeTypeSpec(StandardObject relativetype,
                                                     StandardObject ownertype)

computeAnchoredTypeSpec

public static StandardObject computeAnchoredTypeSpec(StandardObject ownertype,
                                                     AnchoredTypeSpecifier reltype)

extractParameterType

public static StandardObject extractParameterType(StandardObject self,
                                                  Symbol parameter,
                                                  java.lang.Object[] MV_returnarray)

voidP

public static boolean voidP(StandardObject type)

subTypeSpecOfP

public static boolean subTypeSpecOfP(StandardObject subtype,
                                     StandardObject supertype)

compatibleParameterTypesP

public static boolean compatibleParameterTypesP(StandardObject subtype,
                                                StandardObject supertype)

typeSpecToClass

public static Stella_Class typeSpecToClass(StandardObject self)

baseTypeToTypeSpec

public static StandardObject baseTypeToTypeSpec(StandardObject self)

typeSpecToBaseType

public static Surrogate typeSpecToBaseType(StandardObject self)

validateTypeSpecifier

public static Surrogate validateTypeSpecifier(StandardObject self,
                                              Stella_Class anchorclass,
                                              boolean skipanchoredtypeP)

arrayTypeSpecifierP

public static boolean arrayTypeSpecifierP(StandardObject typespec)

conformingTypeSpecP

public static boolean conformingTypeSpecP(StandardObject subTypeSpec,
                                          StandardObject superTypeSpec)

getSlot

public static Slot getSlot(StandardObject self,
                           Symbol slotName)
Return the slot named slotName on the class representing the type of self.

Parameters:
self -
slotName -
Returns:
Slot

twoArgumentLeastCommonSupertype

public static StandardObject twoArgumentLeastCommonSupertype(StandardObject type1,
                                                             StandardObject type2)
Return the most specific type that is a supertype of both type1 and type2. If there is more than one, arbitrarily pick one. If there is none, return @VOID. If one or both types are parametric, also try to generalize parameter types if necessary.

Parameters:
type1 -
type2 -
Returns:
StandardObject

objectEqlP

public boolean objectEqlP(Stella_Object y)
Overrides:
objectEqlP in class Stella_Object

copyWrappedLiteral

public Stella_Object copyWrappedLiteral()

standardObjectP

public boolean standardObjectP()
Overrides:
standardObjectP in class Stella_Object

hashCode_

public int hashCode_()
Description copied from class: Stella_Object
Return a hash code for self (can be negative). Two objects that are eqlP are guaranteed to generate the same hash code. Two objects that are not eqlP do not necessarily generate different hash codes.

Overrides:
hashCode_ in class Stella_Object
Returns:
int