System-FilePackage

ClassDiffBuilder
A ClassDiffBuilder is xxxxxxxxx.
Instance Variables
printPatchSequence:on:
split:
CodeDiffBuilder
I am a differencer that compares source in tokens tokenised by a parser. I consider comments significant, but consider sequences of whitespace equivalent. Depending on the definition of WhitespaceForCodeDiff>>at: sequences of whitespace containing carriage-returns may be considered different to sequences of whitespace lacking carriage-returns (which may result in better-formatted diffs).
FilePackage
A FilePackage is xxxxxxxxx.
Instance Variables
classOrder: <Object>
classes: <Object>
doIts: <Object>
fullName: <Object>
sourceSystem: <Object>
classOrder
- xxxxx
classes
- xxxxx
doIts
- xxxxx
fullName
- xxxxx
sourceSystem
- xxxxx
askForDoits
canceledConflictChecking
canceledConflictChecking:
checkForMoreRecentUpdateThanChangeSet:pseudoClass:selector:
Returns the source code for a conflict if a conflict is found, otherwise returns nil.
classAt:
classComment:
classDefinition:with:
classes
closeLog
conflictsWithUpdatedMethods
Check this package for conflicts with methods in the image which are in newer updates.
conflictsWithUpdatedMethods:
doIt:
doIts
fileIn
fileInDoits
fileInFrom:
fileOut
fileOutDoits:
fileOutOn:
fileReaderServicesForFile:suffix:
findUpdateChangeSetMatching:
Find update-changeset beginning with updateNumber, or reasonably close.
fixClassOrder
Essentially bubble sort the classOrder so that superclasses appear before subclasses
fromFileNamed:
fromFileNamed:encoding:
fullName:
fullPackageName
getClass:
initialize
Subclasses should redefine this method to perform initializations on instance creation
log:
logCr
logFileStream
metaClassDefinition:with:
method:
msgClassComment:with:
packageInfo
packageName
possibleSystemSource:
preamble:
removeClass:
removeDoIts
removedMethod:with:
renameClass:to:
sampleMethod
In an existing method there are always a number of changes.
Other stuff
will be deleted
Or even better,
some things may be just modified.
serviceConflictsWithUpdatedMethods
services
showIdenticalConflicts
verboseConflicts
PrettyTextDiffBuilder
A PrettyTextDiffBuilder is xxxxxxxxx.
Instance Variables
sourceClass: <Object>
sourceClass
- xxxxx
from:to:inClass:
sourceClass:
split:
PseudoClass
I provide an inert model of a Class, used by FileContentsBrowser to manipulate filedout code. Instead of a method dictionary or selectors onto CompiledMethods, I have a dictionary ("source") of selectors onto ChangeRecords, which were, in the case of FileContentsBrowser, parsed from a source or change set file.
addMethodChange:
allCallsOn
allInstVarNames
allSubclassesWithLevelDo:startingLevel:
allSuperclasses
asClassDefinition
bindingOf:
classComment:
classNotDefined
classPool
comment
comment:
commentString
commentString:
compilerClass
confirmRemovalOf:
definition
definition:
evaluate:
exists
fileIn
FileIn the receiver
fileInCategory:
fileInDefinition
fileInMethod:
fileInMethods
fileInMethods:
FileIn all methods with selectors taken from aCollection
fileOut
fileOutCategory:
fileOutDefinitionOn:
fileOutMethod:
fileOutMethods:on:
FileOut all methods with selectors taken from aCollection
fileOutMethodsOn:
fileOutOn:
FileOut the receiver
fullName
hasChanges
hasComment
hasDefinition
hasMetaclass
instVarNames
isMeta
isTrait
literalScannedAs:notifying:
makeSureClassExists:
makeSureSuperClassExists:
metaClass
methodChange:
name
Answer a name for the receiver. This is used generically in the title of certain inspectors, such as the referred-to inspector, and specificially by various subsystems. By default, we let the object just print itself out..
name:
nameExists
needsInitialize
organization
parserClass
prettyPrinterClass
printOn:
Append to the argument, aStream, a sequence of characters that
identifies the receiver.
realClass
removeAllUnmodified
removeCategory:
removeMethod:
removeSelector:
removeUnmodifiedMethods:
removedCategoryName
renameTo:
If the receiver has an inherent idea about its own name, it should take action here. Any object that might be pointed to in the References dictionary might get this message sent to it upon reload
selectors
sharedPools
sourceCode
sourceCodeAt:
sourceCodeAt:put:
sourceCodeTemplate
stampAt:
Answer the authoring time-stamp of the change
theMetaClass
theNonMetaClass
Sent to a class or metaclass, always return the class
whichCategoryIncludesSelector:
Answer the category of the argument, aSelector, in the organization of
the receiver, or answer nil if the receiver does not inlcude this selector.
PseudoClassOrganizer
A PseudoClassOrganizer is xxxxxxxxx.
Instance Variables
classComment
Answer the comment associated with the object that refers to the receiver.
classComment:
Store the comment, aString, associated with the object that refers to the
receiver.
setDefaultList:
PseudoMetaclass
A PseudoMetaclass is xxxxxxxxx.
Instance Variables
fullName
isMeta
realClass
theNonMetaClass
Sent to a class or metaclass, always return the class
TextDiffBuilder
A TextDiffBuilder is xxxxxxxxx.
Instance Variables
added: <Object>
dstLines: <Object>
dstMap: <Object>
dstPos: <Object>
matches: <Object>
multipleMatches: <Object>
patchSequence: <Object>
realDst: <Object>
realSrc: <Object>
removed: <Object>
runs: <Object>
shifted: <Object>
srcLines: <Object>
srcMap: <Object>
srcPos: <Object>
added
- xxxxx
dstLines
- xxxxx
dstMap
- xxxxx
dstPos
- xxxxx
matches
- xxxxx
multipleMatches
- xxxxx
patchSequence
- xxxxx
realDst
- xxxxx
realSrc
- xxxxx
removed
- xxxxx
runs
- xxxxx
shifted
- xxxxx
srcLines
- xxxxx
srcMap
- xxxxx
srcPos
- xxxxx
attributesOf:
Private.
Answer the TextAttributes that are used to display text of the given type.
buildDisplayPatch
buildDisplayPatchFrom:to:
buildDisplayPatchFrom:to:inClass:
buildDisplayPatchFrom:to:inClass:prettyDiffs:
buildPatchSequence
@@ TODO: Das funktioniert noch nicht für n-m matches
buildReferenceMap
collectRunFrom:startingWith:into:
destString:
detectShiftedRuns
formatLine:
from:to:
generatePatchSequence
hasMultipleMatches
incorporateAddsInto:
Incorporate adds
incorporateMatchesInto:
Incorporate matches
incorporateRemovalsInto:
Incorporate removals
pointEqualBlock
pointHashBlock
printPatchSequence:on:
processDiagonals
processDiagonalsFrom:
processShiftedRuns
remove:from:
sourceString:
split:
split:by:
splitCharacter
stringHashBlock
Return a block for use in string hashing
validateRuns:
TwoLevelDictionary
A simple dictionary for the use of the TextDiffBuilder. Keys are presumed to be Points and a significant speed advantage is gained by using a dictionary of dictionaries. The first is keyed by the x-values and the second by the y-values. Only the minimum necessary protocol is implemented.
at:
Primitive. Assumes receiver is indexable. Answer the value of an
indexable element in the receiver. Fail if the argument index is not an
Integer or is out of bounds. Essential. See Object documentation
whatIsAPrimitive.
at:put:
Primitive. Assumes receiver is indexable. Store the argument value in
the indexable element of the receiver indicated by index. Fail if the
index is not an Integer or is out of bounds. Or fail if the value is not of
the right type for this kind of collection. Answer the value that was
stored. Essential. See Object documentation whatIsAPrimitive.
initialize
Subclasses should redefine this method to perform initializations on instance creation
keysDo:
twoLevelKeys
TwoLevelSet
A simple set for the use of the TextDiffBuilder. Elements are presumed to be Points and a significant speed advantage is gained by using a dictionary of sets. The first is keyed by the x-values and the second contains the y-values. Only the minimum necessary protocol is implemented.
add:
copy
Answer another instance just like the receiver. Subclasses typically override postCopy; they typically do not override shallowCopy.
detect:
do:
includes:
initialize
Subclasses should redefine this method to perform initializations on instance creation
isEmpty
remove:
removeAllXAndY: