cpt_hook 0.3.1 → 0.3.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a116eb8f86f289b6c636b24a010c8edc436b2c76
4
- data.tar.gz: 4af83342b09d95b6575e58a1e689c3ba2e53c05d
3
+ metadata.gz: 933304b8dba4c20f03259fc264fb1253739a9a00
4
+ data.tar.gz: 616c6f1f4f1d36355287d0327d0c1fa6a89aa914
5
5
  SHA512:
6
- metadata.gz: 7d24905114ba71cb3d92c2d17063d707718483eb80793e8e1d37a64735d49b49399ac9f16d98a4eb2718b2d735547bd3e49bcf36a9b5fd01ad68a90302f19a30
7
- data.tar.gz: 48d88e213daeac28789950882d52eee0e3dfe9f3c5ca3ac0dbe56b7b295519ff6eadd67517a70bfab6106a2b1c779895be3178b84adfe51c447f385bf087bc7e
6
+ metadata.gz: 1112d328e68438cffa675dacbbdad400e8a344b289687570bc27c42b123fc5df53ea2adae855fbc729bc65e53588e6b16381df0cd53afa9e3d3e66e64f3f11b1
7
+ data.tar.gz: '03879576e90f0bedeb8b7df7b8d9b18c5b3fa3932be79d6512cadaf917e130873e0d2d104881ffb27fd8c89145afc965224a2f628fdb544b99abb9f84fdaa727'
data/.idea/cpt_hook.iml CHANGED
@@ -7,5 +7,6 @@
7
7
  <content url="file://$MODULE_DIR$" />
8
8
  <orderEntry type="inheritedJdk" />
9
9
  <orderEntry type="sourceFolder" forTests="false" />
10
+ <orderEntry type="library" scope="PROVIDED" name="pry (v0.10.3, rbenv: 1.9.3-p551) [gem]" level="application" />
10
11
  </component>
11
12
  </module>
data/.idea/workspace.xml CHANGED
@@ -2,21 +2,8 @@
2
2
  <project version="4">
3
3
  <component name="ChangeListManager">
4
4
  <list default="true" id="3693b54d-c907-45c6-9528-2e0394f1319b" name="Default" comment="">
5
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.gitignore" />
6
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.rspec" />
7
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.travis.yml" />
8
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/CODE_OF_CONDUCT.md" />
9
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/Gemfile" />
10
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/LICENSE.txt" />
11
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/README.md" />
12
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/Rakefile" />
13
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/bin/console" />
14
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/bin/setup" />
15
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/cpt_hook.gemspec" />
16
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/lib/cpt_hook.rb" />
17
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/lib/cpt_hook/version.rb" />
18
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/spec/cpt_hook_spec.rb" />
19
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/spec/spec_helper.rb" />
5
+ <change beforePath="$PROJECT_DIR$/cpt_hook.gemspec" afterPath="$PROJECT_DIR$/cpt_hook.gemspec" />
6
+ <change beforePath="$PROJECT_DIR$/lib/cpt_hook/version.rb" afterPath="$PROJECT_DIR$/lib/cpt_hook/version.rb" />
20
7
  </list>
21
8
  <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
22
9
  <option name="TRACKING_ENABLED" value="true" />
@@ -25,19 +12,134 @@
25
12
  <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
26
13
  <option name="LAST_RESOLUTION" value="IGNORE" />
27
14
  </component>
15
+ <component name="FileEditorManager">
16
+ <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
17
+ <file leaf-file-name="console" pinned="false" current-in-tab="false">
18
+ <entry file="file://$PROJECT_DIR$/bin/console">
19
+ <provider selected="true" editor-type-id="text-editor">
20
+ <state relative-caret-position="310">
21
+ <caret line="48" column="3" lean-forward="false" selection-start-line="48" selection-start-column="3" selection-end-line="48" selection-end-column="3" />
22
+ <folding />
23
+ </state>
24
+ </provider>
25
+ </entry>
26
+ </file>
27
+ <file leaf-file-name="cpt_hook_spec.rb" pinned="false" current-in-tab="false">
28
+ <entry file="file://$PROJECT_DIR$/spec/cpt_hook_spec.rb">
29
+ <provider selected="true" editor-type-id="text-editor">
30
+ <state relative-caret-position="150">
31
+ <caret line="6" column="48" lean-forward="false" selection-start-line="6" selection-start-column="48" selection-end-line="6" selection-end-column="48" />
32
+ <folding />
33
+ </state>
34
+ </provider>
35
+ </entry>
36
+ </file>
37
+ <file leaf-file-name="hookable_spec.rb" pinned="false" current-in-tab="false">
38
+ <entry file="file://$PROJECT_DIR$/spec/hookable_spec.rb">
39
+ <provider selected="true" editor-type-id="text-editor">
40
+ <state relative-caret-position="247">
41
+ <caret line="162" column="43" lean-forward="false" selection-start-line="162" selection-start-column="43" selection-end-line="162" selection-end-column="43" />
42
+ <folding />
43
+ </state>
44
+ </provider>
45
+ </entry>
46
+ </file>
47
+ <file leaf-file-name="version.rb" pinned="false" current-in-tab="false">
48
+ <entry file="file://$PROJECT_DIR$/lib/cpt_hook/version.rb">
49
+ <provider selected="true" editor-type-id="text-editor">
50
+ <state relative-caret-position="25">
51
+ <caret line="1" column="18" lean-forward="false" selection-start-line="1" selection-start-column="18" selection-end-line="1" selection-end-column="18" />
52
+ <folding />
53
+ </state>
54
+ </provider>
55
+ </entry>
56
+ </file>
57
+ <file leaf-file-name="cpt_hook.gemspec" pinned="false" current-in-tab="true">
58
+ <entry file="file://$PROJECT_DIR$/cpt_hook.gemspec">
59
+ <provider selected="true" editor-type-id="text-editor">
60
+ <state relative-caret-position="544">
61
+ <caret line="28" column="53" lean-forward="false" selection-start-line="28" selection-start-column="53" selection-end-line="28" selection-end-column="53" />
62
+ <folding />
63
+ </state>
64
+ </provider>
65
+ </entry>
66
+ </file>
67
+ <file leaf-file-name="hook_definition.rb" pinned="false" current-in-tab="false">
68
+ <entry file="file://$PROJECT_DIR$/lib/cpt_hook/dsl/hook_definition.rb">
69
+ <provider selected="true" editor-type-id="text-editor">
70
+ <state relative-caret-position="1114">
71
+ <caret line="45" column="25" lean-forward="false" selection-start-line="45" selection-start-column="25" selection-end-line="45" selection-end-column="25" />
72
+ <folding />
73
+ </state>
74
+ </provider>
75
+ </entry>
76
+ </file>
77
+ <file leaf-file-name="hook_definitions.rb" pinned="false" current-in-tab="false">
78
+ <entry file="file://$PROJECT_DIR$/lib/cpt_hook/dsl/hook_definitions.rb">
79
+ <provider selected="true" editor-type-id="text-editor">
80
+ <state relative-caret-position="518">
81
+ <caret line="26" column="12" lean-forward="false" selection-start-line="26" selection-start-column="12" selection-end-line="26" selection-end-column="12" />
82
+ <folding />
83
+ </state>
84
+ </provider>
85
+ </entry>
86
+ </file>
87
+ <file leaf-file-name="method_call.rb" pinned="false" current-in-tab="false">
88
+ <entry file="file://$PROJECT_DIR$/lib/cpt_hook/dsl/method_call.rb">
89
+ <provider selected="true" editor-type-id="text-editor">
90
+ <state relative-caret-position="695">
91
+ <caret line="32" column="0" lean-forward="false" selection-start-line="32" selection-start-column="0" selection-end-line="32" selection-end-column="0" />
92
+ <folding />
93
+ </state>
94
+ </provider>
95
+ </entry>
96
+ </file>
97
+ <file leaf-file-name="hookable.rb" pinned="false" current-in-tab="false">
98
+ <entry file="file://$PROJECT_DIR$/lib/cpt_hook/hookable.rb">
99
+ <provider selected="true" editor-type-id="text-editor">
100
+ <state relative-caret-position="200">
101
+ <caret line="8" column="57" lean-forward="false" selection-start-line="8" selection-start-column="38" selection-end-line="8" selection-end-column="57" />
102
+ <folding />
103
+ </state>
104
+ </provider>
105
+ </entry>
106
+ </file>
107
+ </leaf>
108
+ </component>
109
+ <component name="FindInProjectRecents">
110
+ <findStrings>
111
+ <find>exter</find>
112
+ </findStrings>
113
+ </component>
28
114
  <component name="Git.Settings">
29
115
  <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
30
116
  </component>
117
+ <component name="IdeDocumentHistory">
118
+ <option name="CHANGED_PATHS">
119
+ <list>
120
+ <option value="$PROJECT_DIR$/bin/console" />
121
+ <option value="$PROJECT_DIR$/spec/cpt_hook_spec.rb" />
122
+ <option value="$PROJECT_DIR$/spec/spec_helper.rb" />
123
+ <option value="$PROJECT_DIR$/lib/cpt_hook/hookable.rb" />
124
+ <option value="$PROJECT_DIR$/lib/cpt_hook/dsl/method_call.rb" />
125
+ <option value="$PROJECT_DIR$/lib/cpt_hook/dsl/hook_definition.rb" />
126
+ <option value="$PROJECT_DIR$/lib/cpt_hook/dsl/hook_definitions.rb" />
127
+ <option value="$PROJECT_DIR$/spec/hookable_spec.rb" />
128
+ <option value="$PROJECT_DIR$/lib/cpt_hook/version.rb" />
129
+ <option value="$PROJECT_DIR$/cpt_hook.gemspec" />
130
+ </list>
131
+ </option>
132
+ </component>
31
133
  <component name="JsBuildToolGruntFileManager" detection-done="true" sorting="DEFINITION_ORDER" />
32
134
  <component name="JsBuildToolPackageJson" detection-done="true" sorting="DEFINITION_ORDER" />
33
135
  <component name="JsGulpfileManager">
34
136
  <detection-done>true</detection-done>
35
137
  <sorting>DEFINITION_ORDER</sorting>
36
138
  </component>
37
- <component name="ProjectFrameBounds">
139
+ <component name="ProjectFrameBounds" extendedState="6">
38
140
  <option name="y" value="22" />
39
141
  <option name="width" value="1440" />
40
- <option name="height" value="874" />
142
+ <option name="height" value="878" />
41
143
  </component>
42
144
  <component name="ProjectView">
43
145
  <navigator currentView="ProjectPane" proportions="" version="1">
@@ -54,9 +156,47 @@
54
156
  <foldersAlwaysOnTop value="true" />
55
157
  </navigator>
56
158
  <panes>
57
- <pane id="ProjectPane" />
58
- <pane id="Scratches" />
59
159
  <pane id="Scope" />
160
+ <pane id="Scratches" />
161
+ <pane id="ProjectPane">
162
+ <subPane>
163
+ <expand>
164
+ <path>
165
+ <item name="cpt_hook" type="b2602c69:ProjectViewProjectNode" />
166
+ <item name="cpt_hook" type="462c0819:PsiDirectoryNode" />
167
+ </path>
168
+ <path>
169
+ <item name="cpt_hook" type="b2602c69:ProjectViewProjectNode" />
170
+ <item name="cpt_hook" type="462c0819:PsiDirectoryNode" />
171
+ <item name="bin" type="462c0819:PsiDirectoryNode" />
172
+ </path>
173
+ <path>
174
+ <item name="cpt_hook" type="b2602c69:ProjectViewProjectNode" />
175
+ <item name="cpt_hook" type="462c0819:PsiDirectoryNode" />
176
+ <item name="lib" type="462c0819:PsiDirectoryNode" />
177
+ </path>
178
+ <path>
179
+ <item name="cpt_hook" type="b2602c69:ProjectViewProjectNode" />
180
+ <item name="cpt_hook" type="462c0819:PsiDirectoryNode" />
181
+ <item name="lib" type="462c0819:PsiDirectoryNode" />
182
+ <item name="cpt_hook" type="462c0819:PsiDirectoryNode" />
183
+ </path>
184
+ <path>
185
+ <item name="cpt_hook" type="b2602c69:ProjectViewProjectNode" />
186
+ <item name="cpt_hook" type="462c0819:PsiDirectoryNode" />
187
+ <item name="lib" type="462c0819:PsiDirectoryNode" />
188
+ <item name="cpt_hook" type="462c0819:PsiDirectoryNode" />
189
+ <item name="dsl" type="462c0819:PsiDirectoryNode" />
190
+ </path>
191
+ <path>
192
+ <item name="cpt_hook" type="b2602c69:ProjectViewProjectNode" />
193
+ <item name="cpt_hook" type="462c0819:PsiDirectoryNode" />
194
+ <item name="spec" type="462c0819:PsiDirectoryNode" />
195
+ </path>
196
+ </expand>
197
+ <select />
198
+ </subPane>
199
+ </pane>
60
200
  </panes>
61
201
  </component>
62
202
  <component name="PropertiesComponent">
@@ -66,6 +206,11 @@
66
206
  <property name="WebServerToolWindowFactoryState" value="false" />
67
207
  <property name="last_opened_file_path" value="$PROJECT_DIR$" />
68
208
  </component>
209
+ <component name="RecentsManager">
210
+ <key name="CopyFile.RECENT_KEYS">
211
+ <recent name="$PROJECT_DIR$/spec" />
212
+ </key>
213
+ </component>
69
214
  <component name="RunDashboard">
70
215
  <option name="ruleStates">
71
216
  <list>
@@ -82,6 +227,9 @@
82
227
  <option name="remove_strategy" value="false" />
83
228
  </component>
84
229
  <component name="SpringUtil" SPRING_PRE_LOADER_OPTION="true" />
230
+ <component name="SvnConfiguration">
231
+ <configuration />
232
+ </component>
85
233
  <component name="TaskManager">
86
234
  <task active="true" id="Default" summary="Default task">
87
235
  <changelist id="3693b54d-c907-45c6-9528-2e0394f1319b" name="Default" comment="" />
@@ -90,32 +238,37 @@
90
238
  <option name="presentableId" value="Default" />
91
239
  <updated>1511554571329</updated>
92
240
  <workItem from="1511554572464" duration="9000" />
241
+ <workItem from="1516647511263" duration="1328000" />
242
+ <workItem from="1516981208104" duration="7633000" />
243
+ <workItem from="1517016157753" duration="2021000" />
93
244
  </task>
94
245
  <servers />
95
246
  </component>
96
247
  <component name="TimeTrackingManager">
97
- <option name="totallyTimeSpent" value="9000" />
248
+ <option name="totallyTimeSpent" value="10991000" />
98
249
  </component>
99
250
  <component name="ToolWindowManager">
100
- <frame x="0" y="22" width="1440" height="874" extended-state="6" />
251
+ <frame x="0" y="22" width="1440" height="878" extended-state="6" />
252
+ <editor active="true" />
101
253
  <layout>
102
- <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.24964234" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
254
+ <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.26037195" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
103
255
  <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
104
- <window_info id="Messages" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.32991013" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
105
- <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
106
- <window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
256
+ <window_info id="Docker" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
257
+ <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
258
+ <window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
107
259
  <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
108
- <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
260
+ <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
109
261
  <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
110
- <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
262
+ <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
111
263
  <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
112
- <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
264
+ <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
113
265
  <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
114
- <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
266
+ <window_info id="Messages" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.32991013" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
115
267
  <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
116
268
  <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="SLIDING" type="SLIDING" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
117
- <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
118
269
  <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
270
+ <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
271
+ <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
119
272
  <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
120
273
  </layout>
121
274
  </component>
@@ -129,4 +282,150 @@
129
282
  <breakpoint-manager />
130
283
  <watches-manager />
131
284
  </component>
285
+ <component name="editorHistoryManager">
286
+ <entry file="file://$PROJECT_DIR$/spec/cpt_hook_spec.rb">
287
+ <provider selected="true" editor-type-id="text-editor">
288
+ <state relative-caret-position="150">
289
+ <caret line="6" column="48" lean-forward="false" selection-start-line="6" selection-start-column="48" selection-end-line="6" selection-end-column="48" />
290
+ <folding />
291
+ </state>
292
+ </provider>
293
+ </entry>
294
+ <entry file="file://$PROJECT_DIR$/bin/console">
295
+ <provider selected="true" editor-type-id="text-editor">
296
+ <state relative-caret-position="375">
297
+ <caret line="15" column="54" lean-forward="false" selection-start-line="15" selection-start-column="10" selection-end-line="15" selection-end-column="54" />
298
+ <folding />
299
+ </state>
300
+ </provider>
301
+ </entry>
302
+ <entry file="file://$PROJECT_DIR$/lib/cpt_hook/dsl/hook_definition.rb">
303
+ <provider selected="true" editor-type-id="text-editor">
304
+ <state relative-caret-position="725">
305
+ <caret line="29" column="45" lean-forward="false" selection-start-line="29" selection-start-column="45" selection-end-line="29" selection-end-column="45" />
306
+ <folding />
307
+ </state>
308
+ </provider>
309
+ </entry>
310
+ <entry file="file://$PROJECT_DIR$/lib/cpt_hook/dsl/method_call.rb">
311
+ <provider selected="true" editor-type-id="text-editor">
312
+ <state relative-caret-position="75">
313
+ <caret line="3" column="44" lean-forward="false" selection-start-line="3" selection-start-column="44" selection-end-line="3" selection-end-column="44" />
314
+ <folding />
315
+ </state>
316
+ </provider>
317
+ </entry>
318
+ <entry file="file://$PROJECT_DIR$/lib/cpt_hook/hookable.rb">
319
+ <provider selected="true" editor-type-id="text-editor">
320
+ <state relative-caret-position="200">
321
+ <caret line="8" column="57" lean-forward="false" selection-start-line="8" selection-start-column="38" selection-end-line="8" selection-end-column="57" />
322
+ <folding />
323
+ </state>
324
+ </provider>
325
+ </entry>
326
+ <entry file="file://$PROJECT_DIR$/spec/hookable_spec.rb">
327
+ <provider selected="true" editor-type-id="text-editor">
328
+ <state relative-caret-position="3700">
329
+ <caret line="148" column="55" lean-forward="false" selection-start-line="148" selection-start-column="47" selection-end-line="148" selection-end-column="55" />
330
+ <folding />
331
+ </state>
332
+ </provider>
333
+ </entry>
334
+ <entry file="file://$PROJECT_DIR$/bin/console">
335
+ <provider selected="true" editor-type-id="text-editor">
336
+ <state relative-caret-position="0">
337
+ <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
338
+ <folding />
339
+ </state>
340
+ </provider>
341
+ </entry>
342
+ <entry file="file://$PROJECT_DIR$/lib/cpt_hook.rb">
343
+ <provider selected="true" editor-type-id="text-editor">
344
+ <state relative-caret-position="100">
345
+ <caret line="4" column="23" lean-forward="false" selection-start-line="4" selection-start-column="11" selection-end-line="4" selection-end-column="23" />
346
+ <folding />
347
+ </state>
348
+ </provider>
349
+ </entry>
350
+ <entry file="file://$PROJECT_DIR$/spec/spec_helper.rb">
351
+ <provider selected="true" editor-type-id="text-editor">
352
+ <state relative-caret-position="75">
353
+ <caret line="3" column="15" lean-forward="false" selection-start-line="3" selection-start-column="15" selection-end-line="3" selection-end-column="15" />
354
+ <folding />
355
+ </state>
356
+ </provider>
357
+ </entry>
358
+ <entry file="file://$PROJECT_DIR$/lib/cpt_hook/hookable.rb">
359
+ <provider selected="true" editor-type-id="text-editor">
360
+ <state relative-caret-position="200">
361
+ <caret line="8" column="57" lean-forward="false" selection-start-line="8" selection-start-column="38" selection-end-line="8" selection-end-column="57" />
362
+ <folding />
363
+ </state>
364
+ </provider>
365
+ </entry>
366
+ <entry file="file://$PROJECT_DIR$/bin/console">
367
+ <provider selected="true" editor-type-id="text-editor">
368
+ <state relative-caret-position="310">
369
+ <caret line="48" column="3" lean-forward="false" selection-start-line="48" selection-start-column="3" selection-end-line="48" selection-end-column="3" />
370
+ <folding />
371
+ </state>
372
+ </provider>
373
+ </entry>
374
+ <entry file="file://$PROJECT_DIR$/lib/cpt_hook/dsl/method_call.rb">
375
+ <provider selected="true" editor-type-id="text-editor">
376
+ <state relative-caret-position="695">
377
+ <caret line="32" column="0" lean-forward="false" selection-start-line="32" selection-start-column="0" selection-end-line="32" selection-end-column="0" />
378
+ <folding />
379
+ </state>
380
+ </provider>
381
+ </entry>
382
+ <entry file="file://$PROJECT_DIR$/lib/cpt_hook/dsl/hook_definitions.rb">
383
+ <provider selected="true" editor-type-id="text-editor">
384
+ <state relative-caret-position="518">
385
+ <caret line="26" column="12" lean-forward="false" selection-start-line="26" selection-start-column="12" selection-end-line="26" selection-end-column="12" />
386
+ <folding />
387
+ </state>
388
+ </provider>
389
+ </entry>
390
+ <entry file="file://$PROJECT_DIR$/lib/cpt_hook/dsl/hook_definition.rb">
391
+ <provider selected="true" editor-type-id="text-editor">
392
+ <state relative-caret-position="1114">
393
+ <caret line="45" column="25" lean-forward="false" selection-start-line="45" selection-start-column="25" selection-end-line="45" selection-end-column="25" />
394
+ <folding />
395
+ </state>
396
+ </provider>
397
+ </entry>
398
+ <entry file="file://$PROJECT_DIR$/spec/cpt_hook_spec.rb">
399
+ <provider selected="true" editor-type-id="text-editor">
400
+ <state relative-caret-position="150">
401
+ <caret line="6" column="48" lean-forward="false" selection-start-line="6" selection-start-column="48" selection-end-line="6" selection-end-column="48" />
402
+ <folding />
403
+ </state>
404
+ </provider>
405
+ </entry>
406
+ <entry file="file://$PROJECT_DIR$/spec/hookable_spec.rb">
407
+ <provider selected="true" editor-type-id="text-editor">
408
+ <state relative-caret-position="247">
409
+ <caret line="162" column="43" lean-forward="false" selection-start-line="162" selection-start-column="43" selection-end-line="162" selection-end-column="43" />
410
+ <folding />
411
+ </state>
412
+ </provider>
413
+ </entry>
414
+ <entry file="file://$PROJECT_DIR$/lib/cpt_hook/version.rb">
415
+ <provider selected="true" editor-type-id="text-editor">
416
+ <state relative-caret-position="25">
417
+ <caret line="1" column="18" lean-forward="false" selection-start-line="1" selection-start-column="18" selection-end-line="1" selection-end-column="18" />
418
+ <folding />
419
+ </state>
420
+ </provider>
421
+ </entry>
422
+ <entry file="file://$PROJECT_DIR$/cpt_hook.gemspec">
423
+ <provider selected="true" editor-type-id="text-editor">
424
+ <state relative-caret-position="544">
425
+ <caret line="28" column="53" lean-forward="false" selection-start-line="28" selection-start-column="53" selection-end-line="28" selection-end-column="53" />
426
+ <folding />
427
+ </state>
428
+ </provider>
429
+ </entry>
430
+ </component>
132
431
  </project>
data/bin/console CHANGED
@@ -32,11 +32,11 @@ end
32
32
 
33
33
  class TestClass
34
34
  def res_fn
35
- puts 'Resolved internal context'
35
+ 1 + 1
36
36
  end
37
37
 
38
38
  def test_fn
39
- puts 'test_fn'
39
+ 2 + 2
40
40
  end
41
41
  end
42
42
 
@@ -48,11 +48,11 @@ test_hooks = CptHook.define_hooks do
48
48
  before(:test_fn).call(:res_fn)
49
49
  end
50
50
 
51
- test_hooks2 = CptHook.define_hooks do
52
- before(:test_fn).call(:res_fn).call(:ext_res_fn).using( lambda { return external_context })
53
- end
51
+ #test_hooks2 = CptHook.define_hooks do
52
+ # before(:test_fn).call(:res_fn).call(:ext_res_fn).using( lambda { return external_context })
53
+ #end
54
54
 
55
- hooked = CptHook::Hookable.new(c, test_hooks.merge!(test_hooks2))
55
+ hooked = CptHook::Hookable.new(c, test_hooks)
56
56
  hooked.test_fn
57
57
  binding.pry
58
58
 
data/cpt_hook.gemspec CHANGED
@@ -23,7 +23,8 @@ Gem::Specification.new do |spec|
23
23
  spec.add_development_dependency 'bundler', '~> 1.16'
24
24
  spec.add_development_dependency 'rake', '~> 10.0'
25
25
  spec.add_development_dependency 'rspec', '~> 3.0'
26
- spec.add_development_dependency 'pry'
27
- spec.add_development_dependency 'pry-byebug'
28
- spec.add_development_dependency 'pry-stack_explorer'
26
+ spec.add_development_dependency 'pry', '~> 0'
27
+ spec.add_development_dependency 'pry-byebug', '~> 0'
28
+ spec.add_development_dependency 'pry-stack_explorer', '~> 0'
29
+ spec.add_development_dependency 'simplecov', '~> 0'
29
30
  end
@@ -27,10 +27,25 @@ module CptHook
27
27
  end
28
28
 
29
29
  def contexts(*args)
30
- @call_chain.last.contexts(*args)
30
+ @call_chain.last.contexts.concat args
31
31
  self
32
32
  end
33
33
 
34
+ def dup
35
+ HookDefinition.new(@method, @hook_type).clone(self)
36
+ end
37
+
38
+ def clone(other)
39
+ @call_chain = other.call_chain.map { |cc| cc.dup }
40
+ @hook_type = other.hook_type
41
+ @method = other.method
42
+ self
43
+ end
44
+
45
+ def merge(other)
46
+ dup.merge!(other)
47
+ end
48
+
34
49
  def merge!(other)
35
50
  other.call_chain.each do |cc|
36
51
  @call_chain << cc unless @call_chain.any? { |c| c.method == cc.method }
@@ -22,6 +22,19 @@ module CptHook
22
22
  _hook_definition(method_to_hook, :after, &block)
23
23
  end
24
24
 
25
+ def clone(other)
26
+ @hooks = other.hooks.map { |h| h.dup }
27
+ self
28
+ end
29
+
30
+ def dup
31
+ HookDefinitions.new.clone(self)
32
+ end
33
+
34
+ def merge(other)
35
+ dup.merge!(other)
36
+ end
37
+
25
38
  def merge!(other)
26
39
  other.hooks.each do |hook|
27
40
  my_hook = @hooks.find { |h| (h.method == hook.method) && (h.hook_type == hook.hook_type) }
@@ -1,16 +1,16 @@
1
1
  module CptHook
2
2
  module DSL
3
3
  class MethodCall
4
- attr_reader :method, :with, :contexts
4
+ attr_reader :method, :withs, :contexts
5
5
 
6
6
  def initialize(method_to_call)
7
7
  @method = method_to_call
8
8
  @contexts = []
9
- @with = []
9
+ @withs = []
10
10
  end
11
11
 
12
12
  def resolve_with(&block)
13
- @with.map!(&block)
13
+ @withs.map!(&block)
14
14
  end
15
15
 
16
16
  def resolve_contexts(&block)
@@ -18,12 +18,22 @@ module CptHook
18
18
  end
19
19
 
20
20
  def with(*args)
21
- @with = args
21
+ @withs = args
22
22
  end
23
23
 
24
24
  def using(*args)
25
25
  @contexts = args
26
26
  end
27
+
28
+ def clone(other)
29
+ @withs = other.withs.dup
30
+ @contexts = other.contexts.dup
31
+ self
32
+ end
33
+
34
+ def dup
35
+ MethodCall.new(@method).clone(self)
36
+ end
27
37
  end
28
38
  end
29
39
  end
@@ -32,7 +32,8 @@ module CptHook
32
32
  method_hooks.hooks(which).each do |hook|
33
33
  define_singleton_method("#{which}_#{hook.method}") do |*args, &block|
34
34
  hook.call_chain.each do |call_chain|
35
- call_args = call_chain.with.map { |ca| ca == :self ? self : ca }
35
+ call_args = call_chain.withs.map { |ca| ca == :self ? self : ca }
36
+
36
37
  if call_chain.method.is_a?(Proc)
37
38
  call_chain.method.call(*call_args)
38
39
  else
@@ -1,3 +1,3 @@
1
1
  module CptHook
2
- VERSION = '0.3.1'
2
+ VERSION = '0.3.2'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cpt_hook
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - JDonavan
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-12-08 00:00:00.000000000 Z
11
+ date: 2018-01-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -56,42 +56,56 @@ dependencies:
56
56
  name: pry
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ">="
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ">="
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: pry-byebug
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ">="
73
+ - - "~>"
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ">="
80
+ - - "~>"
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: pry-stack_explorer
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ">="
87
+ - - "~>"
88
88
  - !ruby/object:Gem::Version
89
89
  version: '0'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ">="
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: simplecov
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
95
109
  - !ruby/object:Gem::Version
96
110
  version: '0'
97
111
  description: