[vwnc] Parceling out SQLite3EXDI

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[vwnc] Parceling out SQLite3EXDI

kobetic
Hi,

I'm having difficulties turning the SQLite packages into parcels. The stack of the error that I get when I try to parcel
out the package SQLite3EXDI is attached for the curious. There are two issues with the current packages that I'd like to
discuss:

1) First there is the mostly empty SQLite3EXDI-Preload with the stated purpose of "Contains the ExternalInterface
Dictionaries". That seems to be somewhat unusual packaging for an external interface. Given that the dictionaries are
generated automatically when the interface definition is compiled, I'd be inclined to do away with the preload package
unless there is a reason to have it arranged that way. Anyone knows ?

2) If you look at the stack the actual item that is throwing off the tracing machinery is CMacroDefinition
SQLITE_TRANSIENT <((void(*)(void*))-1)>. Removal of the macro seems to allow parceling the package out. I googled for
the macro and it does seem to show up in some of the SQLite examples out there, but I don't get a good sense of how
important it is in practice. It doesn't seem to be used in the StoreForSQLite3 package. Here's the actual definition of
the macros from the header file:

/*
** These are special value for the destructor that is passed in as the
** final argument to routines like sqlite3_result_blob().  If the destructor
** argument is SQLITE_STATIC, it means that the content pointer is constant
** and will never change.  It does not need to be destroyed.  The
** SQLITE_TRANSIENT value means that the content will likely change in
** the near future and that SQLite should make its own private copy of
** the content before returning.
*/
#define SQLITE_STATIC      ((void(*)(void *))0)
#define SQLITE_TRANSIENT   ((void(*)(void *))-1)

Looking at the tracer code where we're running into the error it seems that we just lucked out and the STATIC gets
through because the value of the associated CDatum is 0 which translates to a NULL pointer that the tracer is willing to
accept. Based on the comment quoted above it also seems to be the one that you'd want to use most often from smalltalk
applications. So at the moment I see two choices available to me:
        1) Remove the macro and parcel away
        2) Give up and forget about having a parcel for SQLite3
Trying to parcel out the -1 in a way that will work across different platforms seems like a pretty deep rathole to me.
So, as you might have guessed, I'm tempted to just remove the macro definition altogether. Any objections, suggestions,
comments ?

Thanks,

Martin


Unhandled exception: This object cannot be traced
CodeWriter class>>raiseInvalidTraceSignalOn:
CodeWriteAnalysisTracer>>raiseInvalidTraceSignalOn:
CodeWriteAnalysisTracer>>doTraceOfCDatum:
CProcedurePointer(CDatum)>>traceFrom:
ObjectRegistry>>ifNotIncluded:traceWith:
CodeWriteAnalysisTracer>>trace:
CMacroDefinition(Object)>>traceWalkFrom:
CodeWriteAnalysisTracer(ObjectTracer)>>doTraceOfObject:
CMacroDefinition(Object)>>traceFrom:
ObjectRegistry>>ifNotIncluded:traceWith:
CodeWriteAnalysisTracer>>trace:
optimized [] in ExternalDictionary>>codeWriterTraceOnto:
optimized [] in WeakAssociationDictionary>>associationsDo:
BlockClosure>>ensure:
optimized [] in RecursionLock>>critical:
BlockClosure>>ensure:
Semaphore>>critical:
RecursionLock>>critical:
ExternalDictionary(WeakAssociationDictionary)>>associationsDo:
ExternalDictionary(LinkedWeakAssociationDictionary)>>ownAssociationsDo:
ExternalDictionary>>codeWriterTraceOnto:
SQLite3Interface class(ExternalInterface class)>>codeWriterTraceOnto:
CodeWriteAnalysisTracer>>processClass:excluding:
optimized [] in CodeWriteAnalysisTracer>>processClasses:excluding:
OrderedCollection>>do:
CodeWriteAnalysisTracer>>processClasses:excluding:
CodeWriteAnalysisTracer>>processClasses:extensions:excluding:
CodeWriter>>storeClasses:extensions:excluding:
Store.PackageModel(CodeComponent)>>prepareCodeWriter:
optimized [] in CodeComponent>>parcelOutTo:sourceFileName:parcelOptions:
BlockClosure>>ensure:
Cursor>>showWhile:
Store.PackageModel(CodeComponent)>>parcelOutTo:sourceFileName:parcelOptions:
Store.PackageModel>>saveAsParcel:saveStructure:saveLinks:parcelOptions:
Store.PublishAsParcelDialog class>>publishAsParcel:
Refactory.Browser.BrowserNavigator>>storePublishAsParcel
Refactory.Browser.RBCommand>>perform:on:
Refactory.Browser.RBCommand>>performWith:
Refactory.Browser.BrowserNavigator(Refactory.Browser.BrowserApplicationModel)>>performAction:
Refactory.Browser.BrowserNavigator(Refactory.Browser.BrowserApplicationModel)>>action:
optimized [] in Refactory.Browser.BrowserApplicationModel>>createActionMenuItemFrom:
MultiSequenceTreeController(SequenceController)>>dispatchBlockClosure:
MultiSequenceTreeController(TreeController)>>dispatchMenuSelection:
MultiSequenceTreeController(ControllerWithMenu)>>processMenu:at:centered:
MultiSequenceTreeController(ControllerWithMenu)>>processMenuAt:centered:
MultiSequenceTreeController(ControllerWithMenu)>>yellowButtonPressedEvent:
MultiSequenceTreeController(SequenceController)>>yellowButtonPressedEvent:
YellowButtonPressedEvent>>dispatchTo:
MultiSequenceTreeController(ControllerWithMenu)>>handleEvent:
EventDispatcher>>dispatch:to:
EventDispatcher>>dispatchEvent:
YellowButtonPressedEvent(Event)>>dispatch
YellowButtonPressedEvent(Event)>>dispatchForWindowManager:
optimized [] in WindowManager>>safelyDispatchForWindowManager:
BlockClosure>>on:do:
WindowManager>>safelyDispatchForWindowManager:
WindowManager>>processNextEvent
optimized [] in [] in WindowManager>>newProcess
BlockClosure>>on:do:
optimized [] in WindowManager>>newProcess
BlockClosure>>on:do:
optimized [] in Process class>>forBlock:priority:

----------------------------------------------------------------------
CodeWriter class>>raiseInvalidTraceSignalOn:
Receiver:
    a CodeWriter class
Instance Variables:
    superclass = ObjectTracer
    methodDict = a MethodDictionary[114]
    format = 16424
    subclasses = nil
    instanceVariables = an Array[38]
    organization = ('initialize-release' #analysisTracer: #initialize #initializeRegistry)
('api' #addObject:named: #methodsStoredFor: #storeClasses: #storeClasses:extensions: #storeClasses:extensions:excluding:
#storeDefinedBindings: #storeDefinedObjects: #storeProperties: #stream #timestamp #writeForDb: #writeToParcelFileNamed:
#writeToParcelFileNamed:sourceFileNamed:oldSourceIndex:hideSource:republish:backup:)
('tracing' #doTraceOfCharacter: #doTraceOfClassDescription: #doTraceOfDeferredVariableBinding: #doTraceOfFalse:
#doTraceOfNamedObject: #doTraceOfObject: #doTraceOfSmallInteger: #doTraceOfSystemDictionary: #doTraceOfTrue:
#doTraceOfUndefinedObject: #doTraceOfVariableBinding: #scratchDictionary #trace: #traceComment:for: #traceNamedObjects
#traceSourceCode:for: #traceSourceKey:for:)
('storage' #storeClassClassImportFor: #storeClassDefinitionFor: #storeClassImportFor: #storeGeneralAllocationFor:
#storeGeneralStructureFor: #storeIndexedObjectCollection: #storeMethodDictionaryFor: #storeNameDefinitionFor:in:
#storeNamedObjectImportFor: #storeObjectDefinitionFor: #storeScopeLookup: #storeSelector:andMethod:
#storeSelector:andMethod:underCategory: #storeStringCollection: #storeSymbolCollection:)
('utility storage' #storeIndexOf: #storeLength: #storeLong: #storeObjectReference:)
('literal storage' #storeByte: #storeByteArray: #storeCharacter: #storeDouble: #storeFloat: #storeLargeNegativeInteger:
#storeLargePositiveInteger: #storeSmallInteger: #storeString: #storeSymbol:)
('private layout' #layout #layoutArbObject #layoutDependentClasses #layoutKnownLiterals #layoutOrganizers
#layoutPackageClasses #layoutPackageObjects #layoutScopeZones #layoutWellKnowObjects)
('private storage' #storeDefinitionsAndComments #storeDefinitionsAndCommentsFor:commentHolder: #storeDependentClasses
#storeExtensionMethods #storeHeader #storeKnownLiterals #storeMethodDictionarys #storeNamedObjects #storeObjects
#storePackage #storePackageBindings #storePackageClasses #storePackageClassesInitializationObjects #storePackageObjects
#storePrerequisites #storeProperties #storeScopeZones #storeSourceHeader #storeWellKnownObjects)
('private registry' #currentKey: #insertInRegistry: #sizeRegistryTo:)
('private' #allocate #backupAndDelete:withExtension: #checkWritabilityOfAll:errorMessage: #computePrerequisites
#createInternalSourceStreams #createSourceStreamFromFileNamed: #createTemporaryStreamsFor:and: #deleteIfExists:
#get:put:at: #numberOfWellKnownObjects #place:at: #placeElementsFor: #raiseInvalidTraceSignalOn:
#registerThing:get:put:at: #renameTempStreamsTo:and:backup: #republish: #rescueAndDiscard: #setCurrentClass:
#sizeOfAllScopeZones #sourcePositionOf: #sourcePositionsDo:)

    name = #CodeWriter
    classPool = a NameSpaceOfClass[1]
    environment = a NameSpace[241]
Arguments:
    anObject = a CProcedurePointer (void (* )(void * ))
Context PC = 11

----------------------------------------------------------------------
CodeWriteAnalysisTracer>>raiseInvalidTraceSignalOn:
Receiver:
    a CodeWriteAnalysisTracer
Instance Variables:
    registry = an ObjectRegistry[559]
    nilTraced = true
    classifications = an IdentityDictionary[19]
    mclassList = a List[22]
    referencedNamedObjects = a List[1]
    currentClass = <<SQLite3ColumnDescription, Database>>
    scopeZones = a Dictionary[3]
    codeMode = false
    packageClasses = an IdentitySet[20]
    extendedClasses = an IdentitySet[0]
    packageNamedObjects = an IdentitySet[0]
    compiledMethodCount = 45
    scratchDictionary = an IdentityDictionary[403]
Arguments:
    anObject = a CProcedurePointer (void (* )(void * ))
Context PC = 4

----------------------------------------------------------------------
CodeWriteAnalysisTracer>>doTraceOfCDatum:
Receiver:
    a CodeWriteAnalysisTracer
Instance Variables:
    registry = an ObjectRegistry[559]
    nilTraced = true
    classifications = an IdentityDictionary[19]
    mclassList = a List[22]
    referencedNamedObjects = a List[1]
    currentClass = <<SQLite3ColumnDescription, Database>>
    scopeZones = a Dictionary[3]
    codeMode = false
    packageClasses = an IdentitySet[20]
    extendedClasses = an IdentitySet[0]
    packageNamedObjects = an IdentitySet[0]
    compiledMethodCount = 45
    scratchDictionary = an IdentityDictionary[403]
Arguments:
    anObject = a CProcedurePointer (void (* )(void * ))
Context PC = 14

----------------------------------------------------------------------
CProcedurePointer(CDatum)>>traceFrom:
Receiver:
    a CProcedurePointer
Instance Variables:
    theDatum = 4294967295
    type = void (* )(void * )
Arguments:
    aTracer = a CodeWriteAnalysisTracer
Context PC = 4

----------------------------------------------------------------------
ObjectRegistry>>ifNotIncluded:traceWith:
Receiver:
    an ObjectRegistry
Instance Variables:
    tally = 559
Arguments:
    anObject = a CProcedurePointer (void (* )(void * ))
    aTracer = a CodeWriteAnalysisTracer
Temporaries:
    index = 2971
    length = 30047
    probe = nil
    pass = 1
    aHashValue = 7883
Context PC = 60

----------------------------------------------------------------------
CodeWriteAnalysisTracer>>trace:
Receiver:
    a CodeWriteAnalysisTracer
Instance Variables:
    registry = an ObjectRegistry[559]
    nilTraced = true
    classifications = an IdentityDictionary[19]
    mclassList = a List[22]
    referencedNamedObjects = a List[1]
    currentClass = <<SQLite3ColumnDescription, Database>>
    scopeZones = a Dictionary[3]
    codeMode = false
    packageClasses = an IdentitySet[20]
    extendedClasses = an IdentitySet[0]
    packageNamedObjects = an IdentitySet[0]
    compiledMethodCount = 45
    scratchDictionary = an IdentityDictionary[403]
Arguments:
    anObject = a CProcedurePointer (void (* )(void * ))
Temporaries:
    cl = CProcedurePointer
Context PC = 31

----------------------------------------------------------------------
CMacroDefinition(Object)>>traceWalkFrom:
Receiver:
    a CMacroDefinition
Instance Variables:
    name = #SQLITE_TRANSIENT
    argNames = nil
    fragments = an OrderedCollection[1]
    cachedValue = a CProcedurePointer (void (* )(void * ))
Arguments:
    aTracer = a CodeWriteAnalysisTracer
Temporaries:
    oclass = CMacroDefinition
    i = 4
    i = nil
Context PC = 24

----------------------------------------------------------------------
CodeWriteAnalysisTracer(ObjectTracer)>>doTraceOfObject:
Receiver:
    a CodeWriteAnalysisTracer
Instance Variables:
    registry = an ObjectRegistry[559]
    nilTraced = true
    classifications = an IdentityDictionary[19]
    mclassList = a List[22]
    referencedNamedObjects = a List[1]
    currentClass = <<SQLite3ColumnDescription, Database>>
    scopeZones = a Dictionary[3]
    codeMode = false
    packageClasses = an IdentitySet[20]
    extendedClasses = an IdentitySet[0]
    packageNamedObjects = an IdentitySet[0]
    compiledMethodCount = 45
    scratchDictionary = an IdentityDictionary[403]
Arguments:
    anObject = a CMacroDefinition SQLITE_TRANSIENT <((void(*)(void*))-1)>
Context PC = 8

----------------------------------------------------------------------
CMacroDefinition(Object)>>traceFrom:
Receiver:
    a CMacroDefinition
Instance Variables:
    name = #SQLITE_TRANSIENT
    argNames = nil
    fragments = an OrderedCollection[1]
    cachedValue = a CProcedurePointer (void (* )(void * ))
Arguments:
    aTracer = a CodeWriteAnalysisTracer
Context PC = 4

----------------------------------------------------------------------
ObjectRegistry>>ifNotIncluded:traceWith:
Receiver:
    an ObjectRegistry
Instance Variables:
    tally = 559
Arguments:
    anObject = a CMacroDefinition SQLITE_TRANSIENT <((void(*)(void*))-1)>
    aTracer = a CodeWriteAnalysisTracer
Temporaries:
    index = 24090
    length = 30047
    probe = nil
    pass = 1
    aHashValue = 6767
Context PC = 60

----------------------------------------------------------------------
CodeWriteAnalysisTracer>>trace:
Receiver:
    a CodeWriteAnalysisTracer
Instance Variables:
    registry = an ObjectRegistry[559]
    nilTraced = true
    classifications = an IdentityDictionary[19]
    mclassList = a List[22]
    referencedNamedObjects = a List[1]
    currentClass = <<SQLite3ColumnDescription, Database>>
    scopeZones = a Dictionary[3]
    codeMode = false
    packageClasses = an IdentitySet[20]
    extendedClasses = an IdentitySet[0]
    packageNamedObjects = an IdentitySet[0]
    compiledMethodCount = 45
    scratchDictionary = an IdentityDictionary[403]
Arguments:
    anObject = a CMacroDefinition SQLITE_TRANSIENT <((void(*)(void*))-1)>
Temporaries:
    cl = CMacroDefinition
Context PC = 31

----------------------------------------------------------------------
optimized [] in ExternalDictionary>>codeWriterTraceOnto:
Receiver:
    an UndefinedObject
Arguments:
    assoc = (VariableBinding key: #SQLITE_TRANSIENT)
Temporaries:
    .tracer = a CodeWriteAnalysisTracer
Context PC = 12

----------------------------------------------------------------------
optimized [] in WeakAssociationDictionary>>associationsDo:
Receiver:
    an UndefinedObject
Temporaries:
    index = 104
    .super = an ExternalDictionary[107]
    .aBlock = BlockClosure [] in ExternalDictionary>>codeWriterTraceOnto:
Context PC = 29

----------------------------------------------------------------------
BlockClosure>>ensure:
Receiver:
    a BlockClosure
Instance Variables:
    method = CompiledBlock [] in WeakAssociationDictionary>>associationsDo:
    outerContext = nil
    copiedValues = an Array[2]
Arguments:
    aBlock = BlockClosure [] in [] in RecursionLock>>critical:
Temporaries:
    result = nil
Context PC = 4

----------------------------------------------------------------------
optimized [] in RecursionLock>>critical:
Receiver:
    an UndefinedObject
Temporaries:
    .activeProcess = a Process in Process>>resume
    .super = a RecursionLock
    .aBlock = BlockClosure [] in WeakAssociationDictionary>>associationsDo:
Context PC = 12

----------------------------------------------------------------------
BlockClosure>>ensure:
Receiver:
    a BlockClosure
Instance Variables:
    method = CompiledBlock [] in RecursionLock>>critical:
    outerContext = nil
    copiedValues = an Array[3]
Arguments:
    aBlock = BlockClosure [] in Semaphore>>critical:
Temporaries:
    result = nil
Context PC = 4

----------------------------------------------------------------------
Semaphore>>critical:
Receiver:
    a Semaphore
Instance Variables:
    firstLink = nil
    lastLink = nil
    excessSignals = 0
Arguments:
    mutuallyExcludedBlock = BlockClosure [] in RecursionLock>>critical:
Context PC = 10

----------------------------------------------------------------------
RecursionLock>>critical:
Receiver:
    a RecursionLock
Instance Variables:
    owner = a Process in Process>>resume
    semaphore = a Semaphore[0]
Arguments:
    aBlock = BlockClosure [] in WeakAssociationDictionary>>associationsDo:
Temporaries:
    activeProcess = a Process in Process>>resume
Context PC = 20

----------------------------------------------------------------------
ExternalDictionary(WeakAssociationDictionary)>>associationsDo:
Receiver:
    an ExternalDictionary
Instance Variables:
    tally = 107
    valueArray = a WeakArray[163]
    executors = an Array[163]
    accessLock = a RecursionLock
    backup = an OrderedCollection[1]
Arguments:
    aBlock = BlockClosure [] in ExternalDictionary>>codeWriterTraceOnto:
Context PC = 9

----------------------------------------------------------------------
ExternalDictionary(LinkedWeakAssociationDictionary)>>ownAssociationsDo:
Receiver:
    an ExternalDictionary
Instance Variables:
    tally = 107
    valueArray = a WeakArray[163]
    executors = an Array[163]
    accessLock = a RecursionLock
    backup = an OrderedCollection[1]
Arguments:
    aBlock = BlockClosure [] in ExternalDictionary>>codeWriterTraceOnto:
Context PC = 6

----------------------------------------------------------------------
ExternalDictionary>>codeWriterTraceOnto:
Receiver:
    an ExternalDictionary
Instance Variables:
    tally = 107
    valueArray = a WeakArray[163]
    executors = an Array[163]
    accessLock = a RecursionLock
    backup = an OrderedCollection[1]
Arguments:
    tracer = a CodeWriteAnalysisTracer
Context PC = 8

----------------------------------------------------------------------
SQLite3Interface class(ExternalInterface class)>>codeWriterTraceOnto:
Receiver:
    a SQLite3Interface class
Instance Variables:
    superclass = ExternalInterface
    methodDict = a MethodDictionary[211]
    format = 16384
    subclasses = an Array[2]
    instanceVariables = nil
    organization = ('structs' #Mem #__sqlite3 #__sqlite3_context #__sqlite3_stmt)
('defines' #SQLITE3_TEXT #SQLITE_ABORT #SQLITE_ALTER_TABLE #SQLITE_ANALYZE #SQLITE_ANY #SQLITE_ATTACH #SQLITE_AUTH
#SQLITE_BLOB #SQLITE_BUSY #SQLITE_CANTOPEN #SQLITE_CONSTRAINT #SQLITE_COPY #SQLITE_CORRUPT #SQLITE_CREATE_INDEX
#SQLITE_CREATE_TABLE #SQLITE_CREATE_TEMP_INDEX #SQLITE_CREATE_TEMP_TABLE #SQLITE_CREATE_TEMP_TRIGGER
#SQLITE_CREATE_TEMP_VIEW #SQLITE_CREATE_TRIGGER #SQLITE_CREATE_VIEW #SQLITE_DELETE #SQLITE_DENY #SQLITE_DETACH
#SQLITE_DONE #SQLITE_DROP_INDEX #SQLITE_DROP_TABLE #SQLITE_DROP_TEMP_INDEX #SQLITE_DROP_TEMP_TABLE
#SQLITE_DROP_TEMP_TRIGGER #SQLITE_DROP_TEMP_VIEW #SQLITE_DROP_TRIGGER #SQLITE_DROP_VIEW #SQLITE_EMPTY #SQLITE_ERROR
#SQLITE_FLOAT #SQLITE_FORMAT #SQLITE_FULL #SQLITE_IGNORE #SQLITE_INSERT #SQLITE_INTEGER #SQLITE_INTERNAL
#SQLITE_INTERRUPT #SQLITE_IOERR #SQLITE_LOCKED #SQLITE_MISMATCH #SQLITE_MISUSE #SQLITE_NOLFS #SQLITE_NOMEM
#SQLITE_NOTADB #SQLITE_NOTFOUND #SQLITE_NULL #SQLITE_OK #SQLITE_PERM #SQLITE_PRAGMA #SQLITE_PROTOCOL #SQLITE_RANGE
#SQLITE_READ #SQLITE_READONLY #SQLITE_REINDEX #SQLITE_ROW #SQLITE_SCHEMA #SQLITE_SELECT #SQLITE_STATIC #SQLITE_TEXT
#SQLITE_TOOBIG #SQLITE_TRANSACTION #SQLITE_TRANSIENT #SQLITE_UPDATE #SQLITE_UTF16 #SQLITE_UTF16BE #SQLITE_UTF16LE
#SQLITE_UTF8 #SQLITE_VERSION #SQLITE_VERSION_NUMBER #_INC_STDARG #_SQLITE3_H_ #_UINTPTR_T_DEFINED #_VA_LIST_DEFINED
#_W64 #__DATE__ #__FILE__ #__LINE__ #__STDC__ #__TIME__)
('procedures' #sqlite3_aggregate_context:with: #sqlite3_aggregate_count: #sqlite3_bind_blob:with:with:with:with:
#sqlite3_bind_double:with:with: #sqlite3_bind_int64:with:with: #sqlite3_bind_int:with:with: #sqlite3_bind_null:with:
#sqlite3_bind_parameter_count: #sqlite3_bind_parameter_index:with: #sqlite3_bind_parameter_name:with:
#sqlite3_bind_text16:with:with:with:with: #sqlite3_bind_text:with:with:with:with: #sqlite3_bind_value:with:with:
#sqlite3_busy_handler:with:with: #sqlite3_busy_timeout:with: #sqlite3_changes: #sqlite3_clear_bindings: #sqlite3_close:
#sqlite3_collation_needed16:with:with: #sqlite3_collation_needed:with:with: #sqlite3_column_blob:with:
#sqlite3_column_bytes16:with: #sqlite3_column_bytes:with: #sqlite3_column_count: #sqlite3_column_decltype16:with:
#sqlite3_column_decltype:with: #sqlite3_column_double:with: #sqlite3_column_int64:with: #sqlite3_column_int:with:
#sqlite3_column_name16:with: #sqlite3_column_name:with: #sqlite3_column_text16:with: #sqlite3_column_text:with:
#sqlite3_column_type:with: #sqlite3_commit_hook:with:with: #sqlite3_complete16: #sqlite3_complete:
#sqlite3_create_collation16:with:with:with:with: #sqlite3_create_collation:with:with:with:with:
#sqlite3_create_function16:with:with:with:with:with:with:with:
#sqlite3_create_function:with:with:with:with:with:with:with: #sqlite3_data_count: #sqlite3_db_handle: #sqlite3_errcode:
#sqlite3_errmsg16: #sqlite3_errmsg: #sqlite3_exec:with:with:with:with: #sqlite3_expired: #sqlite3_finalize:
#sqlite3_free: #sqlite3_free_table: #sqlite3_get_autocommit: #sqlite3_get_auxdata:with:
#sqlite3_get_table:with:with:with:with:with: #sqlite3_global_recover: #sqlite3_interrupt: #sqlite3_key:with:with:
#sqlite3_last_insert_rowid: #sqlite3_libversion #sqlite3_libversion_number #sqlite3_mprintf: #sqlite3_open16:with:
#sqlite3_open:with: #sqlite3_prepare16:with:with:with:with: #sqlite3_prepare:with:with:with:with:
#sqlite3_profile:with:with: #sqlite3_progress_handler:with:with:with: #sqlite3_rekey:with:with: #sqlite3_reset:
#sqlite3_result_blob:with:with:with: #sqlite3_result_double:with: #sqlite3_result_error16:with:with:
#sqlite3_result_error:with:with: #sqlite3_result_int64:with: #sqlite3_result_int:with: #sqlite3_result_null:
#sqlite3_result_text16:with:with:with: #sqlite3_result_text16be:with:with:with: #sqlite3_result_text16le:with:with:with:
#sqlite3_result_text:with:with:with: #sqlite3_result_value:with: #sqlite3_set_authorizer:with:with:
#sqlite3_set_auxdata:with:with:with: #sqlite3_sleep: #sqlite3_snprintf: #sqlite3_step: #sqlite3_total_changes:
#sqlite3_trace:with:with: #sqlite3_transfer_bindings:with: #sqlite3_user_data: #sqlite3_value_blob:
#sqlite3_value_bytes16: #sqlite3_value_bytes: #sqlite3_value_double: #sqlite3_value_int64: #sqlite3_value_int:
#sqlite3_value_text16: #sqlite3_value_text16be: #sqlite3_value_text16le: #sqlite3_value_text: #sqlite3_value_type:
#sqlite3_vmprintf:with:)
('macros' #va_arg:with: #va_end: #va_start:with: #_ADDRESSOF: #_APALIGN:with: #_INTSIZEOF: #_SLOTSIZEOF:)
('variables' #sqlite3_temp_directory #sqlite3_temp_directory: #sqlite3_version #sqlite3_version:)
('types' #sqlite3 #sqlite3_callback #sqlite3_context #sqlite3_stmt #sqlite3_value #sqlite_int64 #sqlite_uint64
#uintptr_t #va_list)

    name = #SQLite3Interface
    classPool = a NameSpaceOfClass[0]
    environment = a NameSpace[165]
    includeFiles = an OrderedCollection[0]
    includeDirectories = a LinkedOrderedCollection[0]
    libraryFiles = a LinkedOrderedCollection[4]
    libraryDirectories = a LinkedOrderedCollection[11]
    virtual = true
    optimizationLevel = #full
Arguments:
    tracer = a CodeWriteAnalysisTracer
Context PC = 46

----------------------------------------------------------------------
CodeWriteAnalysisTracer>>processClass:excluding:
Receiver:
    a CodeWriteAnalysisTracer
Instance Variables:
    registry = an ObjectRegistry[559]
    nilTraced = true
    classifications = an IdentityDictionary[19]
    mclassList = a List[22]
    referencedNamedObjects = a List[1]
    currentClass = <<SQLite3ColumnDescription, Database>>
    scopeZones = a Dictionary[3]
    codeMode = false
    packageClasses = an IdentitySet[20]
    extendedClasses = an IdentitySet[0]
    packageNamedObjects = an IdentitySet[0]
    compiledMethodCount = 45
    scratchDictionary = an IdentityDictionary[403]
Arguments:
    aClass = SQLite3Interface
    eset = an IdentityDictionary[0]
Context PC = 15

----------------------------------------------------------------------
optimized [] in CodeWriteAnalysisTracer>>processClasses:excluding:
Receiver:
    an UndefinedObject
Arguments:
    cl = SQLite3Interface
Temporaries:
    .super = a CodeWriteAnalysisTracer
    .eset = an IdentityDictionary[0]
Context PC = 8

----------------------------------------------------------------------
OrderedCollection>>do:
Receiver:
    an OrderedCollection
Instance Variables:
    firstIndex = 1
    lastIndex = 10
Arguments:
    aBlock = BlockClosure [] in CodeWriteAnalysisTracer>>processClasses:excluding:
Temporaries:
    index = 4
Context PC = 17

----------------------------------------------------------------------
CodeWriteAnalysisTracer>>processClasses:excluding:
Receiver:
    a CodeWriteAnalysisTracer
Instance Variables:
    registry = an ObjectRegistry[559]
    nilTraced = true
    classifications = an IdentityDictionary[19]
    mclassList = a List[22]
    referencedNamedObjects = a List[1]
    currentClass = <<SQLite3ColumnDescription, Database>>
    scopeZones = a Dictionary[3]
    codeMode = false
    packageClasses = an IdentitySet[20]
    extendedClasses = an IdentitySet[0]
    packageNamedObjects = an IdentitySet[0]
    compiledMethodCount = 45
    scratchDictionary = an IdentityDictionary[403]
Arguments:
    anArray = an OrderedCollection[10]
    eset = an IdentityDictionary[0]
Context PC = 16

----------------------------------------------------------------------
CodeWriteAnalysisTracer>>processClasses:extensions:excluding:
Receiver:
    a CodeWriteAnalysisTracer
Instance Variables:
    registry = an ObjectRegistry[559]
    nilTraced = true
    classifications = an IdentityDictionary[19]
    mclassList = a List[22]
    referencedNamedObjects = a List[1]
    currentClass = <<SQLite3ColumnDescription, Database>>
    scopeZones = a Dictionary[3]
    codeMode = false
    packageClasses = an IdentitySet[20]
    extendedClasses = an IdentitySet[0]
    packageNamedObjects = an IdentitySet[0]
    compiledMethodCount = 45
    scratchDictionary = an IdentityDictionary[403]
Arguments:
    classesArray = an OrderedCollection[10]
    extensionsArray = an OrderedCollection[7]
    eset = an IdentityDictionary[0]
Context PC = 6

----------------------------------------------------------------------
CodeWriter>>storeClasses:extensions:excluding:
Receiver:
    a CodeWriter
Instance Variables:
    registry = an IdentityDictionary[0]
    nilTraced = false
    definedObjects = an OrderedCollection[0]
    classes = an OrderedCollection[10]
    extendedClasses = nil
    extensionMethods = an OrderedCollection[7]
    exclusionset = an IdentityDictionary[0]
    definedBindings = nil
    scopeZones = nil
    currentClass = nil
    objectSpace = nil
    analysisTracer = a CodeWriteAnalysisTracer
    symbolNum = nil
    stringNum = nil
    byteArrayNum = nil
    floatNum = nil
    doubleNum = nil
    largePositiveNum = nil
    largeNegativeNum = nil
    mclassNum = nil
    mclassclassNum = nil
    refNamObjNum = nil
    scopeZonesNum = nil
    defObjOrganizerNum = nil
    classOrganizerNum = nil
    arbObjectNum = nil
    arbClassNum = nil
    stream = nil
    sourceStream = nil
    sourceName = nil
    hideOnLoad = nil
    pointer = nil
    currentKey = 1
    properties = an IdentityDictionary[10]
    prerequisites = nil
    namedObjects = nil
    newSourceKeys = nil
    dateString = nil
    timeString = nil
    scratchDictionary = an IdentityDictionary[403]
Arguments:
    classesArray = an OrderedCollection[10]
    extensionsArray = an OrderedCollection[7]
    eset = an IdentityDictionary[0]
Temporaries:
    orderedClasses = an OrderedCollection[10]
Context PC = 17

----------------------------------------------------------------------
Store.PackageModel(CodeComponent)>>prepareCodeWriter:
Receiver:
    a Store.PackageModel
Instance Variables:
    name = 'SQLite3EXDI'
    properties = an IdentityDictionary[4]
    dbInfo = an IdentityDictionary[1]
    readonly = nil
    models = an IdentityDictionary[17]
Arguments:
    aCodeWriter = a CodeWriter
Context PC = 40

----------------------------------------------------------------------
optimized [] in CodeComponent>>parcelOutTo:sourceFileName:parcelOptions:
Receiver:
    an UndefinedObject
Temporaries:
    .super = [SQLite3EXDI]
    .cWriter = a CodeWriter
Context PC = 7

----------------------------------------------------------------------
BlockClosure>>ensure:
Receiver:
    a BlockClosure
Instance Variables:
    method = CompiledBlock [] in CodeComponent>>parcelOutTo:sourceFileName:parcelOptions:
    outerContext = nil
    copiedValues = an Array[2]
Arguments:
    aBlock = BlockClosure [] in Cursor>>showWhile:
Temporaries:
    result = nil
Context PC = 4

----------------------------------------------------------------------
Cursor>>showWhile:
Receiver:
    a Cursor
Instance Variables:
    errorCode = 0
    handle = a ByteArray[8]
    image = Depth1Image(extent: 16@16 depth: 1)
    mask = Depth1Image(extent: 16@16 depth: 1)
    hotSpot = 0@0
    name = 'wait'
Arguments:
    aBlock = BlockClosure [] in CodeComponent>>parcelOutTo:sourceFileName:parcelOptions:
Temporaries:
    oldcursor = Cursor normal
Context PC = 23

----------------------------------------------------------------------
Store.PackageModel(CodeComponent)>>parcelOutTo:sourceFileName:parcelOptions:
Receiver:
    a Store.PackageModel
Instance Variables:
    name = 'SQLite3EXDI'
    properties = an IdentityDictionary[4]
    dbInfo = an IdentityDictionary[1]
    readonly = nil
    models = an IdentityDictionary[17]
Arguments:
    parcelFileName = '/opt/mkobetic/st/76/SQLite3EXDI.pcl'
    sourceFileName = '/opt/mkobetic/st/76/SQLite3EXDI.pst'
    parcelOptions = a Dictionary[9]
Temporaries:
    cWriter = a CodeWriter
    existing = [SQLite3EXDI]
    sfn = a LogicalFilename('/opt/mkobetic/st/76/SQLite3EXDI.pst')
Context PC = 47

----------------------------------------------------------------------
Store.PackageModel>>saveAsParcel:saveStructure:saveLinks:parcelOptions:
Receiver:
    a Store.PackageModel
Instance Variables:
    name = 'SQLite3EXDI'
    properties = an IdentityDictionary[4]
    dbInfo = an IdentityDictionary[1]
    readonly = nil
    models = an IdentityDictionary[17]
Arguments:
    aFilename = an UnixFilename('SQLite3EXDI')
    unusedBoolean = false
    alsoUnusedBoolean = false
    aDictionary = a Dictionary[9]
Temporaries:
    parcelDirectory = an UnixFilename('/opt/mkobetic/st/76')
    parcelName = 'SQLite3EXDI'
Context PC = 51

----------------------------------------------------------------------
Store.PublishAsParcelDialog class>>publishAsParcel:
Receiver:
    a Store.PublishAsParcelDialog class
Instance Variables:
    superclass = SimpleDialog
    methodDict = a MethodDictionary[22]
    format = 16407
    subclasses = nil
    instanceVariables = an Array[11]
    organization = ('interface opening' #postOpenWith:)
('aspects' #bundleStructure #bundleStructureChanged #databaseLinks #helpAction #parcelBackup #parcelDirectory
#parcelHideSource #parcelOverwrite #parcelPadded #parcelRepublish #parcelSave #parcelSaveSource #parcelSaveSourceChanged
#parcelSaveSourceDetails #pundle: #validateParcelSaveString)
('private' #enableComponentAt:enable: #validateParcelOptions)
('events' #requestForWindowClose)
('accessing' #basePath #options)

    name = #PublishAsParcelDialog
    classPool = a NameSpaceOfClass[0]
    environment = a NameSpace[263]
    savedWindowInformation = nil
Arguments:
    aPundle = [SQLite3EXDI]
Temporaries:
    dialog = a Store.PublishAsParcelDialog
    filename = an UnixFilename('SQLite3EXDI')
Context PC = 75

----------------------------------------------------------------------
Refactory.Browser.BrowserNavigator>>storePublishAsParcel
Receiver:
    a Refactory.Browser.BrowserNavigator
Instance Variables:
    dependents = SQLite3EXDI
    builder = an UIBuilder
    uiSession = nil
    eventHandlers = nil
    environment =
    state = SQLite3EXDI
    dispatcher = a Refactory.Browser.RBActionDispatcher
    parts = an OrderedCollection[2]
    partsDictionary = a Dictionary[2]
    menus = a Dictionary[4]
    showOnlyFiltered = true
    navigatorType = #Package
    cachedSelectors = nil->nil
    windowLabel = 'SQLite3EXDI'
Context PC = 8

----------------------------------------------------------------------
Refactory.Browser.RBCommand>>perform:on:
Receiver:
    a Refactory.Browser.RBCommand
Instance Variables:
    name = an UserMessage('Store Publish Parcel', #StorePublishParcel, #browser)
    description = an UserMessage('Publish the selected item as a parcel', #StorePublishParcelDesc, #browser)
    action = #storePublishAsParcel
    enabled = #isPundleSelected
    receiver = #navigator
Arguments:
    aSymbol = #storePublishAsParcel
    anObject = a Refactory.Browser.BrowserNavigator
Context PC = 9

----------------------------------------------------------------------
Refactory.Browser.RBCommand>>performWith:
Receiver:
    a Refactory.Browser.RBCommand
Instance Variables:
    name = an UserMessage('Store Publish Parcel', #StorePublishParcel, #browser)
    description = an UserMessage('Publish the selected item as a parcel', #StorePublishParcelDesc, #browser)
    action = #storePublishAsParcel
    enabled = #isPundleSelected
    receiver = #navigator
Arguments:
    anObject = a Refactory.Browser.RBActionDispatcher
Context PC = 14

----------------------------------------------------------------------
Refactory.Browser.BrowserNavigator(Refactory.Browser.BrowserApplicationModel)>>performAction:
Receiver:
    a Refactory.Browser.BrowserNavigator
Instance Variables:
    dependents = SQLite3EXDI
    builder = an UIBuilder
    uiSession = nil
    eventHandlers = nil
    environment =
    state = SQLite3EXDI
    dispatcher = a Refactory.Browser.RBActionDispatcher
    parts = an OrderedCollection[2]
    partsDictionary = a Dictionary[2]
    menus = a Dictionary[4]
    showOnlyFiltered = true
    navigatorType = #Package
    cachedSelectors = nil->nil
    windowLabel = 'SQLite3EXDI'
Arguments:
    aString = 'Store Publish Parcel'
Temporaries:
    action = Store Publish Parcel
Context PC = 11

----------------------------------------------------------------------
Refactory.Browser.BrowserNavigator(Refactory.Browser.BrowserApplicationModel)>>action:
Receiver:
    a Refactory.Browser.BrowserNavigator
Instance Variables:
    dependents = SQLite3EXDI
    builder = an UIBuilder
    uiSession = nil
    eventHandlers = nil
    environment =
    state = SQLite3EXDI
    dispatcher = a Refactory.Browser.RBActionDispatcher
    parts = an OrderedCollection[2]
    partsDictionary = a Dictionary[2]
    menus = a Dictionary[4]
    showOnlyFiltered = true
    navigatorType = #Package
    cachedSelectors = nil->nil
    windowLabel = 'SQLite3EXDI'
Arguments:
    aMenuItem = a MenuItem 'Publish as Parcel...'
Context PC = 8

----------------------------------------------------------------------
optimized [] in Refactory.Browser.BrowserApplicationModel>>createActionMenuItemFrom:
Receiver:
    an UndefinedObject
Temporaries:
    .super = a Refactory.Browser.BrowserNavigator
    .newItem = a MenuItem 'Publish as Parcel...'
Context PC = 7

----------------------------------------------------------------------
MultiSequenceTreeController(SequenceController)>>dispatchBlockClosure:
Receiver:
    a MultiSequenceTreeController
Instance Variables:
    model = a ValueHolder on: TreeModel on: a Refactory.Browser.PundleItem (opened: 74)
    view = a MultiSelectionTreeView
    sensor = a TranslatingSensor
    menuHolder = a Menu
    performer = a Refactory.Browser.PundleNavigatorPart
    keyboardProcessor = a KeyboardProcessor
    outside = false
    searchString = nil
    keyboardHook = nil
    doStringSearching = true
    dispatcher = an UIDispatcher
    dragDropCallbacks = a WidgetDragDropCallbacks
    selectOnDownWithDrag = true
    autoSelect = true
    inPlaceEditor = nil
    composite = a SubCanvas
Arguments:
    aBlock = BlockClosure [] in Refactory.Browser.BrowserApplicationModel>>createActionMenuItemFrom:
Temporaries:
    na = 0
Context PC = 11

----------------------------------------------------------------------
MultiSequenceTreeController(TreeController)>>dispatchMenuSelection:
Receiver:
    a MultiSequenceTreeController
Instance Variables:
    model = a ValueHolder on: TreeModel on: a Refactory.Browser.PundleItem (opened: 74)
    view = a MultiSelectionTreeView
    sensor = a TranslatingSensor
    menuHolder = a Menu
    performer = a Refactory.Browser.PundleNavigatorPart
    keyboardProcessor = a KeyboardProcessor
    outside = false
    searchString = nil
    keyboardHook = nil
    doStringSearching = true
    dispatcher = an UIDispatcher
    dragDropCallbacks = a WidgetDragDropCallbacks
    selectOnDownWithDrag = true
    autoSelect = true
    inPlaceEditor = nil
    composite = a SubCanvas
Arguments:
    menuSelection = BlockClosure [] in Refactory.Browser.BrowserApplicationModel>>createActionMenuItemFrom:
Context PC = 24

----------------------------------------------------------------------
MultiSequenceTreeController(ControllerWithMenu)>>processMenu:at:centered:
Receiver:
    a MultiSequenceTreeController
Instance Variables:
    model = a ValueHolder on: TreeModel on: a Refactory.Browser.PundleItem (opened: 74)
    view = a MultiSelectionTreeView
    sensor = a TranslatingSensor
    menuHolder = a Menu
    performer = a Refactory.Browser.PundleNavigatorPart
    keyboardProcessor = a KeyboardProcessor
    outside = false
    searchString = nil
    keyboardHook = nil
    doStringSearching = true
    dispatcher = an UIDispatcher
    dragDropCallbacks = a WidgetDragDropCallbacks
    selectOnDownWithDrag = true
    autoSelect = true
    inPlaceEditor = nil
    composite = a SubCanvas
Arguments:
    aMenu = a Menu
    aPoint = 213@303
    centered = true
Temporaries:
    valueResult = a MenuItem 'Publish as Parcel...'
Context PC = 41

----------------------------------------------------------------------
MultiSequenceTreeController(ControllerWithMenu)>>processMenuAt:centered:
Receiver:
    a MultiSequenceTreeController
Instance Variables:
    model = a ValueHolder on: TreeModel on: a Refactory.Browser.PundleItem (opened: 74)
    view = a MultiSelectionTreeView
    sensor = a TranslatingSensor
    menuHolder = a Menu
    performer = a Refactory.Browser.PundleNavigatorPart
    keyboardProcessor = a KeyboardProcessor
    outside = false
    searchString = nil
    keyboardHook = nil
    doStringSearching = true
    dispatcher = an UIDispatcher
    dragDropCallbacks = a WidgetDragDropCallbacks
    selectOnDownWithDrag = true
    autoSelect = true
    inPlaceEditor = nil
    composite = a SubCanvas
Arguments:
    aPoint = 213@303
    centered = true
Context PC = 9

----------------------------------------------------------------------
MultiSequenceTreeController(ControllerWithMenu)>>yellowButtonPressedEvent:
Receiver:
    a MultiSequenceTreeController
Instance Variables:
    model = a ValueHolder on: TreeModel on: a Refactory.Browser.PundleItem (opened: 74)
    view = a MultiSelectionTreeView
    sensor = a TranslatingSensor
    menuHolder = a Menu
    performer = a Refactory.Browser.PundleNavigatorPart
    keyboardProcessor = a KeyboardProcessor
    outside = false
    searchString = nil
    keyboardHook = nil
    doStringSearching = true
    dispatcher = an UIDispatcher
    dragDropCallbacks = a WidgetDragDropCallbacks
    selectOnDownWithDrag = true
    autoSelect = true
    inPlaceEditor = nil
    composite = a SubCanvas
Arguments:
    event = a YellowButtonPressedEvent
Context PC = 13

----------------------------------------------------------------------
MultiSequenceTreeController(SequenceController)>>yellowButtonPressedEvent:
Receiver:
    a MultiSequenceTreeController
Instance Variables:
    model = a ValueHolder on: TreeModel on: a Refactory.Browser.PundleItem (opened: 74)
    view = a MultiSelectionTreeView
    sensor = a TranslatingSensor
    menuHolder = a Menu
    performer = a Refactory.Browser.PundleNavigatorPart
    keyboardProcessor = a KeyboardProcessor
    outside = false
    searchString = nil
    keyboardHook = nil
    doStringSearching = true
    dispatcher = an UIDispatcher
    dragDropCallbacks = a WidgetDragDropCallbacks
    selectOnDownWithDrag = true
    autoSelect = true
    inPlaceEditor = nil
    composite = a SubCanvas
Arguments:
    event = a YellowButtonPressedEvent
Context PC = 19

----------------------------------------------------------------------
YellowButtonPressedEvent>>dispatchTo:
Receiver:
    a YellowButtonPressedEvent
Instance Variables:
    time = 2621668381
    initiator = an EventDispatcher
    window = an ApplicationWindow 16777389
    state = 2
    x = 95
    y = 170
    gx = 213
    gy = 303
    buttonNumber = 2
Arguments:
    anObject = a MultiSequenceTreeController
Context PC = 4

----------------------------------------------------------------------
MultiSequenceTreeController(ControllerWithMenu)>>handleEvent:
Receiver:
    a MultiSequenceTreeController
Instance Variables:
    model = a ValueHolder on: TreeModel on: a Refactory.Browser.PundleItem (opened: 74)
    view = a MultiSelectionTreeView
    sensor = a TranslatingSensor
    menuHolder = a Menu
    performer = a Refactory.Browser.PundleNavigatorPart
    keyboardProcessor = a KeyboardProcessor
    outside = false
    searchString = nil
    keyboardHook = nil
    doStringSearching = true
    dispatcher = an UIDispatcher
    dragDropCallbacks = a WidgetDragDropCallbacks
    selectOnDownWithDrag = true
    autoSelect = true
    inPlaceEditor = nil
    composite = a SubCanvas
Arguments:
    anEvent = a YellowButtonPressedEvent
Context PC = 38

----------------------------------------------------------------------
EventDispatcher>>dispatch:to:
Receiver:
    an EventDispatcher
Instance Variables:
    windowController = an ApplicationStandardSystemController
    currentMouseConsumer = nil
    grabbingMouse = false
    keyboardProcessor = a KeyboardProcessor
    lastControlObject = a TextEditorController
    trapList = nil
    state = nil
    repairDamageWhenDebugging = true
    flushQueueAfterError = true
    distributeEventsWhenDebugging = true
    dragDropInProgress = false
    dragDropTracker = nil
    dispatchUnknownEvents = false
Arguments:
    event = a YellowButtonPressedEvent
    object = a MultiSequenceTreeController
Temporaries:
    tmp = nil
Context PC = 10

----------------------------------------------------------------------
EventDispatcher>>dispatchEvent:
Receiver:
    an EventDispatcher
Instance Variables:
    windowController = an ApplicationStandardSystemController
    currentMouseConsumer = nil
    grabbingMouse = false
    keyboardProcessor = a KeyboardProcessor
    lastControlObject = a TextEditorController
    trapList = nil
    state = nil
    repairDamageWhenDebugging = true
    flushQueueAfterError = true
    distributeEventsWhenDebugging = true
    dragDropInProgress = false
    dragDropTracker = nil
    dispatchUnknownEvents = false
Arguments:
    event = a YellowButtonPressedEvent
Temporaries:
    objectWantingControl = a MultiSequenceTreeController
    targetKeyboardProcessor = nil
Context PC = 113

----------------------------------------------------------------------
YellowButtonPressedEvent(Event)>>dispatch
Receiver:
    a YellowButtonPressedEvent
Instance Variables:
    time = 2621668381
    initiator = an EventDispatcher
    window = an ApplicationWindow 16777389
    state = 2
    x = 95
    y = 170
    gx = 213
    gy = 303
    buttonNumber = 2
Context PC = 16

----------------------------------------------------------------------
YellowButtonPressedEvent(Event)>>dispatchForWindowManager:
Receiver:
    a YellowButtonPressedEvent
Instance Variables:
    time = 2621668381
    initiator = an EventDispatcher
    window = an ApplicationWindow 16777389
    state = 2
    x = 95
    y = 170
    gx = 213
    gy = 303
    buttonNumber = 2
Arguments:
    aWinMgr = a WindowManager
Context PC = 4

----------------------------------------------------------------------
optimized [] in WindowManager>>safelyDispatchForWindowManager:
Receiver:
    an UndefinedObject
Temporaries:
    .event = a YellowButtonPressedEvent
    .super = a WindowManager
Context PC = 6

----------------------------------------------------------------------
BlockClosure>>on:do:
Receiver:
    a BlockClosure
Instance Variables:
    method = CompiledBlock [] in WindowManager>>safelyDispatchForWindowManager:
    outerContext = nil
    copiedValues = an Array[2]
Arguments:
    anExceptionSelector = BadControllerError
    handlerBlock = BlockClosure [] in WindowManager>>safelyDispatchForWindowManager:
Context PC = 18

----------------------------------------------------------------------
WindowManager>>safelyDispatchForWindowManager:
Receiver:
    a WindowManager
Instance Variables:
    windows = an OrderedCollection[1]
    activeController = nil
    interruptLock = false
    outstandingMetaOrDamage = false
    openInProgress = false
    eventQueue = an EventQueue
    baseProcess = a Process in Semaphore>>wait
    dontFilterEvents = false
Arguments:
    event = a YellowButtonPressedEvent
Context PC = 13

----------------------------------------------------------------------
WindowManager>>processNextEvent
Receiver:
    a WindowManager
Instance Variables:
    windows = an OrderedCollection[1]
    activeController = nil
    interruptLock = false
    outstandingMetaOrDamage = false
    openInProgress = false
    eventQueue = an EventQueue
    baseProcess = a Process in Semaphore>>wait
    dontFilterEvents = false
Temporaries:
    event = a YellowButtonPressedEvent
Context PC = 9

----------------------------------------------------------------------
optimized [] in [] in WindowManager>>newProcess
Receiver:
    an UndefinedObject
Temporaries:
    .super = a WindowManager
Context PC = 13

----------------------------------------------------------------------
BlockClosure>>on:do:
Receiver:
    a BlockClosure
Instance Variables:
    method = CompiledBlock [] in [] in WindowManager>>newProcess
    outerContext = nil
    copiedValues = a WindowManager
Arguments:
    anExceptionSelector = TerminateException
    handlerBlock = BlockClosure [] in [] in WindowManager>>newProcess
Context PC = 18

----------------------------------------------------------------------
optimized [] in WindowManager>>newProcess
Receiver:
    an UndefinedObject
Temporaries:
    .super = a WindowManager
Context PC = 15

----------------------------------------------------------------------
BlockClosure>>on:do:
Receiver:
    a BlockClosure
Instance Variables:
    method = CompiledBlock [] in WindowManager>>newProcess
    outerContext = nil
    copiedValues = a WindowManager
Arguments:
    anExceptionSelector = TerminateException
    handlerBlock = BlockClosure [] in [] in Process class>>forBlock:priority:
Context PC = 18

----------------------------------------------------------------------
optimized [] in Process class>>forBlock:priority:
Receiver:
    an UndefinedObject
Temporaries:
    .aBlock = BlockClosure [] in WindowManager>>newProcess
Context PC = 9




_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc