Posted by
Lukas Renggli on
Feb 22, 2009; 9:33am
URL: https://forum.world.st/What-about-ifNotNil-and-ifNotNilDo-tp1309537p1309546.html
Yeah, simply don't use #ifNotNilDo: and friends.
If you follow the coding conventions of Seaside your code will
basically run anywhere <
http://www.seaside.st/community/conventions>.
Slime also contains rules to automatically refactor non-portable code,
for example:
ansiCompatibilityConditionals
^ self
rewrite: #(
" kill abnormalities "
('``@boolean ifNotNilDo: ``@block'
'``@boolean ifNotNil: ``@block')
('``@boolean ifNotNilDo: ``@block1 ifNil: ``@block2'
'``@boolean ifNotNil: ``@block1 ifNil: ``@block2')
('``@boolean ifNil: ``@block1 ifNotNilDo: ``@block2'
'``@boolean ifNil: ``@block1 ifNotNil: ``@block2')
" normalize arguments "
('``@boolean ifNotNil: [ | `@temps | ``@body ]'
'``@boolean ifNotNil: [ :arg | | `@temps | ``@body ]')
('``@boolean ifNotNil: [ | `@temps | ``@body ] ifNil: ``@block '
'``@boolean ifNotNil: [ :arg | | `@temps | ``@body ] ifNil: ``@block')
('``@boolean ifNil: ``@block ifNotNil: [ | `@temps | ``@body ]'
'``@boolean ifNil: ``@block ifNotNil: [ :arg | | `@temps | ``@body ]'))
methods: false
name: 'ANSI Compatibility: Conditionals'
Cheers,
Lukas
On Sun, Feb 22, 2009 at 10:22 AM, Marcus Denker <
[hidden email]> wrote:
--
Lukas Renggli
http://www.lukas-renggli.ch_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project