It checks that the class does not already exist.
And check the preconditions.
Le 9/2/16 16:41, Peter Uhnák a écrit :
What's the practical difference between calling
```
(RBAddClassRefactoring
addClass: #SomeClass
superclass: #Object
subclasses: {}
category: #Category) primitiveExecute; changes.
```
and
```
Object subclass: #SomeClass
instanceVariableNames: ''
classVariableNames: ''
package: 'Category'
```
likewise for the attribute?
I am doing source code generation in one project and using the latter
approach, so I am curious about the benefit of the first one.
Thanks,
Peter
On Mon, Feb 8, 2016 at 12:22 PM, Tudor Girba <tu...@tudorgirba.com
<mailto:tu...@tudorgirba.com>> wrote:
Great! Thanks a lot.
Doru
> On Feb 8, 2016, at 10:57 AM, Nicolai Hess <nicolaih...@gmail.com
<mailto:nicolaih...@gmail.com>> wrote:
>
> Not the best way maybe:
>
> | model refactoring1 refactoring2 browser |
> model := RBNamespace onEnvironment: RBBrowserEnvironment new.
> refactoring1 := RBAddClassRefactoring
> model: model
> addClass: #SomeClass
> superclass: #Object
> subclasses: {}
> category: #Category.
> refactoring1 primitiveExecute.
> refactoring2 := RBAddInstanceVariableRefactoring
> model: model
> variable: 'x'
> class: #SomeClass.
> refactoring2 primitiveExecute.
> browser := ChangesBrowser new.
> browser changesTree roots: (model changes whatToDisplayIn:
browser).
> browser open
>
>
>
> 2016-02-07 22:24 GMT+01:00 Tudor Girba <tu...@tudorgirba.com
<mailto:tu...@tudorgirba.com>>:
> Hi,
>
> I would like to create a class with instance variables and
methods using RB, and preview the changes with the changes browser.
>
> I know how to create AddClass, AddInstanceVariable, AddMethod
refactorings individually and query for their changes. For example:
>
> (RBAddClassRefactoring
> addClass: #SomeClass
> superclass: #Object
> subclasses: {}
> category: #Category) primitiveExecute; changes.
>
> (RBAddInstanceVariableRefactoring
> variable: 'x'
> class: #SomeClass) primitiveExecute; changes
>
> My question is: is it possible to create them all in one batch
and preview their changes in one single window?
>
> Cheers,
> Doru
>
>
> --
> www.tudorgirba.com <http://www.tudorgirba.com>
> www.feenk.com <http://www.feenk.com>
>
> "If you interrupt the barber while he is cutting your hair,
> you will end up with a messy haircut."
>
>
>
--
www.tudorgirba.com <http://www.tudorgirba.com>
www.feenk.com <http://www.feenk.com>
"No matter how many recipes we know, we still value a chef."