'From Pharo1.2rc1 of 6 June 2011 [Latest update: #12310] on 8 June 2011 at 1:19:20 pm'! FLMapper subclass: #FLGlobalMapper instanceVariableNames: 'internalGlobals globalBehaviors globalObjects' classVariableNames: '' poolDictionaries: '' category: 'Fuel-Core-Mappers'! !FLGlobalMapper commentStamp: 'MartinDias 5/30/2011 01:15' prior: 0! I map classes and well known objects that belong to Smalltalk global dictionary. For example, Transcript is mapped by me.! !FLGlobalMapper methodsFor: 'accessing' stamp: 'MartinDias 5/30/2011 02:01'! accepts: anObject ^ ( ((self isGlobalObject: anObject) or: [self isGlobalBehavior: anObject] ) and: [self isExternal: anObject ]) ! ! !FLGlobalMapper methodsFor: 'accessing' stamp: 'MartinDias 5/20/2011 03:59'! internalGlobals: anObject internalGlobals := anObject! ! !FLGlobalMapper methodsFor: 'accessing' stamp: 'MartinDias 5/20/2011 04:02'! isExternal: anObject ^ (internalGlobals includes: anObject) not! ! !FLGlobalMapper methodsFor: 'accessing' stamp: 'EliotMiranda 6/8/2011 13:13'! isGlobalBehavior: anObject ^(anObject isBehavior or: [anObject isTrait]) and: [globalBehaviors includes: anObject]! ! !FLGlobalMapper methodsFor: 'accessing' stamp: 'EliotMiranda 6/8/2011 13:13'! isGlobalObject: anObject ^globalObjects includes: anObject ! ! !FLGlobalMapper methodsFor: 'initialize-release' stamp: 'EliotMiranda 6/8/2011 13:18'! initialize super initialize. internalGlobals := OrderedCollection new. globalBehaviors := ((Smalltalk respondsTo: #allClassesAndTraits) ifTrue: [Smalltalk allClassesAndTraits] ifFalse: [Smalltalk allClasses]) asIdentitySet. globalObjects := ((Smalltalk respondsTo: #globals) ifTrue: [self class globalNames collect: [:key| Smalltalk globals at: key]] ifFalse: [self class globalNames collect: [:key| Smalltalk at: key]]) asIdentitySet ! ! !FLGlobalMapper methodsFor: 'evaluating' stamp: 'MartinDias 5/31/2011 18:38'! mapAndTrace: anObject anObject fuelAccept: self! ! !FLGlobalMapper methodsFor: 'visiting' stamp: 'mariano 5/31/2011 16:59'! visitClassOrTrait: aClassOrTrait analyzer mapAndTrace: aClassOrTrait to: FLReferencedClassCluster instance into: analyzer clustersWithExternalMetalevelObjects ! ! !FLGlobalMapper methodsFor: 'visiting' stamp: 'mariano 5/31/2011 16:59'! visitObject: anObject analyzer mapAndTrace: anObject to: FLGlobalCluster instance into: analyzer clustersWithExternalMetalevelObjects! ! "-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- "! FLGlobalMapper class instanceVariableNames: ''! !FLGlobalMapper class methodsFor: 'accessing' stamp: 'MartinDias 11/25/2010 16:16'! globalNames ^ #(#Display #World #Smalltalk #Transcript #SourceFiles #Processor #ImageImports #TextConstants #Undeclared #SystemOrganization #Sensor #ActiveWorld)! !