'From Squeak5.3beta of 18 January 2020 [latest update: #19328] on 19 January 2020 at 10:53:39 pm'! !FutureMaker methodsFor: 'printing' stamp: 'ct 1/19/2020 22:45'! printOn: aStream "Append to the argument, aStream, a sequence of characters that identifies the receiver." aStream nextPutAll: self class name asString withArticle.! ! !Object methodsFor: 'printing' stamp: 'ct 1/19/2020 22:34'! printOn: aStream "Append to the argument, aStream, a sequence of characters that identifies the receiver." aStream nextPutAll: self class name asString withArticle.! ! !ClassDescription methodsFor: 'accessing comment' stamp: 'ct 1/19/2020 22:40'! classCommentBlank ^String streamContents: [:stream| stream nextPutAll: self name asString withArticle capitalized; nextPutAll: ' is xxxxxxxxx.'; cr; cr; nextPutAll: 'Instance Variables'. self instVarNames sorted do: [:each | stream crtab; nextPutAll: each; nextPut: $:; tab: 2; nextPutAll: '']. stream cr. self instVarNames sorted do: [:each | stream cr; nextPutAll: each; crtab; nextPutAll: '- xxxxx'; cr]]! ! !Context methodsFor: '*Tools-debugger access' stamp: 'ct 1/19/2020 22:43'! print: anObject on: aStream "Safely print anObject in the face of direct ProtoObject subclasses." | objClass | objClass := self objectClass: anObject. (objClass canUnderstand: #printOn:) ifTrue: [^anObject printOn: aStream]. aStream nextPutAll: objClass name asString withArticle! ! !ExternalPipe methodsFor: 'printing' stamp: 'ct 1/19/2020 22:53'! printOn: aStream "The implementation of Stream>>printOn: has bad side effects when used for OSPipe. This implementation is copied from Object." aStream nextPutAll: self class name asString withArticle.! ! !Message methodsFor: '*Tools-Debugger' stamp: 'ct 1/19/2020 22:37'! createStubMethod | argNames | argNames := Set new. ^ String streamContents: [ :s | self selector keywords doWithIndex: [ :key :i | | argName arg argClassName | s nextPutAll: key. ((key last = $:) or: [self selector isInfix]) ifTrue: [ arg := self arguments at: i. argClassName := arg canonicalArgumentName asSymbol. argName := argClassName withArticle. [argNames includes: argName] whileTrue: [argName := argName, i asString]. argNames add: argName. s nextPutAll: ' '; nextPutAll: argName; space ]. ]. s cr; tab. s nextPutAll: 'self shouldBeImplemented' ].! ! !SLClassMetricsPlugIn methodsFor: 'private' stamp: 'ct 1/19/2020 22:49'! printOn: aStream aStream nextPutAll: self class name asString withArticle; space; nextPut: $(; nextPutAll: (self class offeredTests size) asString; nextPut: $)! ! !SLCodingStylesPlugIn methodsFor: 'results' stamp: 'ct 1/19/2020 22:49'! printOn: aStream aStream nextPutAll: self class name asString withArticle; space; nextPut: $(; nextPutAll: (self class offeredTests size) asString; nextPut: $)! ! !SLDisharmonyPlugIn methodsFor: 'initialize-release' stamp: 'ct 1/19/2020 22:50'! printOn: aStream aStream nextPutAll: self class name asString withArticle; space; nextPut: $(; nextPutAll: (self class offeredTests size) asString; nextPut: $)! ! !SLMethodMetricsPlugIn methodsFor: 'tests' stamp: 'ct 1/19/2020 22:50'! printOn: aStream aStream nextPutAll: self class name asString withArticle; space; nextPut: $(; nextPutAll: (self class offeredTests size) asString; nextPut: $)! ! !SLMiscPlugIn methodsFor: 'method tests' stamp: 'ct 1/19/2020 22:50'! printOn: aStream aStream nextPutAll: self class name asString withArticle; space; nextPut: $(; nextPutAll: (self class offeredTests size) asString; nextPut: $)! ! !SLResultEnvironment methodsFor: 'accessing' stamp: 'ct 1/19/2020 22:50'! printOn: aStream aStream nextPutAll: self class name asString withArticle; space; nextPut: $(; nextPutAll: self results asString; nextPut: $)! ! !SLSmallLintPlugIn methodsFor: 'initialize-release' stamp: 'ct 1/19/2020 22:50'! printOn: aStream aStream nextPutAll: self class name asString withArticle; space; nextPut: $(; nextPutAll: (self class offeredTests size) asString; nextPut: $)! ! !SLSwaMetricsPlugIn methodsFor: 'tests' stamp: 'ct 1/19/2020 22:50'! printOn: aStream aStream nextPutAll: self class name asString withArticle; space; nextPut: $(; nextPutAll: (self class offeredTests size) asString; nextPut: $)! ! !SLTestObject methodsFor: 'printing' stamp: 'ct 1/19/2020 22:51'! printOn: aStream "Append to the argument, aStream, a sequence of characters that identifies the receiver." | title | title := self class name, '(', self name, ')'. aStream nextPutAll: title asString withArticle.! ! !String methodsFor: 'printing' stamp: 'ct 1/7/2020 00:19'! article ^ self first isVowel ifTrue: ['an'] ifFalse: ['a']! ! !String methodsFor: 'printing' stamp: 'ct 1/19/2020 22:33'! withArticle ^ self article , ' ' , self capitalized! ! !Symbol methodsFor: 'printing' stamp: 'ct 1/19/2020 22:33'! withArticle ^ self article , self capitalized! !