Squeak 4.6: Tools-eem.626.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Squeak 4.6: Tools-eem.626.mcz

commits-2
Chris Muller uploaded a new version of Tools to project Squeak 4.6:
http://source.squeak.org/squeak46/Tools-eem.626.mcz

==================== Summary ====================

Name: Tools-eem.626
Author: eem
Time: 30 June 2015, 3:05:48.319 pm
UUID: 0bfae54b-3e68-4252-98d8-ddb1e56fc869
Ancestors: Tools-mt.625

Upgrade MessageSet class>>parse:toClassAndSelector:
to allow one to construct text links in modern syntax, e.g.
BitBlt class>>#subPixelRenderColorFonts

=============== Diff against Tools-mt.625 ===============

Item was changed:
  ----- Method: MessageSet class>>parse:toClassAndSelector: (in category 'utilities') -----
  parse: methodRef toClassAndSelector: csBlock
  "Decode strings of the form <className> [class] <selectorName>."
 
  | tuple cl |
 
 
  self flag: #mref. "compatibility with pre-MethodReference lists"
 
  methodRef ifNil: [^ csBlock value: nil value: nil].
  methodRef isString ifFalse:
  [^methodRef setClassAndSelectorIn: csBlock].
  methodRef isEmpty ifTrue:
  [^csBlock value: nil value: nil].
+ tuple := (methodRef asString includesSubString: '>>')
+ ifTrue: [(methodRef findTokens: '>>') fold: [:a :b| (a findTokens: ' '), {b first = $# ifTrue: [b allButFirst] ifFalse: [b]}]]
+ ifFalse: [methodRef asString findTokens: ' .'].
- tuple := methodRef asString findTokens: ' .'.
  cl := Smalltalk at: tuple first asSymbol ifAbsent: [^ csBlock value: nil value: nil].
  ^(tuple size = 2 or: [tuple size > 2 and: [(tuple at: 2) ~= 'class']])
  ifTrue: [csBlock value: cl value: (tuple at: 2) asSymbol]
  ifFalse: [csBlock value: cl class value: (tuple at: 3) asSymbol]!