ClassDescription


Kernel-Classes

Comment:

I add a number of facilities to basic Behaviors:
	Named instance variables
	Category organization for methods
	The notion of a name of this class (implemented as subclass responsibility)
	The maintenance of a ChangeSet, and logging changes on a file
	Most of the mechanism for fileOut.
	
I am an abstract class, in particular, my facilities are intended for inheritance by two subclasses, Class and Metaclass.

The slot 'subclasses' that is defined here is only used in Class, not in Metaclass.  This is due to history and, at some point, the slot should bemoved down to Class.

Hierarchy:

ProtoObject
Object
Behavior
ClassDescription

Summary:

instance variables:

instanceVariables organization

methods:

instance class
accessing
  • classVersion
  • comment
  • comment:
  • comment:stamp:
  • isMeta
  • theNonMetaClass
accessing class hierarchy
  • allSubclasses
  • printSubclassesOn:level:
  • removeUninstantiatedSubclassesSilently
  • subclasses
  • subclassesDo:
  • withAllSubclasses
compiling
  • acceptsLoggingOfCompilation
  • compile:classified:
  • compile:classified:notifying:
  • compile:classified:withStamp:notifying:
  • compile:notifying:
  • compile:notifying:trailer:ifFail:elseSetSelectorAndNode:
  • compileProgrammatically:classified:
  • compileUnlogged:classified:notifying:
  • moveInstVarNamed:to:after:
  • wantsChangeSetLogging
copying
  • copy:from:
  • copy:from:classified:
  • copyAll:from:
  • copyAll:from:classified:
  • copyAllCategoriesFrom:
  • copyCategory:from:
  • copyCategory:from:classified:
  • copyMethodDictionaryFrom:
fileIn/Out
  • classComment:
  • classComment:stamp:
  • commentFollows
  • commentStamp:
  • commentStamp:prior:
  • definition
  • fileOutCategory:
  • fileOutCategory:asHtml:
  • fileOutCategory:on:moveSource:toFile:
  • fileOutChangedMessages:on:
  • fileOutChangedMessages:on:moveSource:toFile:
  • fileOutMethod:
  • fileOutMethod:asHtml:
  • fileOutOn:
  • fileOutOn:moveSource:toFile:
  • fileOutOrganizationOn:
  • kindOfSubclass
  • methods
  • methodsFor:
  • methodsFor:priorSource:inFile:
  • methodsFor:stamp:
  • methodsFor:stamp:prior:
  • moveChangesTo:
  • printCategoryChunk:on:
  • printCategoryChunk:on:priorMethod:
  • printCategoryChunk:on:withStamp:priorMethod:
  • printCategoryChunk:withStamp:on:
  • printMethodChunk:withPreamble:on:moveSource:toFile:
  • reformatAll
  • reformatMethodAt:
  • reorganize
initialize-release
  • doneCompiling
  • obsolete
  • superclass:methodDictionary:format:
  • updateInstances:from:isMeta:
  • updateInstancesFrom:
instance variables
  • addInstVarName:
  • browseClassVarRefs
  • browseClassVariables
  • browseInstVarDefs
  • browseInstVarRefs
  • checkForInstVarsOK:
  • chooseInstVarAlphabeticallyThenDo:
  • chooseInstVarThenDo:
  • forceNewFrom:
  • instVarNames
  • removeInstVarName:
  • renameInstVar:to:
  • renameSilentlyInstVar:to:
method dictionary
  • induceMDFault
  • recoverFromMDFault
  • removeCategory:
  • removeSelector:
  • removeSelectorUnlogged:
organization
  • category
  • category:
  • organization
  • organization:
  • removeAllEmptyCategories
  • whichCategoryIncludesSelector:
  • zapAllMethods
  • zapOrganization
printing
  • classVariablesString
  • instanceVariablesString
  • printOn:
  • printOnStream:
  • sharedPoolsString
  • storeOn:
private
  • errorCategoryName
  • instVarMappingFrom:
  • linesOfCode
  • newInstanceFrom:variable:size:map:
  • setInstVarNames:
  • spaceUsed
querying
no messages

Detail:

instance variables:

instanceVariables
inferredType:
UndefinedObject
organization
inferredType:
UndefinedObject

instance methods:

organization
removeAllEmptyCategories


	self organization removeEmptyCategories

querying
commentFor: selector

		"Return the comment entered for selector."

	"SmallInterfaces: ##modified for Squeak -M.U. 6/23/1999 23:35"

	| cm comments |
	cm := (self compiledMethodAt: selector ifAbsent: [^'']).
	comments := (Parser new) parseMethodComment: cm getSourceFromFile setPattern: [:x |]. "M.U. 6/23/1999 23:35"
	^comments notEmpty
		ifTrue: [comments first]
		ifFalse: ['']
selectorsInCategory: categoryName
 

	Symbol 
		hasInterned: categoryName 
		ifTrue: [:sym | ^self organization listAtCategoryNamed: sym].
	^#()

class methods:

^top


- made by Dandelion -