author | Jakub Nesveda <jakubnesveda@seznam.cz> |
Sat, 14 Jun 2014 11:26:54 +0200 | |
changeset 566 | 29c2269d339a |
parent 556 | 107e4a470e73 |
child 575 | 900b47f778b2 |
child 584 | 08600ce8fd2d |
permissions | -rw-r--r-- |
549
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
1 |
"{ Package: 'jn:refactoring_custom' }" |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
2 |
|
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
3 |
CustomGetterMethodsCodeGenerator subclass:#CustomSimpleGetterMethodsCodeGenerator |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
4 |
instanceVariableNames:'' |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
5 |
classVariableNames:'' |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
6 |
poolDictionaries:'' |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
7 |
category:'Interface-Refactoring-Custom' |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
8 |
! |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
9 |
|
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
10 |
!CustomSimpleGetterMethodsCodeGenerator class methodsFor:'accessing-presentation'! |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
11 |
|
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
12 |
description |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
13 |
|
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
14 |
^ 'Getter methods for selected instance variables' |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
15 |
|
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
16 |
"Modified: / 11-05-2014 / 16:37:33 / Jakub Nesveda <nesvejak@fit.cvut.cz>" |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
17 |
! |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
18 |
|
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
19 |
label |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
20 |
|
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
21 |
^ 'Getter Method(s)' |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
22 |
|
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
23 |
"Modified (format): / 11-05-2014 / 16:29:56 / Jakub Nesveda <nesvejak@fit.cvut.cz>" |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
24 |
! ! |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
25 |
|
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
26 |
!CustomSimpleGetterMethodsCodeGenerator methodsFor:'code generation'! |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
27 |
|
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
28 |
sourceForClass: aClass variableName: aName |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
29 |
"Returns simple getter method source code for given class and variable name" |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
30 |
|
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
31 |
| methodName comment methodBuilder | |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
32 |
|
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
33 |
methodName := self methodNameFor: aName. |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
34 |
comment := ''. |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
35 |
|
566
29c2269d339a
replace inst. variable generateCommentsForGetters with userPreferences call - more flexibility
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
556
diff
changeset
|
36 |
userPreferences generateCommentsForGetters ifTrue:[ |
549
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
37 |
| varType | |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
38 |
|
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
39 |
varType := self varTypeOf: aName class: aClass. |
556
107e4a470e73
add CustomCodeGeneratorTestCase as superclass for CodeGenerators TestCases to make testing easier
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
549
diff
changeset
|
40 |
comment := '"return the %1 variable ''%2'' (automatically generated)"'. |
107e4a470e73
add CustomCodeGeneratorTestCase as superclass for CodeGenerators TestCases to make testing easier
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
549
diff
changeset
|
41 |
comment := comment bindWith: varType with: aName. |
549
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
42 |
]. |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
43 |
|
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
44 |
methodBuilder := builder methodBuilder. |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
45 |
methodBuilder |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
46 |
source: ('`@methodName |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
47 |
|
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
48 |
%1 |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
49 |
|
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
50 |
^ `variableName' bindWith: comment); |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
51 |
replace: '`@methodName' with: methodName asSymbol; |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
52 |
replace: '`variableName' with: aName asString. |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
53 |
|
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
54 |
^ methodBuilder buildedSource |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
55 |
|
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
56 |
"Created: / 19-05-2014 / 20:32:34 / Jakub Nesveda <nesvejak@fit.cvut.cz>" |
566
29c2269d339a
replace inst. variable generateCommentsForGetters with userPreferences call - more flexibility
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
556
diff
changeset
|
57 |
"Modified: / 14-06-2014 / 11:24:11 / Jakub Nesveda <nesvejak@fit.cvut.cz>" |
549
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
58 |
! ! |
d34ea0b715b2
add method for retrieving builded source code as string: CustomSourceCodeBuilder >> buildedSource
Jakub Nesveda <jakubnesveda@seznam.cz>
parents:
diff
changeset
|
59 |