thank you Marcus. Now, this does not work because #printCategoryChunk:on:
does not exist anymore:
aClass
printCategoryChunk: aSymbol asString
on: file priorMethod: (aClass compiledMethodAt: selector ifAbsent: [
nil ]
On Tue, Aug 27, 2013 at 7:19 PM, Damien Cassou <[email protected]>wrote:
> Hi,
>
> how can I make the following code compile in Pharo 3.0? This is part of
> Grease (
> https://ci.inria.fr/pharo-contribution/job/Grease/PHARO=30,VERSION=stable,VM=vm/
> ):
>
> GRPharoPlatform>>compile: aString into: aClass classified: aSymbol
> "The trick here is to be as silently a possible so that the package is
> not marked dirty when running WAFileLibrary test.
> This also makes running tests much faster."
> | methodNode compiledMethod selector methodAndNode |
> methodNode := aClass compilerClass new
> compile: aString
> in: aClass
> notifying: nil
> ifFail: [ GRError signal: 'syntax error' ].
> selector := methodNode selector.
> methodAndNode := CompiledMethodWithNode
> generateMethodFromNode: methodNode
> trailer: aClass defaultMethodTrailer.
> compiledMethod := methodAndNode method.
> compiledMethod
> putSource: aString
> fromParseNode: methodAndNode node
> inFile: 2
> withPreamble: [ :file |
> aClass
> printCategoryChunk: aSymbol asString
> on: file priorMethod: (aClass compiledMethodAt: selector
> ifAbsent: [ nil ]).
> file cr ].
> aClass
> addSelectorSilently: selector
> withMethod: compiledMethod.
> self doSilently: [
> aClass organization
> classify: selector
> under: aSymbol ]
>
> --
> Damien Cassou
> http://damiencassou.seasidehosting.st
>
> "Success is the ability to go from one failure to another without losing
> enthusiasm."
> Winston Churchill
>
--
Damien Cassou
http://damiencassou.seasidehosting.st
"Success is the ability to go from one failure to another without losing
enthusiasm."
Winston Churchill