|
Class: PackageInfo
Object
|
+--PackageInfo
- Package:
- stx:libcompat
- Category:
- Compatibility-Squeak
- Version:
- rev:
1.21
date: 2019/03/28 14:14:00
- user: cg
- file: PackageInfo.st directory: libcompat
- module: stx stc-classLibrary: libcompat
DO NOT DIRECTLY REFER TO THIS CLASS OR USE IT OTHERWISE IN YOUR CODE:
This is a dummy, mimicry class to allow some squeak code to be filed in.
Its protocol is neither complete, nor fully compatible with the corresponding
squeak original class.
ALSO: be aware, that this PackageInfo class does not know much about how ST/X
organizes its extensions. So NEVER EVER think about using it to get pacakgeInfo
on ST/X packages. It is only present to support porting Squeak tools, which
read Squeak packages (i.e. code importer packages).
One such being the monticello framework.
compatibility
-
default
-
initialization
-
initialize
-
cg: the allSbclassesDo may be expensive;
packages access
-
allPackages
-
returns the monticello packages
usage example(s):
-
named: aString
-
-
registerPackageName: aString
-
testing
-
existPackageNamed: aString
-
self existPackageNamed: 'PackageInfo'
self existPackageNamed: 'Zork'
accessing
-
name: something
-
comparing
-
= other
-
-
hash
-
(comment from inherited method)
return an Integer useful as a hash key for the receiver.
This hash should return same values for objects with same
contents (i.e. use this to hash on structure)
dependencies
-
externalCallers
-
-
externalClasses
-
-
externalRefsSelect: selBlock thenCollect: colBlock
-
-
externalSubclasses
-
-
externalUsers
-
listing
-
classes
-
-
classesAndMetaClasses
-
-
coreMethods
-
-
extensionClasses
-
-
extensionMethods
-
-
foreignClasses
-
-
foreignSystemCategories
-
-
methods
-
-
overrideMethods
-
-
selectors
-
-
systemCategories
-
modifying
-
addCoreMethod: aMethodReference
-
-
addExtensionMethod: aMethodReference
-
-
addMethod: aMethodReference
-
-
baseCategoryOfMethod: aMethodReference
-
Strip off any old prefixes
-
externalBehaviors
-
-
externalTraits
-
-
removeMethod: aMethodReference
-
naming
-
categoryName
-
-
externalName
-
-
methodCategoryPrefix
-
^ methodCategoryPrefix ifNil: [methodCategoryPrefix := '*', self packageName asLowercase]
-
packageName
-
^ packageName ifNil: [packageName := self categoryName]
-
packageName: aString
-
-
systemCategoryPrefix
-
registering
-
register
-
testing
-
category: categoryName matches: prefix
-
-
coreCategoriesForClass: aClass
-
-
coreMethodsForClass: aClass
-
sorry: that's the kind of code which is hard to understand...
-
extensionCategoriesForClass: aClass
-
-
extensionMethodsForClass: aClass
-
sigh: in squeak/pharo, extension methods are marked by their category
-
extensionMethodsFromClasses: classes
-
-
foreignExtensionCategoriesForClass: aClass
-
-
foreignExtensionMethodsForClass: aClass
-
-
includesClass: aClass
-
-
includesClassNamed: aClassName
-
-
includesMethod: aSymbol ofClass: aClass
-
-
includesMethodCategory: categoryName ofClass: aClass
-
-
includesMethodCategory: categoryName ofClassNamed: aClass
-
-
includesMethodReference: aMethodRef
-
-
includesSystemCategory: categoryName
-
-
isForeignClassExtension: categoryName
-
-
isOverrideMethod: aMethodReference
-
-
isYourClassExtension: categoryName
-
-
methodIsInPackage: aMethod
-
sigh: in squeak/pharo, extension methods are marked by their category
-
outsideClasses
-
-
referenceForMethod: aSymbol ofClass: aClass
-
|