pose 1.3.4 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.md +11 -0
- data/Rakefile +4 -2
- data/app/models/pose/assignment.rb +34 -0
- data/app/models/pose/word.rb +24 -0
- data/db/migrate/20130308144915_pose_install.rb +18 -0
- data/lib/generators/pose/remove/templates/remove_migration.rb +3 -5
- data/lib/generators/pose/upgrade/templates/upgrade_migration.rb +9 -0
- data/lib/generators/pose/upgrade/upgrade_generator.rb +35 -0
- data/lib/pose/activerecord_base_additions.rb +5 -2
- data/lib/pose/engine.rb +5 -0
- data/lib/pose/internal_helpers.rb +13 -7
- data/lib/pose/{model_additions.rb → model_class_additions.rb} +8 -8
- data/lib/pose/railtie.rb +1 -2
- data/lib/pose/static_api.rb +5 -6
- data/lib/pose/version.rb +1 -1
- data/lib/pose.rb +5 -7
- data/lib/tasks/pose_tasks.rake +27 -29
- data/spec/dummy/Rakefile +7 -0
- data/spec/{support/models.rb → dummy/app/models/posable_one.rb} +1 -4
- data/spec/dummy/app/models/posable_two.rb +5 -0
- data/spec/dummy/config/application.rb +59 -0
- data/spec/dummy/config/boot.rb +10 -0
- data/spec/dummy/config/database.yml +25 -0
- data/spec/dummy/config/environment.rb +5 -0
- data/spec/dummy/config/environments/development.rb +37 -0
- data/spec/dummy/config/environments/production.rb +67 -0
- data/spec/dummy/config/environments/test.rb +37 -0
- data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/spec/dummy/config/initializers/inflections.rb +15 -0
- data/spec/dummy/config/initializers/mime_types.rb +5 -0
- data/spec/dummy/config/initializers/secret_token.rb +7 -0
- data/spec/dummy/config/initializers/session_store.rb +8 -0
- data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
- data/spec/dummy/config/locales/en.yml +5 -0
- data/spec/dummy/config/routes.rb +2 -0
- data/spec/dummy/config.ru +4 -0
- data/spec/dummy/db/migrate/20130308054001_create_posable_one.rb +8 -0
- data/spec/dummy/db/migrate/20130308054142_create_posable_two.rb +9 -0
- data/spec/dummy/db/schema.rb +41 -0
- data/spec/dummy/script/rails +6 -0
- data/spec/factories/assignments.rb +8 -0
- data/spec/factories/posable_one.rb +5 -0
- data/spec/factories/words.rb +7 -0
- data/spec/internal_helpers_spec.rb +40 -42
- data/spec/models/assignment_spec.rb +46 -0
- data/spec/models/word_spec.rb +42 -0
- data/spec/pose_api_spec.rb +198 -196
- data/spec/spec_helper.rb +21 -77
- data/spec/support/matchers.rb +0 -1
- metadata +83 -102
- data/doc/Pose/InstanceMethods.html +0 -341
- data/doc/Pose.html +0 -774
- data/doc/PoseAssignment.html +0 -125
- data/doc/PoseGenerator.html +0 -255
- data/doc/PoseMigrations.html +0 -261
- data/doc/PoseWord.html +0 -125
- data/doc/_index.html +0 -134
- data/doc/class_list.html +0 -47
- data/doc/css/common.css +0 -1
- data/doc/css/full_list.css +0 -55
- data/doc/css/style.css +0 -322
- data/doc/file_list.html +0 -46
- data/doc/frames.html +0 -13
- data/doc/index.html +0 -134
- data/doc/js/app.js +0 -205
- data/doc/js/full_list.js +0 -167
- data/doc/js/jquery.js +0 -16
- data/doc/method_list.html +0 -150
- data/doc/top-level-namespace.html +0 -172
- data/lib/generators/pose/install/install_generator.rb +0 -56
- data/lib/generators/pose/install/templates/install_migration.rb +0 -24
- data/lib/pose/models/pose_assignment.rb +0 -31
- data/lib/pose/models/pose_word.rb +0 -28
- data/spec/factories.rb +0 -15
- data/spec/pose_assignment_spec.rb +0 -45
- data/spec/pose_word_spec.rb +0 -26
data/doc/Pose.html
DELETED
@@ -1,774 +0,0 @@
|
|
1
|
-
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
2
|
-
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
3
|
-
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
4
|
-
<head>
|
5
|
-
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
6
|
-
<title>
|
7
|
-
Module: Pose
|
8
|
-
|
9
|
-
— Documentation by YARD 0.7.3
|
10
|
-
|
11
|
-
</title>
|
12
|
-
|
13
|
-
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
|
14
|
-
|
15
|
-
<link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
|
16
|
-
|
17
|
-
<script type="text/javascript" charset="utf-8">
|
18
|
-
relpath = '';
|
19
|
-
if (relpath != '') relpath += '/';
|
20
|
-
</script>
|
21
|
-
|
22
|
-
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
|
23
|
-
|
24
|
-
<script type="text/javascript" charset="utf-8" src="js/app.js"></script>
|
25
|
-
|
26
|
-
|
27
|
-
</head>
|
28
|
-
<body>
|
29
|
-
<script type="text/javascript" charset="utf-8">
|
30
|
-
if (window.top.frames.main) document.body.className = 'frames';
|
31
|
-
</script>
|
32
|
-
|
33
|
-
<div id="header">
|
34
|
-
<div id="menu">
|
35
|
-
|
36
|
-
<a href="_index.html">Index (P)</a> »
|
37
|
-
|
38
|
-
|
39
|
-
<span class="title">Pose</span>
|
40
|
-
|
41
|
-
|
42
|
-
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
|
43
|
-
</div>
|
44
|
-
|
45
|
-
<div id="search">
|
46
|
-
|
47
|
-
<a id="class_list_link" href="#">Class List</a>
|
48
|
-
|
49
|
-
<a id="method_list_link" href="#">Method List</a>
|
50
|
-
|
51
|
-
<a id="file_list_link" href="#">File List</a>
|
52
|
-
|
53
|
-
</div>
|
54
|
-
<div class="clear"></div>
|
55
|
-
</div>
|
56
|
-
|
57
|
-
<iframe id="search_frame"></iframe>
|
58
|
-
|
59
|
-
<div id="content"><h1>Module: Pose
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
</h1>
|
64
|
-
|
65
|
-
<dl class="box">
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
<dt class="r1">Extended by:</dt>
|
70
|
-
<dd class="r1">ActiveSupport::Concern</dd>
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
<dt class="r2 last">Defined in:</dt>
|
79
|
-
<dd class="r2 last">lib/pose.rb<span class="defines">,<br />
|
80
|
-
lib/pose/version.rb</span>
|
81
|
-
</dd>
|
82
|
-
|
83
|
-
</dl>
|
84
|
-
<div class="clear"></div>
|
85
|
-
|
86
|
-
<h2>Overview</h2><div class="docstring">
|
87
|
-
<div class="discussion">
|
88
|
-
Polymorphic search for ActiveRecord objects.
|
89
|
-
|
90
|
-
</div>
|
91
|
-
</div>
|
92
|
-
<div class="tags">
|
93
|
-
|
94
|
-
|
95
|
-
</div><h2>Defined Under Namespace</h2>
|
96
|
-
<p class="children">
|
97
|
-
|
98
|
-
|
99
|
-
<strong class="modules">Modules:</strong> <span class='object_link'><a href="Pose/InstanceMethods.html" title="Pose::InstanceMethods (module)">InstanceMethods</a></span>
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
</p>
|
105
|
-
|
106
|
-
<h2>Constant Summary</h2>
|
107
|
-
|
108
|
-
<dl class="constants">
|
109
|
-
|
110
|
-
<dt id="CONFIGURATION-constant" class="">CONFIGURATION =
|
111
|
-
<div class="docstring">
|
112
|
-
<div class="discussion">
|
113
|
-
By default, doesn't run in tests.
|
114
|
-
Set this to true to test the search functionality.
|
115
|
-
|
116
|
-
</div>
|
117
|
-
</div>
|
118
|
-
<div class="tags">
|
119
|
-
|
120
|
-
|
121
|
-
</div>
|
122
|
-
</dt>
|
123
|
-
<dd><pre class="code"><span class='lbrace token'>{</span> <span class='symbol val'>:search_in_tests</span> <span class='assign token'>=</span><span class='gt op'>></span> <span class='false false kw'>false</span> <span class='rbrace token'>}</span>
|
124
|
-
</pre></dd>
|
125
|
-
|
126
|
-
<dt id="VERSION-constant" class="">VERSION =
|
127
|
-
|
128
|
-
</dt>
|
129
|
-
<dd><pre class="code"><span class='string val'>"0.0.1"</span>
|
130
|
-
</pre></dd>
|
131
|
-
|
132
|
-
</dl>
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
<h2>
|
143
|
-
Class Method Summary
|
144
|
-
<small>(<a href="#" class="summary_toggle">collapse</a>)</small>
|
145
|
-
</h2>
|
146
|
-
|
147
|
-
<ul class="summary">
|
148
|
-
|
149
|
-
<li class="public ">
|
150
|
-
<span class="summary_signature">
|
151
|
-
|
152
|
-
<a href="#get_words_to_add-class_method" title="get_words_to_add (class method)">+ (Array<String>) <strong>get_words_to_add</strong>(existing_words, new_words) </a>
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
</span>
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
<span class="summary_desc"><div class='inline'>Returns all strings that are in new_words, but not in existing_words.</div></span>
|
166
|
-
|
167
|
-
</li>
|
168
|
-
|
169
|
-
|
170
|
-
<li class="public ">
|
171
|
-
<span class="summary_signature">
|
172
|
-
|
173
|
-
<a href="#get_words_to_remove-class_method" title="get_words_to_remove (class method)">+ (Array<String>) <strong>get_words_to_remove</strong>(existing_words, new_words) </a>
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
</span>
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
<span class="summary_desc"><div class='inline'>Returns the id of all word objects that are in existing_words, but not in new_words.</div></span>
|
187
|
-
|
188
|
-
</li>
|
189
|
-
|
190
|
-
|
191
|
-
<li class="public ">
|
192
|
-
<span class="summary_signature">
|
193
|
-
|
194
|
-
<a href="#is_url-class_method" title="is_url (class method)">+ (Boolean) <strong>is_url</strong>(word) </a>
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
</span>
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
<span class="summary_desc"><div class='inline'>Returns whether the given string is a URL.</div></span>
|
208
|
-
|
209
|
-
</li>
|
210
|
-
|
211
|
-
|
212
|
-
<li class="public ">
|
213
|
-
<span class="summary_signature">
|
214
|
-
|
215
|
-
<a href="#root_word-class_method" title="root_word (class method)">+ (String) <strong>root_word</strong>(raw_word) </a>
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
</span>
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
<span class="summary_desc"><div class='inline'>Simplifies the given word to a generic search form.</div></span>
|
229
|
-
|
230
|
-
</li>
|
231
|
-
|
232
|
-
|
233
|
-
<li class="public ">
|
234
|
-
<span class="summary_signature">
|
235
|
-
|
236
|
-
<a href="#search-class_method" title="search (class method)">+ (Object) <strong>search</strong>(query, classes) </a>
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
</span>
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
<span class="summary_desc"><div class='inline'>Returns all objects matching the given query.</div></span>
|
250
|
-
|
251
|
-
</li>
|
252
|
-
|
253
|
-
|
254
|
-
</ul>
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
<div id="class_method_details" class="method_details_list">
|
261
|
-
<h2>Class Method Details</h2>
|
262
|
-
|
263
|
-
|
264
|
-
<div class="method_details first">
|
265
|
-
<p class="signature first" id="get_words_to_add-class_method">
|
266
|
-
|
267
|
-
+ (<tt>Array<String></tt>) <strong>get_words_to_add</strong>(existing_words, new_words)
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
</p><div class="docstring">
|
272
|
-
<div class="discussion">
|
273
|
-
Returns all strings that are in new_words, but not in existing_words.
|
274
|
-
Helper method.
|
275
|
-
|
276
|
-
</div>
|
277
|
-
</div>
|
278
|
-
<div class="tags">
|
279
|
-
<h3>Parameters:</h3>
|
280
|
-
<ul class="param">
|
281
|
-
|
282
|
-
<li>
|
283
|
-
|
284
|
-
<span class='name'>existing_words</span>
|
285
|
-
|
286
|
-
|
287
|
-
<span class='type'>(<tt>Array<String></tt>)</span>
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
—
|
292
|
-
<div class='inline'>The words that are already associated with the object.</div>
|
293
|
-
|
294
|
-
</li>
|
295
|
-
|
296
|
-
<li>
|
297
|
-
|
298
|
-
<span class='name'>new_words</span>
|
299
|
-
|
300
|
-
|
301
|
-
<span class='type'>(<tt>Array<String></tt>)</span>
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
—
|
306
|
-
<div class='inline'>The words thet the object should have from now on.</div>
|
307
|
-
|
308
|
-
</li>
|
309
|
-
|
310
|
-
</ul>
|
311
|
-
|
312
|
-
<h3>Returns:</h3>
|
313
|
-
<ul class="return">
|
314
|
-
|
315
|
-
<li>
|
316
|
-
|
317
|
-
|
318
|
-
<span class='type'>(<tt>Array<String></tt>)</span>
|
319
|
-
|
320
|
-
|
321
|
-
|
322
|
-
—
|
323
|
-
<div class='inline'>The words that need to be added to the existing_words array.</div>
|
324
|
-
|
325
|
-
</li>
|
326
|
-
|
327
|
-
</ul>
|
328
|
-
|
329
|
-
</div><table class="source_code">
|
330
|
-
<tr>
|
331
|
-
<td>
|
332
|
-
<pre class="lines">
|
333
|
-
|
334
|
-
|
335
|
-
66
|
336
|
-
67
|
337
|
-
68</pre>
|
338
|
-
</td>
|
339
|
-
<td>
|
340
|
-
<pre class="code"><span class="info file"># File 'lib/pose.rb', line 66</span>
|
341
|
-
|
342
|
-
<span class='def def kw'>def</span> <span class='Pose constant id'>Pose</span><span class='dot token'>.</span><span class='get_words_to_add identifier id'>get_words_to_add</span> <span class='existing_words identifier id'>existing_words</span><span class='comma token'>,</span> <span class='new_words identifier id'>new_words</span>
|
343
|
-
<span class='new_words identifier id'>new_words</span> <span class='minus op'>-</span> <span class='existing_words identifier id'>existing_words</span><span class='dot token'>.</span><span class='map identifier id'>map</span><span class='lparen token'>(</span><span class='bitand op'>&</span><span class='symbol val'>:text</span><span class='rparen token'>)</span>
|
344
|
-
<span class='end end kw'>end</span>
|
345
|
-
</pre>
|
346
|
-
</td>
|
347
|
-
</tr>
|
348
|
-
</table>
|
349
|
-
</div>
|
350
|
-
|
351
|
-
<div class="method_details ">
|
352
|
-
<p class="signature " id="get_words_to_remove-class_method">
|
353
|
-
|
354
|
-
+ (<tt>Array<String></tt>) <strong>get_words_to_remove</strong>(existing_words, new_words)
|
355
|
-
|
356
|
-
|
357
|
-
|
358
|
-
</p><div class="docstring">
|
359
|
-
<div class="discussion">
|
360
|
-
Returns the id of all word objects that are in existing_words, but not in new_words.
|
361
|
-
Helper method.
|
362
|
-
|
363
|
-
</div>
|
364
|
-
</div>
|
365
|
-
<div class="tags">
|
366
|
-
<h3>Parameters:</h3>
|
367
|
-
<ul class="param">
|
368
|
-
|
369
|
-
<li>
|
370
|
-
|
371
|
-
<span class='name'>existing_words</span>
|
372
|
-
|
373
|
-
|
374
|
-
<span class='type'>(<tt>Array<String></tt>)</span>
|
375
|
-
|
376
|
-
|
377
|
-
|
378
|
-
—
|
379
|
-
<div class='inline'>The words that are already associated with the object.</div>
|
380
|
-
|
381
|
-
</li>
|
382
|
-
|
383
|
-
<li>
|
384
|
-
|
385
|
-
<span class='name'>new_words</span>
|
386
|
-
|
387
|
-
|
388
|
-
<span class='type'>(<tt>Array<String></tt>)</span>
|
389
|
-
|
390
|
-
|
391
|
-
|
392
|
-
—
|
393
|
-
<div class='inline'>The words thet the object should have from now on.</div>
|
394
|
-
|
395
|
-
</li>
|
396
|
-
|
397
|
-
</ul>
|
398
|
-
|
399
|
-
<h3>Returns:</h3>
|
400
|
-
<ul class="return">
|
401
|
-
|
402
|
-
<li>
|
403
|
-
|
404
|
-
|
405
|
-
<span class='type'>(<tt>Array<String></tt>)</span>
|
406
|
-
|
407
|
-
|
408
|
-
|
409
|
-
—
|
410
|
-
<div class='inline'>The words that need to be removed from the existing_words array.</div>
|
411
|
-
|
412
|
-
</li>
|
413
|
-
|
414
|
-
</ul>
|
415
|
-
|
416
|
-
</div><table class="source_code">
|
417
|
-
<tr>
|
418
|
-
<td>
|
419
|
-
<pre class="lines">
|
420
|
-
|
421
|
-
|
422
|
-
75
|
423
|
-
76
|
424
|
-
77
|
425
|
-
78
|
426
|
-
79</pre>
|
427
|
-
</td>
|
428
|
-
<td>
|
429
|
-
<pre class="code"><span class="info file"># File 'lib/pose.rb', line 75</span>
|
430
|
-
|
431
|
-
<span class='def def kw'>def</span> <span class='Pose constant id'>Pose</span><span class='dot token'>.</span><span class='get_words_to_remove identifier id'>get_words_to_remove</span> <span class='existing_words identifier id'>existing_words</span><span class='comma token'>,</span> <span class='new_words identifier id'>new_words</span>
|
432
|
-
<span class='existing_words identifier id'>existing_words</span><span class='dot token'>.</span><span class='map identifier id'>map</span> <span class='do do kw'>do</span> <span class='bitor op'>|</span><span class='existing_word identifier id'>existing_word</span><span class='bitor op'>|</span>
|
433
|
-
<span class='new_words identifier id'>new_words</span><span class='dot token'>.</span><span class='include? fid id'>include?</span><span class='lparen token'>(</span><span class='existing_word identifier id'>existing_word</span><span class='dot token'>.</span><span class='text identifier id'>text</span><span class='rparen token'>)</span> <span class='question op'>?</span> <span class='nil nil kw'>nil</span> <span class='colon op'>:</span> <span class='existing_word identifier id'>existing_word</span>
|
434
|
-
<span class='end end kw'>end</span><span class='dot token'>.</span><span class='compact identifier id'>compact</span>
|
435
|
-
<span class='end end kw'>end</span>
|
436
|
-
</pre>
|
437
|
-
</td>
|
438
|
-
</tr>
|
439
|
-
</table>
|
440
|
-
</div>
|
441
|
-
|
442
|
-
<div class="method_details ">
|
443
|
-
<p class="signature " id="is_url-class_method">
|
444
|
-
|
445
|
-
+ (<tt>Boolean</tt>) <strong>is_url</strong>(word)
|
446
|
-
|
447
|
-
|
448
|
-
|
449
|
-
</p><div class="docstring">
|
450
|
-
<div class="discussion">
|
451
|
-
Returns whether the given string is a URL.
|
452
|
-
|
453
|
-
</div>
|
454
|
-
</div>
|
455
|
-
<div class="tags">
|
456
|
-
<h3>Parameters:</h3>
|
457
|
-
<ul class="param">
|
458
|
-
|
459
|
-
<li>
|
460
|
-
|
461
|
-
<span class='name'>word</span>
|
462
|
-
|
463
|
-
|
464
|
-
<span class='type'>(<tt>String</tt>)</span>
|
465
|
-
|
466
|
-
|
467
|
-
|
468
|
-
—
|
469
|
-
<div class='inline'>The string to check.</div>
|
470
|
-
|
471
|
-
</li>
|
472
|
-
|
473
|
-
</ul>
|
474
|
-
|
475
|
-
<h3>Returns:</h3>
|
476
|
-
<ul class="return">
|
477
|
-
|
478
|
-
<li>
|
479
|
-
|
480
|
-
|
481
|
-
<span class='type'>(<tt>Boolean</tt>)</span>
|
482
|
-
|
483
|
-
|
484
|
-
|
485
|
-
</li>
|
486
|
-
|
487
|
-
</ul>
|
488
|
-
|
489
|
-
</div><table class="source_code">
|
490
|
-
<tr>
|
491
|
-
<td>
|
492
|
-
<pre class="lines">
|
493
|
-
|
494
|
-
|
495
|
-
84
|
496
|
-
85
|
497
|
-
86
|
498
|
-
87
|
499
|
-
88
|
500
|
-
89</pre>
|
501
|
-
</td>
|
502
|
-
<td>
|
503
|
-
<pre class="code"><span class="info file"># File 'lib/pose.rb', line 84</span>
|
504
|
-
|
505
|
-
<span class='def def kw'>def</span> <span class='Pose constant id'>Pose</span><span class='dot token'>.</span><span class='is_url identifier id'>is_url</span> <span class='word identifier id'>word</span>
|
506
|
-
<span class='uri identifier id'>uri</span> <span class='assign token'>=</span> <span class='URI constant id'>URI</span><span class='colon2 op'>::</span><span class='parse identifier id'>parse</span> <span class='word identifier id'>word</span>
|
507
|
-
<span class='return return kw'>return</span> <span class='uri identifier id'>uri</span><span class='dot token'>.</span><span class='scheme identifier id'>scheme</span> <span class='eq op'>==</span> <span class='string val'>'http'</span>
|
508
|
-
<span class='rescue rescue kw'>rescue</span> <span class='URI constant id'>URI</span><span class='colon2 op'>::</span><span class='InvalidURIError constant id'>InvalidURIError</span>
|
509
|
-
<span class='false false kw'>false</span>
|
510
|
-
<span class='end end kw'>end</span>
|
511
|
-
</pre>
|
512
|
-
</td>
|
513
|
-
</tr>
|
514
|
-
</table>
|
515
|
-
</div>
|
516
|
-
|
517
|
-
<div class="method_details ">
|
518
|
-
<p class="signature " id="root_word-class_method">
|
519
|
-
|
520
|
-
+ (<tt>String</tt>) <strong>root_word</strong>(raw_word)
|
521
|
-
|
522
|
-
|
523
|
-
|
524
|
-
</p><div class="docstring">
|
525
|
-
<div class="discussion">
|
526
|
-
Simplifies the given word to a generic search form.
|
527
|
-
|
528
|
-
</div>
|
529
|
-
</div>
|
530
|
-
<div class="tags">
|
531
|
-
<h3>Parameters:</h3>
|
532
|
-
<ul class="param">
|
533
|
-
|
534
|
-
<li>
|
535
|
-
|
536
|
-
<span class='name'>raw_word</span>
|
537
|
-
|
538
|
-
|
539
|
-
<span class='type'>(<tt>String</tt>)</span>
|
540
|
-
|
541
|
-
|
542
|
-
|
543
|
-
—
|
544
|
-
<div class='inline'>The word to make searchable.</div>
|
545
|
-
|
546
|
-
</li>
|
547
|
-
|
548
|
-
</ul>
|
549
|
-
|
550
|
-
<h3>Returns:</h3>
|
551
|
-
<ul class="return">
|
552
|
-
|
553
|
-
<li>
|
554
|
-
|
555
|
-
|
556
|
-
<span class='type'>(<tt>String</tt>)</span>
|
557
|
-
|
558
|
-
|
559
|
-
|
560
|
-
—
|
561
|
-
<div class='inline'>The stemmed version of the word.</div>
|
562
|
-
|
563
|
-
</li>
|
564
|
-
|
565
|
-
</ul>
|
566
|
-
|
567
|
-
</div><table class="source_code">
|
568
|
-
<tr>
|
569
|
-
<td>
|
570
|
-
<pre class="lines">
|
571
|
-
|
572
|
-
|
573
|
-
94
|
574
|
-
95
|
575
|
-
96
|
576
|
-
97
|
577
|
-
98
|
578
|
-
99
|
579
|
-
100
|
580
|
-
101
|
581
|
-
102
|
582
|
-
103
|
583
|
-
104
|
584
|
-
105
|
585
|
-
106
|
586
|
-
107
|
587
|
-
108
|
588
|
-
109
|
589
|
-
110
|
590
|
-
111
|
591
|
-
112</pre>
|
592
|
-
</td>
|
593
|
-
<td>
|
594
|
-
<pre class="code"><span class="info file"># File 'lib/pose.rb', line 94</span>
|
595
|
-
|
596
|
-
<span class='def def kw'>def</span> <span class='Pose constant id'>Pose</span><span class='dot token'>.</span><span class='root_word identifier id'>root_word</span> <span class='raw_word identifier id'>raw_word</span>
|
597
|
-
<span class='result identifier id'>result</span> <span class='assign token'>=</span> <span class='lbrack token'>[</span><span class='rbrack token'>]</span>
|
598
|
-
<span class='raw_word_copy identifier id'>raw_word_copy</span> <span class='assign token'>=</span> <span class='raw_word identifier id'>raw_word</span><span class='lbrack token'>[</span><span class='integer val'>0</span><span class='dot2 op'>..</span><span class='integer val'>-1</span><span class='rbrack token'>]</span>
|
599
|
-
<span class='raw_word_copy identifier id'>raw_word_copy</span><span class='dot token'>.</span><span class='gsub! fid id'>gsub!</span> <span class='regexp val'>/[()*<>'",;]/</span><span class='comma token'>,</span> <span class='string val'>' '</span>
|
600
|
-
<span class='raw_word_copy identifier id'>raw_word_copy</span><span class='dot token'>.</span><span class='gsub! fid id'>gsub!</span> <span class='regexp val'>/\s+/</span><span class='comma token'>,</span> <span class='string val'>' '</span>
|
601
|
-
<span class='raw_word_copy identifier id'>raw_word_copy</span><span class='dot token'>.</span><span class='split identifier id'>split</span><span class='lparen token'>(</span><span class='string val'>' '</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='each identifier id'>each</span> <span class='do do kw'>do</span> <span class='bitor op'>|</span><span class='word identifier id'>word</span><span class='bitor op'>|</span>
|
602
|
-
<span class='if if kw'>if</span> <span class='Pose constant id'>Pose</span><span class='dot token'>.</span><span class='is_url identifier id'>is_url</span><span class='lparen token'>(</span><span class='word identifier id'>word</span><span class='rparen token'>)</span>
|
603
|
-
<span class='result identifier id'>result</span><span class='dot token'>.</span><span class='concat identifier id'>concat</span> <span class='word identifier id'>word</span><span class='dot token'>.</span><span class='split identifier id'>split</span><span class='lparen token'>(</span><span class='regexp val'>/[\.\/\:]/</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='delete_if identifier id'>delete_if</span><span class='lbrace token'>{</span><span class='bitor op'>|</span><span class='word identifier id'>word</span><span class='bitor op'>|</span> <span class='word identifier id'>word</span><span class='dot token'>.</span><span class='blank? fid id'>blank?</span><span class='rbrace token'>}</span>
|
604
|
-
<span class='else else kw'>else</span>
|
605
|
-
<span class='word identifier id'>word</span><span class='dot token'>.</span><span class='gsub! fid id'>gsub!</span> <span class='regexp val'>/[\-\/\._:]/</span><span class='comma token'>,</span> <span class='string val'>' '</span>
|
606
|
-
<span class='word identifier id'>word</span><span class='dot token'>.</span><span class='gsub! fid id'>gsub!</span> <span class='regexp val'>/\s+/</span><span class='comma token'>,</span> <span class='string val'>' '</span>
|
607
|
-
<span class='word identifier id'>word</span><span class='dot token'>.</span><span class='split identifier id'>split</span><span class='lparen token'>(</span><span class='string val'>' '</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='each identifier id'>each</span> <span class='do do kw'>do</span> <span class='bitor op'>|</span><span class='w identifier id'>w</span><span class='bitor op'>|</span>
|
608
|
-
<span class='stemmed_word identifier id'>stemmed_word</span> <span class='assign token'>=</span> <span class='w identifier id'>w</span><span class='dot token'>.</span><span class='parameterize identifier id'>parameterize</span><span class='dot token'>.</span><span class='singularize identifier id'>singularize</span>
|
609
|
-
<span class='result identifier id'>result</span><span class='dot token'>.</span><span class='concat identifier id'>concat</span> <span class='stemmed_word identifier id'>stemmed_word</span><span class='dot token'>.</span><span class='split identifier id'>split</span> <span class='string val'>' '</span>
|
610
|
-
<span class='end end kw'>end</span>
|
611
|
-
<span class='end end kw'>end</span>
|
612
|
-
<span class='end end kw'>end</span>
|
613
|
-
<span class='result identifier id'>result</span><span class='dot token'>.</span><span class='uniq identifier id'>uniq</span>
|
614
|
-
<span class='end end kw'>end</span>
|
615
|
-
</pre>
|
616
|
-
</td>
|
617
|
-
</tr>
|
618
|
-
</table>
|
619
|
-
</div>
|
620
|
-
|
621
|
-
<div class="method_details ">
|
622
|
-
<p class="signature " id="search-class_method">
|
623
|
-
|
624
|
-
+ (<tt>Object</tt>) <strong>search</strong>(query, classes)
|
625
|
-
|
626
|
-
|
627
|
-
|
628
|
-
</p><div class="docstring">
|
629
|
-
<div class="discussion">
|
630
|
-
Returns all objects matching the given query.
|
631
|
-
|
632
|
-
</div>
|
633
|
-
</div>
|
634
|
-
<div class="tags">
|
635
|
-
<h3>Parameters:</h3>
|
636
|
-
<ul class="param">
|
637
|
-
|
638
|
-
<li>
|
639
|
-
|
640
|
-
<span class='name'>query</span>
|
641
|
-
|
642
|
-
|
643
|
-
<span class='type'>(<tt>String</tt>)</span>
|
644
|
-
|
645
|
-
|
646
|
-
|
647
|
-
—
|
648
|
-
<div class='inline'>The search query as entered by the user.</div>
|
649
|
-
|
650
|
-
</li>
|
651
|
-
|
652
|
-
<li>
|
653
|
-
|
654
|
-
<span class='name'>classes</span>
|
655
|
-
|
656
|
-
|
657
|
-
<span class='type'>(<tt>Array<String></tt>)</span>
|
658
|
-
|
659
|
-
|
660
|
-
|
661
|
-
—
|
662
|
-
<div class='inline'>The classes that should be returned.</div>
|
663
|
-
|
664
|
-
</li>
|
665
|
-
|
666
|
-
</ul>
|
667
|
-
|
668
|
-
|
669
|
-
</div><table class="source_code">
|
670
|
-
<tr>
|
671
|
-
<td>
|
672
|
-
<pre class="lines">
|
673
|
-
|
674
|
-
|
675
|
-
117
|
676
|
-
118
|
677
|
-
119
|
678
|
-
120
|
679
|
-
121
|
680
|
-
122
|
681
|
-
123
|
682
|
-
124
|
683
|
-
125
|
684
|
-
126
|
685
|
-
127
|
686
|
-
128
|
687
|
-
129
|
688
|
-
130
|
689
|
-
131
|
690
|
-
132
|
691
|
-
133
|
692
|
-
134
|
693
|
-
135
|
694
|
-
136
|
695
|
-
137
|
696
|
-
138
|
697
|
-
139
|
698
|
-
140
|
699
|
-
141
|
700
|
-
142
|
701
|
-
143
|
702
|
-
144
|
703
|
-
145
|
704
|
-
146
|
705
|
-
147
|
706
|
-
148
|
707
|
-
149
|
708
|
-
150
|
709
|
-
151
|
710
|
-
152
|
711
|
-
153
|
712
|
-
154
|
713
|
-
155</pre>
|
714
|
-
</td>
|
715
|
-
<td>
|
716
|
-
<pre class="code"><span class="info file"># File 'lib/pose.rb', line 117</span>
|
717
|
-
|
718
|
-
<span class='def def kw'>def</span> <span class='Pose constant id'>Pose</span><span class='dot token'>.</span><span class='search identifier id'>search</span> <span class='query identifier id'>query</span><span class='comma token'>,</span> <span class='classes identifier id'>classes</span>
|
719
|
-
|
720
|
-
<span class='comment val'># Turn 'classes' into an array.</span>
|
721
|
-
<span class='classes identifier id'>classes</span> <span class='assign token'>=</span> <span class='lbrack token'>[</span><span class='classes identifier id'>classes</span><span class='rbrack token'>]</span><span class='dot token'>.</span><span class='flatten identifier id'>flatten</span>
|
722
|
-
<span class='classes_names identifier id'>classes_names</span> <span class='assign token'>=</span> <span class='classes identifier id'>classes</span><span class='dot token'>.</span><span class='map identifier id'>map</span> <span class='bitand op'>&</span><span class='symbol val'>:name</span>
|
723
|
-
|
724
|
-
<span class='comment val'># Get the ids of the results.</span>
|
725
|
-
<span class='result_classes_and_ids identifier id'>result_classes_and_ids</span> <span class='assign token'>=</span> <span class='lbrace token'>{</span><span class='rbrace token'>}</span>
|
726
|
-
<span class='query identifier id'>query</span><span class='dot token'>.</span><span class='split identifier id'>split</span><span class='lparen token'>(</span><span class='string val'>' '</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='each identifier id'>each</span> <span class='do do kw'>do</span> <span class='bitor op'>|</span><span class='query_word identifier id'>query_word</span><span class='bitor op'>|</span>
|
727
|
-
<span class='current_word_classes_and_ids identifier id'>current_word_classes_and_ids</span> <span class='assign token'>=</span> <span class='lbrace token'>{</span><span class='rbrace token'>}</span>
|
728
|
-
<span class='classes identifier id'>classes</span><span class='dot token'>.</span><span class='each identifier id'>each</span> <span class='lbrace token'>{</span> <span class='bitor op'>|</span><span class='clazz identifier id'>clazz</span><span class='bitor op'>|</span> <span class='current_word_classes_and_ids identifier id'>current_word_classes_and_ids</span><span class='lbrack token'>[</span><span class='clazz identifier id'>clazz</span><span class='dot token'>.</span><span class='name identifier id'>name</span><span class='rbrack token'>]</span> <span class='assign token'>=</span> <span class='lbrack token'>[</span><span class='rbrack token'>]</span> <span class='rbrace token'>}</span>
|
729
|
-
<span class='PoseAssignment constant id'>PoseAssignment</span><span class='dot token'>.</span><span class='joins identifier id'>joins</span><span class='lparen token'>(</span><span class='symbol val'>:pose_word</span><span class='rparen token'>)</span> \
|
730
|
-
<span class='dot token'>.</span><span class='where identifier id'>where</span><span class='lparen token'>(</span><span class='symbol val'>:pose_words</span> <span class='assign token'>=</span><span class='gt op'>></span> <span class='lbrace token'>{</span><span class='symbol val'>:text</span><span class='dot token'>.</span><span class='matches identifier id'>matches</span> <span class='assign token'>=</span><span class='gt op'>></span> <span class='dstring node'>"#{query_word}%"</span><span class='rbrace token'>}</span><span class='comma token'>,</span>
|
731
|
-
<span class='symbol val'>:posable_type</span> <span class='assign token'>=</span><span class='gt op'>></span> <span class='classes_names identifier id'>classes_names</span><span class='rparen token'>)</span> \
|
732
|
-
<span class='dot token'>.</span><span class='each identifier id'>each</span> <span class='do do kw'>do</span> <span class='bitor op'>|</span><span class='pose_assignment identifier id'>pose_assignment</span><span class='bitor op'>|</span>
|
733
|
-
<span class='current_word_classes_and_ids identifier id'>current_word_classes_and_ids</span><span class='lbrack token'>[</span><span class='pose_assignment identifier id'>pose_assignment</span><span class='dot token'>.</span><span class='posable_type identifier id'>posable_type</span><span class='rbrack token'>]</span> <span class='lshft op'><<</span> <span class='pose_assignment identifier id'>pose_assignment</span><span class='dot token'>.</span><span class='posable_id identifier id'>posable_id</span>
|
734
|
-
<span class='end end kw'>end</span>
|
735
|
-
|
736
|
-
<span class='current_word_classes_and_ids identifier id'>current_word_classes_and_ids</span><span class='dot token'>.</span><span class='each identifier id'>each</span> <span class='do do kw'>do</span> <span class='bitor op'>|</span><span class='class_name identifier id'>class_name</span><span class='comma token'>,</span> <span class='ids identifier id'>ids</span><span class='bitor op'>|</span>
|
737
|
-
<span class='if if kw'>if</span> <span class='result_classes_and_ids identifier id'>result_classes_and_ids</span><span class='dot token'>.</span><span class='has_key? fid id'>has_key?</span> <span class='class_name identifier id'>class_name</span>
|
738
|
-
<span class='result_classes_and_ids identifier id'>result_classes_and_ids</span><span class='lbrack token'>[</span><span class='class_name identifier id'>class_name</span><span class='rbrack token'>]</span> <span class='assign token'>=</span> <span class='result_classes_and_ids identifier id'>result_classes_and_ids</span><span class='lbrack token'>[</span><span class='class_name identifier id'>class_name</span><span class='rbrack token'>]</span> <span class='bitand op'>&</span> <span class='ids identifier id'>ids</span>
|
739
|
-
<span class='else else kw'>else</span>
|
740
|
-
<span class='result_classes_and_ids identifier id'>result_classes_and_ids</span><span class='lbrack token'>[</span><span class='class_name identifier id'>class_name</span><span class='rbrack token'>]</span> <span class='assign token'>=</span> <span class='ids identifier id'>ids</span>
|
741
|
-
<span class='end end kw'>end</span>
|
742
|
-
<span class='end end kw'>end</span>
|
743
|
-
<span class='end end kw'>end</span>
|
744
|
-
|
745
|
-
<span class='comment val'># Load the results by id.</span>
|
746
|
-
<span class='result identifier id'>result</span> <span class='assign token'>=</span> <span class='lbrace token'>{</span><span class='rbrace token'>}</span>
|
747
|
-
<span class='classes identifier id'>classes</span><span class='dot token'>.</span><span class='each identifier id'>each</span> <span class='lbrace token'>{</span> <span class='bitor op'>|</span><span class='clazz identifier id'>clazz</span><span class='bitor op'>|</span> <span class='result identifier id'>result</span><span class='lbrack token'>[</span><span class='clazz identifier id'>clazz</span><span class='rbrack token'>]</span> <span class='assign token'>=</span> <span class='lbrack token'>[</span><span class='rbrack token'>]</span> <span class='rbrace token'>}</span>
|
748
|
-
<span class='result_classes_and_ids identifier id'>result_classes_and_ids</span><span class='dot token'>.</span><span class='each identifier id'>each</span> <span class='do do kw'>do</span> <span class='bitor op'>|</span><span class='class_name identifier id'>class_name</span><span class='comma token'>,</span> <span class='ids identifier id'>ids</span><span class='bitor op'>|</span>
|
749
|
-
<span class='result_class identifier id'>result_class</span> <span class='assign token'>=</span> <span class='Kernel constant id'>Kernel</span><span class='dot token'>.</span><span class='const_get identifier id'>const_get</span> <span class='class_name identifier id'>class_name</span>
|
750
|
-
<span class='next next kw'>next</span> <span class='unless unless_mod kw'>unless</span> <span class='classes identifier id'>classes</span><span class='dot token'>.</span><span class='include? fid id'>include?</span> <span class='result_class identifier id'>result_class</span>
|
751
|
-
<span class='next next kw'>next</span> <span class='if if_mod kw'>if</span> <span class='ids identifier id'>ids</span><span class='dot token'>.</span><span class='empty? fid id'>empty?</span>
|
752
|
-
<span class='result identifier id'>result</span><span class='lbrack token'>[</span><span class='result_class identifier id'>result_class</span><span class='rbrack token'>]</span> <span class='assign token'>=</span> <span class='result_class identifier id'>result_class</span><span class='dot token'>.</span><span class='where identifier id'>where</span> <span class='symbol val'>:id</span> <span class='assign token'>=</span><span class='gt op'>></span> <span class='ids identifier id'>ids</span>
|
753
|
-
<span class='end end kw'>end</span>
|
754
|
-
|
755
|
-
<span class='result identifier id'>result</span>
|
756
|
-
<span class='end end kw'>end</span>
|
757
|
-
</pre>
|
758
|
-
</td>
|
759
|
-
</tr>
|
760
|
-
</table>
|
761
|
-
</div>
|
762
|
-
|
763
|
-
</div>
|
764
|
-
|
765
|
-
</div>
|
766
|
-
|
767
|
-
<div id="footer">
|
768
|
-
Generated on Wed Nov 16 11:48:27 2011 by
|
769
|
-
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
770
|
-
0.7.3 (ruby-1.8.7).
|
771
|
-
</div>
|
772
|
-
|
773
|
-
</body>
|
774
|
-
</html>
|