eXept Software AG Logo

Smalltalk/X Webserver

Documentation of class 'ChangeSet::ChangeFileReader':

Home

Documentation
www.exept.de
Everywhere
for:
[back]

Class: ChangeFileReader (private in ChangeSet

This class is only visible from within ChangeSet.

Inheritance:

   Object
   |
   +--ChangeSet::ChangeFileReader
      |
      +--ChangeSet::BeeChangeFileReader
      |
      +--ChangeSet::DolphinPACFileReader
      |
      +--ChangeSet::GNUSmalltalkFileReader
      |
      +--ChangeSet::GithubPharoSmalltalkFileReader
      |
      +--ChangeSet::SIFChangeFileReader

Package:
stx:libbasic3
Category:
System-Changes
Owner:
ChangeSet

Instance protocol:

accessing
o  changeAction: aBlock

o  changeSet: something
set the value of the instance variable 'changeSet' (automatically generated)

o  inputStream: aStream

helpers
o  addChange: change

o  checkReceiverIsGlobalNamed: expectedName

o  classNameOf: aReceiver
old

o  classNameOfRememberingNamespace: aReceiver
new

o  extractMethodsClassAndSelectorFromReceiver
helper for all changes which are of the form:
(className compiledMethodAt:#methodSelector) something: ...

o  receiversClassName

o  receiversClassNameRememberingNamespace

o  variableNameOfReceiver

reading
o  changesFromParseTree: aTree lineNumber: initialLineNumberOrNil position: initialPositionOrNil
given a parse-tree (from parsing some changes source/chunk),
create changes and evaluate changeAction on each.
The chnageAction-block is invoked with the change and a lineNumberOrNil as
arg; the lineNumber is only valid, if the underlying inputStream
provides line-numbers; otherwise, nil is passed.

o  changesFromParseTree: aTree lineNumber: initialLineNumberOrNil position: initialPositionOrNil chunk: initialChunkOrNil
given a parse-tree (from parsing some changes source/chunk),
create changes and evaluate changeAction on each.
The changeAction-block is invoked with the change and a lineNumberOrNil as
arg; the lineNumber is only valid, if the underlying inputStream
provides line-numbers; otherwise, nil is passed.

reading-private
o  handleCategoriesForChange
easy

o  handleCategoriesForClassChange
easy

o  handleClassCommentChange

o  handleClassDefinitionChange
old: remember namespace in className

o  handleClassInitializeChange

o  handleClassInstanceVariableDefinitionChange

o  handleMethodCategoryChange

o  handleMethodCategoryRenameChange

o  handleMethodChange
Read methods that may follow

o  handleMethodChangeUnsafe
Care for non-positionable streams

o  handleMethodPackageChange

o  handleMethodPrivacyChange

o  handleNameSpaceCreationChange

o  handlePrimitiveChange

o  handlePrimitiveChange: sourceOrNil
if sourceOrNil is nil, the def has not been read and must be read from
the next chunk. Otherwise, it has been already read as argument.

o  handleRemoveClassChange
nameSpace ~~ Smalltalk ifTrue:[

o  handleRemoveMethodChange

o  handleRenameClassChange

o  handleSqueakCommentStamp

o  handleVW7ClassDefinitionChange
nameSpace := Class nameSpaceQuerySignal query.

o  processChange
given a parse-tree (from parsing some changes source/chunk),
create changes and evaluate changeAction on each.
The block is invoked with the change and a lineNumberOrNil as
arg; the lineNumber is only valid, if the underlying stream
provides line-numbers; otherwise, nil is passed.

o  processChangeUnsafe
given a parse-tree (from parsing some changes source/chunk),
create changes and evaluate changeAction on each.
The block is invoked with the change and a lineNumberOrNil as
arg; the lineNumber is only valid, if the underlying stream
provides line-numbers; otherwise, nil is passed.

o  processInfo: string
Processes 'info record' - an info record consist of a chunk containing
single string literal starting with ----, such as:

'---- timestamp jv@neso 12-03-2012 10:49:40 ----'
'---- snapshot st.img 30-03-2012 11:40:24 ----'
'---- checkin SVN::ConfigurationApp into stx:libsvn (1.12) 12-03-2012 10:51:15 ----'
'---- rake update 30-03-2012 11:40:24 ----'
'---- start 30-03-2012 11:40:24 ----'

timestamp info records are (for historical reasons) processed in ChangeSet

o  process_category_
'category:' chunk (ST/X)

o  process_comment_
'comment:' chunk (ST/X)

o  process_encoding
St/X encoding info record. Ignored

o  process_ignoredMethodsFor_
'ignoredMethodsFor:' chunk (ST/X)

o  process_initialize
'class initialize' chunk

o  process_instanceVariableNames_
'instanceVariableNames:' chunk (ST/X)

o  process_name_
'name:' chunk (ST/X)

o  process_otherInfo: what
'---- <what> 12-03-2012 10:49:40 ----'

'<what>' is already read from inputStream.

o  process_package_
'package:' chunk (ST/X)

o  process_primitiveDefinitions
'primitiveDefinitions' chunk (ST/X)

o  process_primitiveDefinitions_
'primitiveDefinitions:' chunk (ST/X)

o  process_primitiveFunctions
'primitiveFunctions' chunk (ST/X)

o  process_primitiveFunctions_
'primitiveFunctions:' chunk (ST/X)

o  process_primitiveVariables
'primitiveVariables' chunk (ST/X)

o  process_primitiveVariables_
'primitiveVariables:' chunk (ST/X)

o  process_privacy_
'privacy:' chunk (ST/X)

o  process_privateMethods
'privateMethods' chunk (ST/V and dolphin)

o  process_privateMethodsFor_
'privateMethodsFor:' chunk (ST/X)

o  process_protectedMethodsFor_
'protectedMethodsFor:' chunk (ST/X)

o  process_publicMethodsFor_
'publicMethodsFor:' chunk (ST/X)

o  process_rake
Rake build system info record

'---- rake update st.img 12-03-2012 10:49:40 ----'!
'---- rake compile st.img 12-03-2012 10:49:40 ----'!

'rake' is already read from inputStream.

o  process_removeClass_
'removeClass:' chunk (ST/X)

o  process_removeSelector_
'removeSelector:' chunk (ST/X)

o  process_renameCategory_to_
'renameCategory:to:' chunk (ST/X)

o  process_renameClass_to_
'renameClass:to:' chunk (ST/X)

o  process_snapshot
St/X system start info record

'---- snapshot st.img 12-03-2012 10:49:40 ----'!

'start' is already read from inputStream.

o  process_start
St/X system start info record

'---- start 12-03-2012 10:49:40 ----'!

'start' is already read from inputStream.

o  process_timestamp
St/X timestamp info record. Example:

'---- timestamp jv@neso 12-03-2012 10:49:40 ----'!

'timestamp' is already read from inputStream.

reading-private-dolphin
o  process_categoriesForClass
'categoriesForClass' chunk (Dolphin)

o  process_categoriesFor_
'categoriesFor:' chunk (Dolphin)

o  process_methods
'methods' chunk (ST/V and dolphin)

o  process_methodsFor
'methodsFor' chunk (ST/V and dolphin)

o  process_methodsForUndefined_
'methodsForUndefined:' chunk (?)

o  process_methodsFor_
'methodsFor:' chunk (ST/80, Squeak, ST/X, VW, ...)

o  process_publicMethods
'publicMethods' chunk (ST/V and dolphin)

reading-private-gravel
o  process_addClassMethod_
'reader addClassMethod:' chunk (gravel Smalltalk)

o  process_addMethodOrClassMethod: isClassMethod
'reader addMethod:' chunk (gravel Smalltalk)

o  process_addMethod_
'reader addMethod:' chunk (gravel Smalltalk)

o  process_addSimpleClassTrait_
'reader defineaddSimpleTraitTrait:' chunk (gravel Smalltalk)

o  process_addSimpleTrait_
'reader defineaddSimpleTraitTrait:' chunk (gravel Smalltalk)

o  process_defineClass_superclass_
'reader defineClass:superclass:' chunk (gravel Smalltalk)

o  process_defineTrait_superclass_
'reader defineTrait:' chunk (gravel Smalltalk)

reading-private-squeak
o  process_commentStamp_prior_
'commentStamp:prior::' chunk (Squeak)

o  process_methodsFor_stamp_
'methodsFor:stamp:' chunk (Squeak)



ST/X 7.2.0.0; WebServer 1.670 at bd0aa1f87cdd.unknown:8081; Sat, 26 Nov 2022 08:52:02 GMT