Squeak Class Documentation category index | class index  
 
ClassOrganizer
  category: Kernel-Classes
  superclass: Object
  subclasses: SystemOrganizer PseudoClassOrganizer

I represent method categorization information for classes. The handling of class comments has gone through a tortuous evolution. Grandfathered class comments (before late aug 98) have no time stamps, and historically, fileouts of class comments always substituted the timestamp reflecting the author and date/time at the moment of fileout; and historically any timestamps in a filed out class comment were dropped on the floor, with the author & time prevailing at the moment of filein being substituted. Such grandfathered comments now go out on fileouts with '<historical>' timestamp; class comments created after the 8/98 changes will have their correct timestamps preserved, though there is not yet a decent ui for reading those stamps other than filing out and looking at the file; nor is there yet any ui for browsing and recovering past versions of such comments. Everything in good time!

instance methods
  accessing
  categories
categories:
categoryOfElement:
changeFromCategorySpecs:
changeFromString:
classComment
classComment:
commentRemoteStr
commentStamp
commentStamp:
hasNoComment
listAtCategoryNamed:
listAtCategoryNumber:
numberOfCategoryOfElement:
removeElement:
removeEmptyCategories
sortCategories

  compiler access
  classify:under:
classify:under:suppressIfDefault:
classifyAll:under:

  fileIn/Out
  fileOutCommentOn:moveSource:toFile:
moveChangedCommentToFile:numbered:
objectForDataStream:
putCommentOnFile:numbered:moveSource:forClass:
scanFrom:

  method dictionary
  addCategory:
addCategory:before:
allMethodSelectors
removeCategory:
renameCategory:toBe:

  object fileIn
 

  printing
  printOn:
printOnStream:

  private
  elementArray
setDefaultList:

class methods
  class initialization
  allCategory
default
initialize
nullCategory

  documentation
  documentation

  instance creation
  defaultList:

instance methods
  accessing top  
 

categories

Answer an Array of categories (names).


 

categories:

Reorder my categories to be in order of the argument, anArray. If the
resulting organization does not include all elements, then give an error.


 

categoryOfElement:

Answer the category associated with the argument, element.


 

changeFromCategorySpecs:

Tokens is an array of categorySpecs as scanned from a browser 'reorganize' pane, or built up by some other process, such as a scan of an environment.


 

changeFromString:

Parse the argument, aString, and make this be the receiver's structure.


 

classComment


 

classComment:

Store the comment, aString, associated with the object that refers to the
receiver.


 

commentRemoteStr


 

commentStamp


 

commentStamp:


 

hasNoComment

Answer whether the class classified by the receiver has a comment.


 

listAtCategoryNamed:

Answer the array of elements associated with the name, categoryName.


 

listAtCategoryNumber:

Answer the array of elements stored at the position indexed by anInteger. Answer nil if anInteger is larger than the number of categories.


 

numberOfCategoryOfElement:

Answer the index of the category with which the argument, element, is
associated.


 

removeElement:

Remove the selector, element, from all categories.


 

removeEmptyCategories

Remove empty categories.


 

sortCategories


  compiler access top  
 

classify:under:


 

classify:under:suppressIfDefault:

Store the argument, element, in the category named heading. If aBoolean is true, then invoke special logic such that the classification is NOT done if the new heading is the Default and the element already had a non-Default classification -- useful for filein


 

classifyAll:under:


  fileIn/Out top  
 

fileOutCommentOn:moveSource:toFile:

Copy the class comment to aFileStream. If moveSource is true (as in compressChanges or compressSources, then update globalComment to point to the new file.


 

moveChangedCommentToFile:numbered:

If the comment is in the changes file, then move it to a new file.


 

objectForDataStream:

I am about to be written on an object file. Write a path to me in the other system instead.


 

putCommentOnFile:numbered:moveSource:forClass:

Store the comment about the class onto file, aFileStream.


 

scanFrom:

Reads in the organization from the next chunk on aStream.
Categories or elements not found in the definition are not affected.
New elements are ignored.


  method dictionary top  
 

addCategory:


 

addCategory:before:

Add a new category named heading.
If default category exists and is empty, remove it.
If nextCategory is nil, then add the new one at the end,
otherwise, insert it before nextCategory.


 

allMethodSelectors

give a list of all method selectors.


 

removeCategory:

Remove the category named, cat. Create an error notificiation if the
category has any elements in it.


 

renameCategory:toBe:

Rename a category. No action if new name already exists, or if old name does not exist.


  object fileIn top  

  printing top  
 

printOn:

Refer to the comment in Object|printOn:.


 

printOnStream:

Refer to the comment in Object|printOn:.


  private top  
 

elementArray


 

setDefaultList:


class methods
  class initialization top  
 

allCategory

Return a symbol that represents the virtual all methods category.


 

default


 

initialize

Object initialize


 

nullCategory


  documentation top  
 

documentation

Instances consist of an Array of category names (categoryArray), each of
which refers to an Array of elements (elementArray). This association is
made through an Array of stop indices (categoryStops), each of which is
the index in elementArray of the last element (if any) of the
corresponding category. For example: categories _ Array with: 'firstCat'
with: 'secondCat' with: 'thirdCat'. stops _ Array with: 1 with: 4 with: 4.
elements _ Array with: #a with: #b with: #c with: #d. This means that
category firstCat has only #a, secondCat has #b, #c, and #d, and
thirdCat has no elements. This means that stops at: stops size must be the
same as elements size.


  instance creation top  
 

defaultList:

Answer an instance of me with initial elements from the argument,
aSortedCollection.