add value holder with change notification getter generator
remove old access method generator - will be replaced with something else
--- a/CustomAccessMethodsCodeGenerator.st Mon Jun 30 19:21:53 2014 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,291 +0,0 @@
-"{ Package: 'jn:refactoring_custom' }"
-
-CustomCodeGenerator subclass:#CustomAccessMethodsCodeGenerator
- instanceVariableNames:''
- classVariableNames:''
- poolDictionaries:''
- category:'Interface-Refactoring-Custom'
-!
-
-
-!CustomAccessMethodsCodeGenerator class methodsFor:'accessing-presentation'!
-
-description
- "Returns more detailed description of the receiver"
-
- ^ 'Generates three bogus methods - foo, bar and baz'
-
- "Modified: / 26-01-2014 / 21:46:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-label
- "Returns show label describing the receiver. This label
- is used in UI as menu item/tree item label."
-
- ^ 'foo, bar, baz...'
-
- "Modified: / 26-01-2014 / 21:45:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-! !
-
-!CustomAccessMethodsCodeGenerator class methodsFor:'queries'!
-
-availableInContext: aCustomContext
- "Returns true if the generator/refactoring is available in given
- context, false otherwise.
-
- Called by the UI to figure out what generators / refactorings
- are available at given point. See class CustomContext for details."
-
- ^ aCustomContext selectedClasses notEmptyOrNil
-
- "Created: / 26-01-2014 / 21:41:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 26-01-2014 / 23:39:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 04-03-2014 / 22:34:19 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
-!
-
-availableInPerspective:aCustomPerspective
- "Returns true if the generator/refactoring is available in given
- perspective, false otherwise.
-
- Called by the UI to figure out what generators / refactorings
- to show"
-
- ^ aCustomPerspective isClassPerspective
-
- "Created: / 26-01-2014 / 21:40:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 04-03-2014 / 21:41:34 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
-! !
-
-!CustomAccessMethodsCodeGenerator methodsFor:'code generation-individual methods'!
-
-createAccessMethodsFor:aCollectionOfVarNames in:aClass withChange:withChange asValueHolder:asValueHolder readersOnly:readersOnly writersOnly:writersOnly lazyInitialization:lazyInitialization
- "workhorse for creating access methods for instvars."
-
- |classesClassVars generateCommentsForSetters generateCommentsForGetters|
-
- self startCollectChanges.
-
- generateCommentsForSetters := userPreferences generateCommentsForSetters.
- generateCommentsForGetters := userPreferences generateCommentsForGetters.
-
- classesClassVars := aClass theNonMetaclass allClassVarNames.
-
- aCollectionOfVarNames do:[:name |
- |source varType methodName defaultMethodName argName|
-
- varType := (classesClassVars includes:name)
- ifTrue:['static']
- ifFalse:[
- (aClass isMeta ifTrue:['classInstVar'] ifFalse:['instance'])].
-
- methodName := name.
- name isUppercaseFirst ifTrue:[
- (name conform:[:ch | ch isLetter not or:[ch isUppercase]]) ifFalse:[ "/ allow all-uppercase for class-vars
- methodName := methodName asLowercaseFirst.
- ]
- ].
- argName := 'something'.
-
- "/ the GETTER
- writersOnly ifFalse:[
- lazyInitialization ifTrue:[
- defaultMethodName := 'default' , name asUppercaseFirst.
- ].
-
- "check, if method is not already present"
- (aClass includesSelector:(methodName asSymbol)) ifFalse:[
- asValueHolder ifTrue:[
- source := methodName , '\'.
- generateComments ifTrue:[
- source := source , ' "return/create the ''%2'' value holder (automatically generated)"\\'.
- ].
- source := source , ' %2 isNil ifTrue:[\'.
- lazyInitialization ifTrue:[
- source := source
- , ' %2 := self class %3 asValue.\'.
- ] ifFalse:[
- source := source
- , ' %2 := ValueHolder new.\'.
- ].
-
- withChange ifTrue:[
- source := source
- , ' %2 addDependent:self.\'.
- ].
- source := source
- , ' ].\'
- , ' ^ %2'.
- ] ifFalse:[
- source := methodName , '\'.
- lazyInitialization ifTrue:[
- generateCommentsForGetters ifTrue:[
- source := source , ' "return the %1 instance variable ''%2'' with lazy instance creation (automatically generated)"\\'.
- ].
- source := source
- , ' %2 isNil ifTrue:[\'
- , ' %2 := self class %3.\'
- , ' ].\'
- , ' ^ %2'.
- ] ifFalse:[
- generateCommentsForGetters ifTrue:[
- source := source , ' "return the %1 instance variable ''%2'' (automatically generated)"\\'.
- ].
- source := source
- , ' ^ %2'.
- ].
- ].
- source := (source bindWith:varType with:name with:defaultMethodName) withCRs.
- self compile:source forClass:aClass inCategory:(asValueHolder ifTrue:[#aspects] ifFalse:[#accessing]).
- ] ifTrue:[
- Transcript showCR:'method ''', methodName , ''' already present'
- ].
-
- "/ default for lazy on class side
- lazyInitialization ifTrue:[
- (aClass theMetaclass includesSelector:(defaultMethodName asSymbol)) ifFalse:[
- source := defaultMethodName , '\'.
- generateComments ifTrue:[
- source := source , ' "default value for the ''%2'' instance variable (automatically generated)"\\'.
- ].
- source := source
- , ' self shouldImplement.\'
- , ' ^ nil.'.
- source := (source bindWith:varType with:name) withCRs.
- self compile:source forClass:aClass theMetaclass inCategory:#defaults.
- ].
- ].
- ].
-
- "/ the SETTER
- readersOnly ifFalse:[
- (aClass includesSelector:((methodName , ':') asSymbol)) ifFalse:[
- ((methodName size > 2) and:[ (methodName startsWith:'is') and:[ (methodName at:3) isUppercase ]])
- ifTrue:[
- argName := 'aBoolean'
- ].
- asValueHolder ifTrue:[
- source := methodName , ':%3\'. "/ argName
- generateComments ifTrue:[
- source := source , ' "set the ''%2'' value holder' , ' (automatically generated)"\\'.
- ].
- withChange ifTrue:[
- source := source
- , ' |oldValue newValue|\\'
- , ' %2 notNil ifTrue:[\'
- , ' oldValue := %2 value.\'
- , ' %2 removeDependent:self.\'
- , ' ].\'
- , ' %2 := %3.\' "/ argName
- , ' %2 notNil ifTrue:[\'
- , ' %2 addDependent:self.\'
- , ' ].\'
- , ' newValue := %2 value.\'
- , ' oldValue ~~ newValue ifTrue:[\'
- , ' self update:#value with:newValue from:%2.\'
- , ' ].\'
- ] ifFalse:[
- source := source
- , ' %2 := %3.'. "/ argName
- ].
- ] ifFalse:[
- source := methodName , ':%3\'. "/ argName
- withChange ifTrue:[
- generateComments ifTrue:[
- source := source , ' "set the value of the %1 variable ''%2'''.
- source := source , ' and send a change notification (automatically generated)"\\'.
- ].
- source := source
- , ' (%2 ~~ %3) ifTrue:[\'
- , ' %2 := %3.\' "/ argName
- , ' self changed:#%2.\'
- , ' ].\'.
- ] ifFalse:[
- generateCommentsForSetters ifTrue:[
- source := source , ' "set the value of the %1 variable ''%2'''.
- source := source , ' (automatically generated)"\\'.
- ].
- source := source
- , ' %2 := %3.'. "/ argName
- ].
- ].
- source := (source bindWith:varType with:name with:argName) withCRs.
- self
- compile:source
- forClass:aClass
- inCategory:(asValueHolder ifTrue:[#aspects] ifFalse:[#accessing]).
- ] ifTrue:[
- Transcript showCR:'method ''', methodName , ':'' already present'
- ].
- ].
- ].
-
- self executeCollectedChangesNamed:('Add Accessors').
-
- "Created: / 12-03-2014 / 23:35:18 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
-!
-
-createSetterFor:aVarName in:aClass
- self
- createAccessMethodsFor:{ aVarName} in:aClass
- withChange:false asValueHolder:false readersOnly:false writersOnly:true
- lazyInitialization:false
-
- "Created: / 14-03-2014 / 23:12:46 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
-!
-
-setterMethodFor:aVarName
- |source methodName argName comment|
-
- comment := ''.
- userPreferences generateCommentsForSetters ifTrue:[
- comment := ' "set the value of the %1 variable ''%2'' (automatically generated)"\\'.
- ].
-
- methodName := aVarName.
- argName := 'something'.
- source := methodName , ':%3\'. "/ argName
- source := source , ' %2 := %3.'.
-
- ^ source
-
- "Created: / 15-03-2014 / 22:13:00 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
-! !
-
-!CustomAccessMethodsCodeGenerator methodsFor:'executing'!
-
-executeInContext:aCustomContext
- "Generates the code or perform the refactoring. This method
- is guaranteed to be called only if #availableInContext: returns
- true.
-
- Called by the UI when user want to perform the task"
-
- | classes |
-
- classes := aCustomContext selectedClasses.
- classes do:[:class |
- (class canUnderstand: #foo) ifFalse:[
- self compile: 'foo
- ^ self bar' forClass: class inCategory: 'foo - bar - baz'
- ].
- (class canUnderstand: #bar) ifFalse:[
- self compile: 'bar
- ^ self baz' forClass: class inCategory: 'foo - bar - baz'
- ].
- (class canUnderstand: #baz) ifFalse:[
- self compile: 'baz
- ^ 42' forClass: class inCategory: 'foo - bar - baz'
- ].
-
- ].
-
- "Modified: / 26-01-2014 / 23:41:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-! !
-
-!CustomAccessMethodsCodeGenerator class methodsFor:'documentation'!
-
-version_HG
-
- ^ '$Changeset: <not expanded> $'
-! !
-
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/CustomAccessMethodsCodeGeneratorOld.st Tue Jul 01 14:11:29 2014 +0200
@@ -0,0 +1,291 @@
+"{ Package: 'jn:refactoring_custom' }"
+
+CustomCodeGenerator subclass:#CustomAccessMethodsCodeGeneratorOld
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Interface-Refactoring-Custom'
+!
+
+
+!CustomAccessMethodsCodeGeneratorOld class methodsFor:'accessing-presentation'!
+
+description
+ "Returns more detailed description of the receiver"
+
+ ^ 'Generates three bogus methods - foo, bar and baz'
+
+ "Modified: / 26-01-2014 / 21:46:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+label
+ "Returns show label describing the receiver. This label
+ is used in UI as menu item/tree item label."
+
+ ^ 'foo, bar, baz...'
+
+ "Modified: / 26-01-2014 / 21:45:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!CustomAccessMethodsCodeGeneratorOld class methodsFor:'queries'!
+
+availableInContext: aCustomContext
+ "Returns true if the generator/refactoring is available in given
+ context, false otherwise.
+
+ Called by the UI to figure out what generators / refactorings
+ are available at given point. See class CustomContext for details."
+
+ ^ aCustomContext selectedClasses notEmptyOrNil
+
+ "Created: / 26-01-2014 / 21:41:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 26-01-2014 / 23:39:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 04-03-2014 / 22:34:19 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+availableInPerspective:aCustomPerspective
+ "Returns true if the generator/refactoring is available in given
+ perspective, false otherwise.
+
+ Called by the UI to figure out what generators / refactorings
+ to show"
+
+ ^ aCustomPerspective isClassPerspective
+
+ "Created: / 26-01-2014 / 21:40:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 04-03-2014 / 21:41:34 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+! !
+
+!CustomAccessMethodsCodeGeneratorOld methodsFor:'code generation-individual methods'!
+
+createAccessMethodsFor:aCollectionOfVarNames in:aClass withChange:withChange asValueHolder:asValueHolder readersOnly:readersOnly writersOnly:writersOnly lazyInitialization:lazyInitialization
+ "workhorse for creating access methods for instvars."
+
+ |classesClassVars generateCommentsForSetters generateCommentsForGetters|
+
+ self startCollectChanges.
+
+ generateCommentsForSetters := userPreferences generateCommentsForSetters.
+ generateCommentsForGetters := userPreferences generateCommentsForGetters.
+
+ classesClassVars := aClass theNonMetaclass allClassVarNames.
+
+ aCollectionOfVarNames do:[:name |
+ |source varType methodName defaultMethodName argName|
+
+ varType := (classesClassVars includes:name)
+ ifTrue:['static']
+ ifFalse:[
+ (aClass isMeta ifTrue:['classInstVar'] ifFalse:['instance'])].
+
+ methodName := name.
+ name isUppercaseFirst ifTrue:[
+ (name conform:[:ch | ch isLetter not or:[ch isUppercase]]) ifFalse:[ "/ allow all-uppercase for class-vars
+ methodName := methodName asLowercaseFirst.
+ ]
+ ].
+ argName := 'something'.
+
+ "/ the GETTER
+ writersOnly ifFalse:[
+ lazyInitialization ifTrue:[
+ defaultMethodName := 'default' , name asUppercaseFirst.
+ ].
+
+ "check, if method is not already present"
+ (aClass includesSelector:(methodName asSymbol)) ifFalse:[
+ asValueHolder ifTrue:[
+ source := methodName , '\'.
+ generateComments ifTrue:[
+ source := source , ' "return/create the ''%2'' value holder (automatically generated)"\\'.
+ ].
+ source := source , ' %2 isNil ifTrue:[\'.
+ lazyInitialization ifTrue:[
+ source := source
+ , ' %2 := self class %3 asValue.\'.
+ ] ifFalse:[
+ source := source
+ , ' %2 := ValueHolder new.\'.
+ ].
+
+ withChange ifTrue:[
+ source := source
+ , ' %2 addDependent:self.\'.
+ ].
+ source := source
+ , ' ].\'
+ , ' ^ %2'.
+ ] ifFalse:[
+ source := methodName , '\'.
+ lazyInitialization ifTrue:[
+ generateCommentsForGetters ifTrue:[
+ source := source , ' "return the %1 instance variable ''%2'' with lazy instance creation (automatically generated)"\\'.
+ ].
+ source := source
+ , ' %2 isNil ifTrue:[\'
+ , ' %2 := self class %3.\'
+ , ' ].\'
+ , ' ^ %2'.
+ ] ifFalse:[
+ generateCommentsForGetters ifTrue:[
+ source := source , ' "return the %1 instance variable ''%2'' (automatically generated)"\\'.
+ ].
+ source := source
+ , ' ^ %2'.
+ ].
+ ].
+ source := (source bindWith:varType with:name with:defaultMethodName) withCRs.
+ self compile:source forClass:aClass inCategory:(asValueHolder ifTrue:[#aspects] ifFalse:[#accessing]).
+ ] ifTrue:[
+ Transcript showCR:'method ''', methodName , ''' already present'
+ ].
+
+ "/ default for lazy on class side
+ lazyInitialization ifTrue:[
+ (aClass theMetaclass includesSelector:(defaultMethodName asSymbol)) ifFalse:[
+ source := defaultMethodName , '\'.
+ generateComments ifTrue:[
+ source := source , ' "default value for the ''%2'' instance variable (automatically generated)"\\'.
+ ].
+ source := source
+ , ' self shouldImplement.\'
+ , ' ^ nil.'.
+ source := (source bindWith:varType with:name) withCRs.
+ self compile:source forClass:aClass theMetaclass inCategory:#defaults.
+ ].
+ ].
+ ].
+
+ "/ the SETTER
+ readersOnly ifFalse:[
+ (aClass includesSelector:((methodName , ':') asSymbol)) ifFalse:[
+ ((methodName size > 2) and:[ (methodName startsWith:'is') and:[ (methodName at:3) isUppercase ]])
+ ifTrue:[
+ argName := 'aBoolean'
+ ].
+ asValueHolder ifTrue:[
+ source := methodName , ':%3\'. "/ argName
+ generateComments ifTrue:[
+ source := source , ' "set the ''%2'' value holder' , ' (automatically generated)"\\'.
+ ].
+ withChange ifTrue:[
+ source := source
+ , ' |oldValue newValue|\\'
+ , ' %2 notNil ifTrue:[\'
+ , ' oldValue := %2 value.\'
+ , ' %2 removeDependent:self.\'
+ , ' ].\'
+ , ' %2 := %3.\' "/ argName
+ , ' %2 notNil ifTrue:[\'
+ , ' %2 addDependent:self.\'
+ , ' ].\'
+ , ' newValue := %2 value.\'
+ , ' oldValue ~~ newValue ifTrue:[\'
+ , ' self update:#value with:newValue from:%2.\'
+ , ' ].\'
+ ] ifFalse:[
+ source := source
+ , ' %2 := %3.'. "/ argName
+ ].
+ ] ifFalse:[
+ source := methodName , ':%3\'. "/ argName
+ withChange ifTrue:[
+ generateComments ifTrue:[
+ source := source , ' "set the value of the %1 variable ''%2'''.
+ source := source , ' and send a change notification (automatically generated)"\\'.
+ ].
+ source := source
+ , ' (%2 ~~ %3) ifTrue:[\'
+ , ' %2 := %3.\' "/ argName
+ , ' self changed:#%2.\'
+ , ' ].\'.
+ ] ifFalse:[
+ generateCommentsForSetters ifTrue:[
+ source := source , ' "set the value of the %1 variable ''%2'''.
+ source := source , ' (automatically generated)"\\'.
+ ].
+ source := source
+ , ' %2 := %3.'. "/ argName
+ ].
+ ].
+ source := (source bindWith:varType with:name with:argName) withCRs.
+ self
+ compile:source
+ forClass:aClass
+ inCategory:(asValueHolder ifTrue:[#aspects] ifFalse:[#accessing]).
+ ] ifTrue:[
+ Transcript showCR:'method ''', methodName , ':'' already present'
+ ].
+ ].
+ ].
+
+ self executeCollectedChangesNamed:('Add Accessors').
+
+ "Created: / 12-03-2014 / 23:35:18 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+createSetterFor:aVarName in:aClass
+ self
+ createAccessMethodsFor:{ aVarName} in:aClass
+ withChange:false asValueHolder:false readersOnly:false writersOnly:true
+ lazyInitialization:false
+
+ "Created: / 14-03-2014 / 23:12:46 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+setterMethodFor:aVarName
+ |source methodName argName comment|
+
+ comment := ''.
+ userPreferences generateCommentsForSetters ifTrue:[
+ comment := ' "set the value of the %1 variable ''%2'' (automatically generated)"\\'.
+ ].
+
+ methodName := aVarName.
+ argName := 'something'.
+ source := methodName , ':%3\'. "/ argName
+ source := source , ' %2 := %3.'.
+
+ ^ source
+
+ "Created: / 15-03-2014 / 22:13:00 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+! !
+
+!CustomAccessMethodsCodeGeneratorOld methodsFor:'executing'!
+
+executeInContext:aCustomContext
+ "Generates the code or perform the refactoring. This method
+ is guaranteed to be called only if #availableInContext: returns
+ true.
+
+ Called by the UI when user want to perform the task"
+
+ | classes |
+
+ classes := aCustomContext selectedClasses.
+ classes do:[:class |
+ (class canUnderstand: #foo) ifFalse:[
+ self compile: 'foo
+ ^ self bar' forClass: class inCategory: 'foo - bar - baz'
+ ].
+ (class canUnderstand: #bar) ifFalse:[
+ self compile: 'bar
+ ^ self baz' forClass: class inCategory: 'foo - bar - baz'
+ ].
+ (class canUnderstand: #baz) ifFalse:[
+ self compile: 'baz
+ ^ 42' forClass: class inCategory: 'foo - bar - baz'
+ ].
+
+ ].
+
+ "Modified: / 26-01-2014 / 23:41:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!CustomAccessMethodsCodeGeneratorOld class methodsFor:'documentation'!
+
+version_HG
+
+ ^ '$Changeset: <not expanded> $'
+! !
+
--- a/CustomValueHolderGetterMethodsCodeGenerator.st Mon Jun 30 19:21:53 2014 +0200
+++ b/CustomValueHolderGetterMethodsCodeGenerator.st Tue Jul 01 14:11:29 2014 +0200
@@ -14,6 +14,7 @@
^ 'Getter methods with ValueHolder for selected instance variables'
"Created: / 19-05-2014 / 20:56:42 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+ "Modified: / 30-06-2014 / 19:44:29 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
!
label
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator.st Tue Jul 01 14:11:29 2014 +0200
@@ -0,0 +1,69 @@
+"{ Package: 'jn:refactoring_custom' }"
+
+CustomGetterMethodsCodeGenerator subclass:#CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Interface-Refactoring-Custom'
+!
+
+!CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator class methodsFor:'accessing-presentation'!
+
+description
+
+ ^ 'Getter methods with ValueHolder and change notification for selected instance variables'
+
+ "Created: / 30-06-2014 / 19:31:27 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+label
+
+ ^ 'Getter Method(s) for ValueHolder with Change Notification'
+
+ "Created: / 30-06-2014 / 19:36:20 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+! !
+
+!CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator methodsFor:'accessing'!
+
+protocol
+ "Returns protocol name in which will belong getter method"
+
+ ^ 'aspects'
+
+ "Created: / 30-06-2014 / 19:48:14 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+! !
+
+!CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator methodsFor:'code generation'!
+
+sourceForClass: aClass variableName: aName
+ "Returns getter method source code with ValueHolder and change notification for given class and variable name"
+
+ | methodName comment methodBuilder |
+
+ methodName := self methodNameFor: aName.
+ comment := ''.
+
+ userPreferences generateCommentsForGetters ifTrue:[
+ comment := '"return/create the ''%1'' value holder with change notification (automatically generated)"'.
+ comment := comment bindWith: aName.
+ ].
+
+ methodBuilder := builder methodBuilder.
+ methodBuilder
+ source: '`@methodName
+ `"comment
+
+ `variableName isNil ifTrue:[
+ `variableName := ValueHolder new.
+ `variableName addDependent: self.
+ ].
+ ^ `variableName';
+ replace: '`@methodName' with: methodName asSymbol;
+ replace: '`variableName' with: aName asString;
+ replace: '`"comment' with: comment.
+
+ ^ methodBuilder buildedSource
+
+ "Created: / 30-06-2014 / 19:18:35 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/CustomValueHolderWithChangeNotificationGetterMethodsCodeGeneratorTests.st Tue Jul 01 14:11:29 2014 +0200
@@ -0,0 +1,55 @@
+"{ Package: 'jn:refactoring_custom' }"
+
+CustomCodeGeneratorTestCase subclass:#CustomValueHolderWithChangeNotificationGetterMethodsCodeGeneratorTests
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Interface-Refactoring-Custom-Tests'
+!
+
+!CustomValueHolderWithChangeNotificationGetterMethodsCodeGeneratorTests methodsFor:'accessing'!
+
+generator
+ ^ CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator new
+! !
+
+!CustomValueHolderWithChangeNotificationGetterMethodsCodeGeneratorTests methodsFor:'tests'!
+
+test_value_holder_getter_with_change_notification_method_generated_with_comments
+ | expectedSource |
+
+ userPreferences generateCommentsForGetters: true.
+
+ expectedSource := 'instanceVariable
+ "return/create the ''instanceVariable'' value holder with change notification (automatically generated)"
+
+ instanceVariable isNil ifTrue:[
+ instanceVariable := ValueHolder new.
+ instanceVariable addDependent:self.
+ ].
+ ^ instanceVariable'.
+
+ self executeGeneratorInContext: #classWithInstanceVariable.
+ self assertMethodSource: expectedSource atSelector: #instanceVariable
+
+ "Created: / 30-06-2014 / 19:54:41 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+test_value_holder_getter_with_change_notification_method_generated_without_comments
+ | expectedSource |
+
+ userPreferences generateCommentsForGetters: false.
+
+ expectedSource := 'instanceVariable
+ instanceVariable isNil ifTrue:[
+ instanceVariable := ValueHolder new.
+ instanceVariable addDependent:self.
+ ].
+ ^ instanceVariable'.
+
+ self executeGeneratorInContext: #classWithInstanceVariable.
+ self assertMethodSource: expectedSource atSelector: #instanceVariable
+
+ "Created: / 30-06-2014 / 19:56:11 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+! !
+
--- a/Make.proto Mon Jun 30 19:21:53 2014 +0200
+++ b/Make.proto Tue Jul 01 14:11:29 2014 +0200
@@ -152,7 +152,7 @@
$(OUTDIR)CustomSilentDialog.$(O) CustomSilentDialog.$(H): CustomSilentDialog.st $(INCLUDE_TOP)/jn/refactoring_custom/CustomDialog.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)CustomSubContext.$(O) CustomSubContext.$(H): CustomSubContext.st $(INCLUDE_TOP)/jn/refactoring_custom/CustomContext.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)CustomUserDialog.$(O) CustomUserDialog.$(H): CustomUserDialog.st $(INCLUDE_TOP)/jn/refactoring_custom/CustomDialog.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)CustomAccessMethodsCodeGenerator.$(O) CustomAccessMethodsCodeGenerator.$(H): CustomAccessMethodsCodeGenerator.st $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGenerator.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libtool/CodeGeneratorTool.$(H) $(STCHDR)
+$(OUTDIR)CustomAccessMethodsCodeGeneratorOld.$(O) CustomAccessMethodsCodeGeneratorOld.$(H): CustomAccessMethodsCodeGeneratorOld.st $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGenerator.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libtool/CodeGeneratorTool.$(H) $(STCHDR)
$(OUTDIR)CustomCodeGeneratorClassGenerator.$(O) CustomCodeGeneratorClassGenerator.$(H): CustomCodeGeneratorClassGenerator.st $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGenerator.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libtool/CodeGeneratorTool.$(H) $(STCHDR)
$(OUTDIR)CustomFooBarBazCodeGenerator.$(O) CustomFooBarBazCodeGenerator.$(H): CustomFooBarBazCodeGenerator.st $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGenerator.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libtool/CodeGeneratorTool.$(H) $(STCHDR)
$(OUTDIR)CustomGetterMethodsCodeGenerator.$(O) CustomGetterMethodsCodeGenerator.$(H): CustomGetterMethodsCodeGenerator.st $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGenerator.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libtool/CodeGeneratorTool.$(H) $(STCHDR)
@@ -166,6 +166,7 @@
$(OUTDIR)CustomSimpleGetterMethodsCodeGenerator.$(O) CustomSimpleGetterMethodsCodeGenerator.$(H): CustomSimpleGetterMethodsCodeGenerator.st $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGenerator.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomGetterMethodsCodeGenerator.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libtool/CodeGeneratorTool.$(H) $(STCHDR)
$(OUTDIR)CustomSimpleTestCaseCodeGenerator.$(O) CustomSimpleTestCaseCodeGenerator.$(H): CustomSimpleTestCaseCodeGenerator.st $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGenerator.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomTestCaseCodeGenerator.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libtool/CodeGeneratorTool.$(H) $(STCHDR)
$(OUTDIR)CustomValueHolderGetterMethodsCodeGenerator.$(O) CustomValueHolderGetterMethodsCodeGenerator.$(H): CustomValueHolderGetterMethodsCodeGenerator.st $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGenerator.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomGetterMethodsCodeGenerator.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libtool/CodeGeneratorTool.$(H) $(STCHDR)
+$(OUTDIR)CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator.$(O) CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator.$(H): CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator.st $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGenerator.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomGetterMethodsCodeGenerator.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libtool/CodeGeneratorTool.$(H) $(STCHDR)
$(OUTDIR)CustomVisitorCodeGeneratorAcceptVisitor.$(O) CustomVisitorCodeGeneratorAcceptVisitor.$(H): CustomVisitorCodeGeneratorAcceptVisitor.st $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGenerator.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomVisitorCodeGenerator.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libtool/CodeGeneratorTool.$(H) $(STCHDR)
$(OUTDIR)extensions.$(O): extensions.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libtool/SystemBrowser.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__NewSystemBrowser.$(H) $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(STCHDR)
--- a/Make.spec Mon Jun 30 19:21:53 2014 +0200
+++ b/Make.spec Tue Jul 01 14:11:29 2014 +0200
@@ -70,7 +70,7 @@
CustomSilentDialog \
CustomSubContext \
CustomUserDialog \
- CustomAccessMethodsCodeGenerator \
+ CustomAccessMethodsCodeGeneratorOld \
CustomCodeGeneratorClassGenerator \
CustomFooBarBazCodeGenerator \
CustomGetterMethodsCodeGenerator \
@@ -84,6 +84,7 @@
CustomSimpleGetterMethodsCodeGenerator \
CustomSimpleTestCaseCodeGenerator \
CustomValueHolderGetterMethodsCodeGenerator \
+ CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator \
CustomVisitorCodeGeneratorAcceptVisitor \
@@ -110,7 +111,7 @@
$(OUTDIR_SLASH)CustomSilentDialog.$(O) \
$(OUTDIR_SLASH)CustomSubContext.$(O) \
$(OUTDIR_SLASH)CustomUserDialog.$(O) \
- $(OUTDIR_SLASH)CustomAccessMethodsCodeGenerator.$(O) \
+ $(OUTDIR_SLASH)CustomAccessMethodsCodeGeneratorOld.$(O) \
$(OUTDIR_SLASH)CustomCodeGeneratorClassGenerator.$(O) \
$(OUTDIR_SLASH)CustomFooBarBazCodeGenerator.$(O) \
$(OUTDIR_SLASH)CustomGetterMethodsCodeGenerator.$(O) \
@@ -124,6 +125,7 @@
$(OUTDIR_SLASH)CustomSimpleGetterMethodsCodeGenerator.$(O) \
$(OUTDIR_SLASH)CustomSimpleTestCaseCodeGenerator.$(O) \
$(OUTDIR_SLASH)CustomValueHolderGetterMethodsCodeGenerator.$(O) \
+ $(OUTDIR_SLASH)CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator.$(O) \
$(OUTDIR_SLASH)CustomVisitorCodeGeneratorAcceptVisitor.$(O) \
$(OUTDIR_SLASH)extensions.$(O) \
--- a/abbrev.stc Mon Jun 30 19:21:53 2014 +0200
+++ b/abbrev.stc Tue Jul 01 14:11:29 2014 +0200
@@ -37,7 +37,8 @@
CustomSubContext CustomSubContext jn:refactoring_custom 'Interface-Refactoring-Custom' 0
CustomUserDialog CustomUserDialog jn:refactoring_custom 'Interface-Refactoring-Custom' 0
CustomValueHolderGetterMethodsCodeGeneratorTests CustomValueHolderGetterMethodsCodeGeneratorTests jn:refactoring_custom 'Interface-Refactoring-Custom-Tests' 1
-CustomAccessMethodsCodeGenerator CustomAccessMethodsCodeGenerator jn:refactoring_custom 'Interface-Refactoring-Custom' 0
+CustomValueHolderWithChangeNotificationGetterMethodsCodeGeneratorTests CustomValueHolderWithChangeNotificationGetterMethodsCodeGeneratorTests jn:refactoring_custom 'Interface-Refactoring-Custom-Tests' 1
+CustomAccessMethodsCodeGeneratorOld CustomAccessMethodsCodeGeneratorOld jn:refactoring_custom 'Interface-Refactoring-Custom' 0
CustomCodeGeneratorClassGenerator CustomCodeGeneratorClassGenerator jn:refactoring_custom 'Interface-Refactoring-Custom' 0
CustomFooBarBazCodeGenerator CustomFooBarBazCodeGenerator jn:refactoring_custom 'Interface-Refactoring-Custom' 0
CustomGetterMethodsCodeGenerator CustomGetterMethodsCodeGenerator jn:refactoring_custom 'Interface-Refactoring-Custom' 0
@@ -51,4 +52,5 @@
CustomSimpleGetterMethodsCodeGenerator CustomSimpleGetterMethodsCodeGenerator jn:refactoring_custom 'Interface-Refactoring-Custom' 0
CustomSimpleTestCaseCodeGenerator CustomSimpleTestCaseCodeGenerator jn:refactoring_custom 'Interface-Refactoring-Custom' 0
CustomValueHolderGetterMethodsCodeGenerator CustomValueHolderGetterMethodsCodeGenerator jn:refactoring_custom 'Interface-Refactoring-Custom' 0
+CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator jn:refactoring_custom 'Interface-Refactoring-Custom' 0
CustomVisitorCodeGeneratorAcceptVisitor CustomVisitorCodeGeneratorAcceptVisitor jn:refactoring_custom 'Interface-Refactoring-Custom' 0
--- a/bc.mak Mon Jun 30 19:21:53 2014 +0200
+++ b/bc.mak Tue Jul 01 14:11:29 2014 +0200
@@ -98,7 +98,7 @@
$(OUTDIR)CustomSilentDialog.$(O) CustomSilentDialog.$(H): CustomSilentDialog.st $(INCLUDE_TOP)\jn\refactoring_custom\CustomDialog.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)CustomSubContext.$(O) CustomSubContext.$(H): CustomSubContext.st $(INCLUDE_TOP)\jn\refactoring_custom\CustomContext.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)CustomUserDialog.$(O) CustomUserDialog.$(H): CustomUserDialog.st $(INCLUDE_TOP)\jn\refactoring_custom\CustomDialog.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)CustomAccessMethodsCodeGenerator.$(O) CustomAccessMethodsCodeGenerator.$(H): CustomAccessMethodsCodeGenerator.st $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGenerator.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libtool\CodeGeneratorTool.$(H) $(STCHDR)
+$(OUTDIR)CustomAccessMethodsCodeGeneratorOld.$(O) CustomAccessMethodsCodeGeneratorOld.$(H): CustomAccessMethodsCodeGeneratorOld.st $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGenerator.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libtool\CodeGeneratorTool.$(H) $(STCHDR)
$(OUTDIR)CustomCodeGeneratorClassGenerator.$(O) CustomCodeGeneratorClassGenerator.$(H): CustomCodeGeneratorClassGenerator.st $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGenerator.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libtool\CodeGeneratorTool.$(H) $(STCHDR)
$(OUTDIR)CustomFooBarBazCodeGenerator.$(O) CustomFooBarBazCodeGenerator.$(H): CustomFooBarBazCodeGenerator.st $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGenerator.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libtool\CodeGeneratorTool.$(H) $(STCHDR)
$(OUTDIR)CustomGetterMethodsCodeGenerator.$(O) CustomGetterMethodsCodeGenerator.$(H): CustomGetterMethodsCodeGenerator.st $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGenerator.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libtool\CodeGeneratorTool.$(H) $(STCHDR)
@@ -112,6 +112,7 @@
$(OUTDIR)CustomSimpleGetterMethodsCodeGenerator.$(O) CustomSimpleGetterMethodsCodeGenerator.$(H): CustomSimpleGetterMethodsCodeGenerator.st $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGenerator.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomGetterMethodsCodeGenerator.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libtool\CodeGeneratorTool.$(H) $(STCHDR)
$(OUTDIR)CustomSimpleTestCaseCodeGenerator.$(O) CustomSimpleTestCaseCodeGenerator.$(H): CustomSimpleTestCaseCodeGenerator.st $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGenerator.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomTestCaseCodeGenerator.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libtool\CodeGeneratorTool.$(H) $(STCHDR)
$(OUTDIR)CustomValueHolderGetterMethodsCodeGenerator.$(O) CustomValueHolderGetterMethodsCodeGenerator.$(H): CustomValueHolderGetterMethodsCodeGenerator.st $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGenerator.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomGetterMethodsCodeGenerator.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libtool\CodeGeneratorTool.$(H) $(STCHDR)
+$(OUTDIR)CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator.$(O) CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator.$(H): CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator.st $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGenerator.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomGetterMethodsCodeGenerator.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libtool\CodeGeneratorTool.$(H) $(STCHDR)
$(OUTDIR)CustomVisitorCodeGeneratorAcceptVisitor.$(O) CustomVisitorCodeGeneratorAcceptVisitor.$(H): CustomVisitorCodeGeneratorAcceptVisitor.st $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGenerator.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomVisitorCodeGenerator.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libtool\CodeGeneratorTool.$(H) $(STCHDR)
$(OUTDIR)extensions.$(O): extensions.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libtool\SystemBrowser.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__NewSystemBrowser.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(STCHDR)
--- a/jn_refactoring_custom.st Mon Jun 30 19:21:53 2014 +0200
+++ b/jn_refactoring_custom.st Tue Jul 01 14:11:29 2014 +0200
@@ -106,7 +106,8 @@
CustomSubContext
CustomUserDialog
(CustomValueHolderGetterMethodsCodeGeneratorTests autoload)
- CustomAccessMethodsCodeGenerator
+ (CustomValueHolderWithChangeNotificationGetterMethodsCodeGeneratorTests autoload)
+ CustomAccessMethodsCodeGeneratorOld
CustomCodeGeneratorClassGenerator
CustomFooBarBazCodeGenerator
CustomGetterMethodsCodeGenerator
@@ -120,6 +121,7 @@
CustomSimpleGetterMethodsCodeGenerator
CustomSimpleTestCaseCodeGenerator
CustomValueHolderGetterMethodsCodeGenerator
+ CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator
CustomVisitorCodeGeneratorAcceptVisitor
)
!
--- a/libInit.cc Mon Jun 30 19:21:53 2014 +0200
+++ b/libInit.cc Tue Jul 01 14:11:29 2014 +0200
@@ -47,7 +47,7 @@
_CustomSilentDialog_Init(pass,__pRT__,snd);
_CustomSubContext_Init(pass,__pRT__,snd);
_CustomUserDialog_Init(pass,__pRT__,snd);
-_CustomAccessMethodsCodeGenerator_Init(pass,__pRT__,snd);
+_CustomAccessMethodsCodeGeneratorOld_Init(pass,__pRT__,snd);
_CustomCodeGeneratorClassGenerator_Init(pass,__pRT__,snd);
_CustomFooBarBazCodeGenerator_Init(pass,__pRT__,snd);
_CustomGetterMethodsCodeGenerator_Init(pass,__pRT__,snd);
@@ -61,6 +61,7 @@
_CustomSimpleGetterMethodsCodeGenerator_Init(pass,__pRT__,snd);
_CustomSimpleTestCaseCodeGenerator_Init(pass,__pRT__,snd);
_CustomValueHolderGetterMethodsCodeGenerator_Init(pass,__pRT__,snd);
+_CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator_Init(pass,__pRT__,snd);
_CustomVisitorCodeGeneratorAcceptVisitor_Init(pass,__pRT__,snd);
_jn_137refactoring_137custom_extensions_Init(pass,__pRT__,snd);
--- a/refactoring_custom.rc Mon Jun 30 19:21:53 2014 +0200
+++ b/refactoring_custom.rc Tue Jul 01 14:11:29 2014 +0200
@@ -25,7 +25,7 @@
VALUE "LegalCopyright", "My CopyRight or CopyLeft\0"
VALUE "ProductName", "ProductName\0"
VALUE "ProductVersion", "6.2.4.1259\0"
- VALUE "ProductDate", "Mon, 30 Jun 2014 16:16:36 GMT\0"
+ VALUE "ProductDate", "Tue, 01 Jul 2014 12:03:41 GMT\0"
END
END