On Wed, May 3, 2017 at 5:22 AM, Denis Kudriashov <dionisi...@gmail.com>
wrote:

>
> 2017-04-26 11:19 GMT+02:00 Peter Uhnak <i.uh...@gmail.com>:
>
>> Hi,
>>
>> I'm under the impression that Epicea is supposed to replace RB
>> refactorings at some point.
>>
>
> I think it was never the goal and not supposed to happen. Epicea is only
> changes logger. Maybe Martin will correct me.
>

Yes, Epicea uses RB refactorings and doesn't pretend replacing it.


>
>
>>
>> If that is true, is it currently possible to build refactorings by hand?
>>
>> For example in RB I often do:
>>
>> ```
>> model := RBNamespace new.
>>
>> model defineClass: ('<1s> subclass: #<2s><n><t>instanceVariableNames:
>> <3p><n><t>classVariableNames: ''''<n><t>poolDictionaries:
>> ''''<n><t>category: <4p>' expandMacrosWith: 'Object' with: 'MySomething'
>> with: 'var1 var2' with: 'MyPackage').
>> cls := model classNamed: #MySomething.
>> cls compile: 'var1
>>         ^ var1' classified: 'accessing'.
>>
>> (ChangesBrowser changes: model changes changes) open
>> ```
>>
>> or
>>
>> (removing a method from a class)
>> ```
>> model := RBNamespace new.
>> model removeMethod: #testTrimRight from: StringTest.
>> (ChangesBrowser changes: model changes changes) open
>>
>
> I use directly RBRefactoring subclasses:
>
> ref := RBRemoveMethodRefactoring removeMethods: #(testTrimRight) from:
> StringTest.
> ref execute."perform complete changes without preview"
> ref primitiveExecute. "for preview"
> (ChangesBrowser changes: {ref}) open.
>
>
>
>
>

Reply via email to