kharon 1.1.0 → 1.1.1
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.
- checksums.yaml +5 -13
- data/{.rspec → .rspec.old} +0 -0
- data/Gemfile +1 -0
- data/Gemfile.lock +12 -4
- data/dist/kharon-1.1.0.gem +0 -0
- data/doc/Kharon.html +384 -6
- data/doc/Kharon/Errors.html +1 -1
- data/doc/Kharon/Errors/Validation.html +1 -1
- data/doc/Kharon/Handlers.html +1 -1
- data/doc/Kharon/Handlers/Exceptions.html +1 -1
- data/doc/Kharon/Handlers/Messages.html +1 -1
- data/doc/Kharon/Processor.html +425 -0
- data/doc/Kharon/Processors.html +144 -0
- data/doc/Kharon/Processors/ArrayProcessor.html +429 -0
- data/doc/Kharon/Processors/BooleanProcessor.html +306 -0
- data/doc/Kharon/Processors/BoxProcessor.html +440 -0
- data/doc/Kharon/Processors/DateProcessor.html +306 -0
- data/doc/Kharon/Processors/DatetimeProcessor.html +306 -0
- data/doc/Kharon/Processors/EmailProcessor.html +307 -0
- data/doc/Kharon/Processors/HashProcessor.html +431 -0
- data/doc/Kharon/Processors/IntegerProcessor.html +441 -0
- data/doc/Kharon/Processors/NumericProcessor.html +463 -0
- data/doc/Kharon/Processors/SSIDProcessor.html +307 -0
- data/doc/Kharon/Processors/TextProcessor.html +430 -0
- data/doc/Kharon/Validate.html +17 -5
- data/doc/Kharon/Validator.html +198 -1194
- data/doc/_index.html +159 -1
- data/doc/class_list.html +1 -1
- data/doc/file.README.html +15 -4
- data/doc/index.html +15 -4
- data/doc/method_list.html +135 -39
- data/doc/top-level-namespace.html +1 -1
- data/kharon.gemspec +4 -2
- data/lib/kharon.rb +32 -2
- data/lib/kharon/processor.rb +162 -0
- data/lib/kharon/processors.rb +6 -0
- data/lib/kharon/processors/array_processor.rb +30 -0
- data/lib/kharon/processors/boolean_processor.rb +31 -0
- data/lib/kharon/processors/box_processor.rb +63 -0
- data/lib/kharon/processors/date_processor.rb +21 -0
- data/lib/kharon/processors/datetime_processor.rb +21 -0
- data/lib/kharon/processors/email_processor.rb +21 -0
- data/lib/kharon/processors/hash_processor.rb +31 -0
- data/lib/kharon/processors/integer_processor.rb +55 -0
- data/lib/kharon/processors/numeric_processor.rb +66 -0
- data/lib/kharon/processors/ssid_processor.rb +21 -0
- data/lib/kharon/processors/text_processor.rb +30 -0
- data/lib/kharon/validate.rb +1 -1
- data/lib/kharon/validator.rb +26 -390
- data/lib/kharon/version.rb +1 -1
- data/spec/results.html +5277 -321
- metadata +69 -28
data/doc/Kharon/Validate.html
CHANGED
@@ -247,15 +247,27 @@ given instructions.</p>
|
|
247
247
|
10
|
248
248
|
11
|
249
249
|
12
|
250
|
-
13
|
250
|
+
13
|
251
|
+
14
|
252
|
+
15
|
253
|
+
16
|
254
|
+
17
|
255
|
+
18
|
256
|
+
19</pre>
|
251
257
|
</td>
|
252
258
|
<td>
|
253
259
|
<pre class="code"><span class="info file"># File 'lib/kharon/validate.rb', line 9</span>
|
254
260
|
|
255
261
|
<span class='kw'>def</span> <span class='id identifier rubyid_validate'>validate</span><span class='lparen'>(</span><span class='id identifier rubyid_datas'>datas</span><span class='comma'>,</span> <span class='op'>&</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
|
256
|
-
<span class='
|
257
|
-
|
258
|
-
|
262
|
+
<span class='kw'>begin</span>
|
263
|
+
<span class='id identifier rubyid_validator'>validator</span> <span class='op'>=</span> <span class='const'>Kharon</span><span class='op'>::</span><span class='const'>Validator</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_datas'>datas</span><span class='rparen'>)</span>
|
264
|
+
<span class='id identifier rubyid_validator'>validator</span><span class='period'>.</span><span class='id identifier rubyid_instance_eval'>instance_eval</span><span class='lparen'>(</span><span class='op'>&</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
|
265
|
+
<span class='kw'>return</span> <span class='id identifier rubyid_validator'>validator</span><span class='period'>.</span><span class='id identifier rubyid_filtered'>filtered</span>
|
266
|
+
<span class='kw'>rescue</span> <span class='const'>Kharon</span><span class='op'>::</span><span class='const'>Errors</span><span class='op'>::</span><span class='const'>Validation</span> <span class='op'>=></span> <span class='id identifier rubyid_exception'>exception</span>
|
267
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='id identifier rubyid_exception'>exception</span>
|
268
|
+
<span class='kw'>rescue</span> <span class='const'>Exception</span> <span class='op'>=></span> <span class='id identifier rubyid_exception'>exception</span>
|
269
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='const'>Kharon</span><span class='op'>::</span><span class='const'>Errors</span><span class='op'>::</span><span class='const'>Validation</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='lbrace'>{</span><span class='label'>type:</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>standard</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='label'>exception:</span> <span class='id identifier rubyid_exception'>exception</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='comma'>,</span> <span class='label'>message:</span> <span class='id identifier rubyid_exception'>exception</span><span class='period'>.</span><span class='id identifier rubyid_message'>message</span><span class='comma'>,</span> <span class='label'>backtrace:</span> <span class='id identifier rubyid_exception'>exception</span><span class='period'>.</span><span class='id identifier rubyid_backtrace'>backtrace</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
270
|
+
<span class='kw'>end</span>
|
259
271
|
<span class='kw'>end</span></pre>
|
260
272
|
</td>
|
261
273
|
</tr>
|
@@ -267,7 +279,7 @@ given instructions.</p>
|
|
267
279
|
</div>
|
268
280
|
|
269
281
|
<div id="footer">
|
270
|
-
Generated on
|
282
|
+
Generated on Thu Jun 2 16:20:55 2016 by
|
271
283
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
272
284
|
0.8.7.6 (ruby-1.9.3).
|
273
285
|
</div>
|
data/doc/Kharon/Validator.html
CHANGED
@@ -219,95 +219,10 @@ keys for example) by the validator.</p>
|
|
219
219
|
</li>
|
220
220
|
|
221
221
|
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
<h2>
|
229
|
-
Instance Method Summary
|
230
|
-
<small>(<a href="#" class="summary_toggle">collapse</a>)</small>
|
231
|
-
</h2>
|
232
|
-
|
233
|
-
<ul class="summary">
|
234
|
-
|
235
|
-
<li class="public ">
|
236
|
-
<span class="summary_signature">
|
237
|
-
|
238
|
-
<a href="#any-instance_method" title="#any (instance method)">- (Object) <strong>any</strong>(key, options = {}) </a>
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
</span>
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
<span class="summary_desc"><div class='inline'>
|
253
|
-
<p>Doesn't check the type of the key and let it pass without modification.</p>
|
254
|
-
</div></span>
|
255
|
-
|
256
|
-
</li>
|
257
|
-
|
258
|
-
|
259
|
-
<li class="public ">
|
260
|
-
<span class="summary_signature">
|
261
|
-
|
262
|
-
<a href="#array-instance_method" title="#array (instance method)">- (Object) <strong>array</strong>(key, options = {}) </a>
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
</span>
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
<span class="summary_desc"><div class='inline'>
|
277
|
-
<p>Checks if the given key is an array or not.</p>
|
278
|
-
</div></span>
|
279
|
-
|
280
|
-
</li>
|
281
|
-
|
282
|
-
|
283
|
-
<li class="public ">
|
284
|
-
<span class="summary_signature">
|
285
|
-
|
286
|
-
<a href="#boolean-instance_method" title="#boolean (instance method)">- (Object) <strong>boolean</strong>(key, options = {}) </a>
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
</span>
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
<span class="summary_desc"><div class='inline'>
|
301
|
-
<p>Checks if the given key is a boolean or not.</p>
|
302
|
-
</div></span>
|
303
|
-
|
304
|
-
</li>
|
305
|
-
|
306
|
-
|
307
|
-
<li class="public ">
|
222
|
+
<li class="public ">
|
308
223
|
<span class="summary_signature">
|
309
224
|
|
310
|
-
<a href="#
|
225
|
+
<a href="#processors-instance_method" title="#processors (instance method)">- (Hash) <strong>processors</strong> </a>
|
311
226
|
|
312
227
|
|
313
228
|
|
@@ -315,29 +230,10 @@ keys for example) by the validator.</p>
|
|
315
230
|
|
316
231
|
|
317
232
|
|
318
|
-
|
319
|
-
|
320
|
-
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
<span class="summary_desc"><div class='inline'>
|
325
|
-
<p>Checks if the given key is a box (geofences) or not.</p>
|
326
|
-
</div></span>
|
327
|
-
|
328
|
-
</li>
|
329
|
-
|
330
|
-
|
331
|
-
<li class="public ">
|
332
|
-
<span class="summary_signature">
|
333
233
|
|
334
|
-
<
|
234
|
+
<span class="note title readonly">readonly</span>
|
335
235
|
|
336
|
-
|
337
236
|
|
338
|
-
</span>
|
339
|
-
|
340
|
-
|
341
237
|
|
342
238
|
|
343
239
|
|
@@ -346,59 +242,24 @@ keys for example) by the validator.</p>
|
|
346
242
|
|
347
243
|
|
348
244
|
<span class="summary_desc"><div class='inline'>
|
349
|
-
<p>
|
245
|
+
<p>THe processors to process and validate the keys depending on their types.</p>
|
350
246
|
</div></span>
|
351
247
|
|
352
248
|
</li>
|
353
249
|
|
354
|
-
|
355
|
-
<li class="public ">
|
356
|
-
<span class="summary_signature">
|
357
|
-
|
358
|
-
<a href="#datetime-instance_method" title="#datetime (instance method)">- (Object) <strong>datetime</strong>(key, options = {}) </a>
|
359
|
-
|
360
|
-
|
361
250
|
|
362
|
-
</
|
363
|
-
|
364
|
-
|
365
|
-
|
366
|
-
|
367
|
-
|
368
|
-
|
369
|
-
|
251
|
+
</ul>
|
370
252
|
|
371
|
-
|
372
|
-
<span class="summary_desc"><div class='inline'>
|
373
|
-
<p>Checks if the given key is a datetime or not.</p>
|
374
|
-
</div></span>
|
375
|
-
|
376
|
-
</li>
|
377
253
|
|
378
|
-
|
379
|
-
<li class="public ">
|
380
|
-
<span class="summary_signature">
|
381
|
-
|
382
|
-
<a href="#email-instance_method" title="#email (instance method)">- (Object) <strong>email</strong>(key, options = {}) </a>
|
383
|
-
|
384
254
|
|
385
|
-
|
386
|
-
</span>
|
387
|
-
|
388
|
-
|
389
|
-
|
390
|
-
|
391
|
-
|
392
|
-
|
393
|
-
|
394
255
|
|
395
256
|
|
396
|
-
<
|
397
|
-
|
398
|
-
</
|
399
|
-
|
400
|
-
</li>
|
257
|
+
<h2>
|
258
|
+
Instance Method Summary
|
259
|
+
<small>(<a href="#" class="summary_toggle">collapse</a>)</small>
|
260
|
+
</h2>
|
401
261
|
|
262
|
+
<ul class="summary">
|
402
263
|
|
403
264
|
<li class="public ">
|
404
265
|
<span class="summary_signature">
|
@@ -453,55 +314,7 @@ keys for example) by the validator.</p>
|
|
453
314
|
<li class="public ">
|
454
315
|
<span class="summary_signature">
|
455
316
|
|
456
|
-
<a href="#
|
457
|
-
|
458
|
-
|
459
|
-
|
460
|
-
</span>
|
461
|
-
|
462
|
-
|
463
|
-
|
464
|
-
|
465
|
-
|
466
|
-
|
467
|
-
|
468
|
-
|
469
|
-
|
470
|
-
<span class="summary_desc"><div class='inline'>
|
471
|
-
<p>Checks if the given key is an integer or not.</p>
|
472
|
-
</div></span>
|
473
|
-
|
474
|
-
</li>
|
475
|
-
|
476
|
-
|
477
|
-
<li class="public ">
|
478
|
-
<span class="summary_signature">
|
479
|
-
|
480
|
-
<a href="#numeric-instance_method" title="#numeric (instance method)">- (Object) <strong>numeric</strong>(key, options = {}) </a>
|
481
|
-
|
482
|
-
|
483
|
-
|
484
|
-
</span>
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
|
494
|
-
<span class="summary_desc"><div class='inline'>
|
495
|
-
<p>Checks if the given key is a numeric or not.</p>
|
496
|
-
</div></span>
|
497
|
-
|
498
|
-
</li>
|
499
|
-
|
500
|
-
|
501
|
-
<li class="public ">
|
502
|
-
<span class="summary_signature">
|
503
|
-
|
504
|
-
<a href="#ssid-instance_method" title="#ssid (instance method)">- (Object) <strong>ssid</strong>(key, options = {}) </a>
|
317
|
+
<a href="#method_missing-instance_method" title="#method_missing (instance method)">- (Object) <strong>method_missing</strong>(name, *arguments, &block) </a>
|
505
318
|
|
506
319
|
|
507
320
|
|
@@ -516,7 +329,8 @@ keys for example) by the validator.</p>
|
|
516
329
|
|
517
330
|
|
518
331
|
<span class="summary_desc"><div class='inline'>
|
519
|
-
<p>
|
332
|
+
<p>Method used to not directly define the different type validation methods,
|
333
|
+
but instead to look for it in the processors list.</p>
|
520
334
|
</div></span>
|
521
335
|
|
522
336
|
</li>
|
@@ -525,7 +339,7 @@ keys for example) by the validator.</p>
|
|
525
339
|
<li class="public ">
|
526
340
|
<span class="summary_signature">
|
527
341
|
|
528
|
-
<a href="#
|
342
|
+
<a href="#respond_to%3F-instance_method" title="#respond_to? (instance method)">- (Boolean) <strong>respond_to?</strong>(name, search_private = false) </a>
|
529
343
|
|
530
344
|
|
531
345
|
|
@@ -539,9 +353,7 @@ keys for example) by the validator.</p>
|
|
539
353
|
|
540
354
|
|
541
355
|
|
542
|
-
<span class="summary_desc"><div class='inline'>
|
543
|
-
<p>Checks if the given key is a not-empty string or not.</p>
|
544
|
-
</div></span>
|
356
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
545
357
|
|
546
358
|
</li>
|
547
359
|
|
@@ -610,19 +422,21 @@ keys for example) by the validator.</p>
|
|
610
422
|
<pre class="lines">
|
611
423
|
|
612
424
|
|
613
|
-
|
614
|
-
|
615
|
-
|
616
|
-
|
617
|
-
|
425
|
+
27
|
426
|
+
28
|
427
|
+
29
|
428
|
+
30
|
429
|
+
31
|
430
|
+
32</pre>
|
618
431
|
</td>
|
619
432
|
<td>
|
620
|
-
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line
|
433
|
+
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 27</span>
|
621
434
|
|
622
435
|
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_datas'>datas</span><span class='rparen'>)</span>
|
623
|
-
<span class='ivar'>@datas</span>
|
624
|
-
<span class='ivar'>@
|
625
|
-
<span class='ivar'>@
|
436
|
+
<span class='ivar'>@datas</span> <span class='op'>=</span> <span class='const'>Hash</span><span class='lbracket'>[</span><span class='id identifier rubyid_datas'>datas</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_k'>k</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='op'>|</span> <span class='lbracket'>[</span><span class='id identifier rubyid_k'>k</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='rbracket'>]</span> <span class='rbrace'>}</span><span class='rbracket'>]</span>
|
437
|
+
<span class='ivar'>@processors</span> <span class='op'>=</span> <span class='const'>Hash</span><span class='lbracket'>[</span><span class='const'>Kharon</span><span class='period'>.</span><span class='id identifier rubyid_processors'>processors</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_classname'>classname</span><span class='op'>|</span> <span class='lbracket'>[</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_classname'>classname</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span><span class='rbracket'>]</span> <span class='rbrace'>}</span><span class='rbracket'>]</span>
|
438
|
+
<span class='ivar'>@filtered</span> <span class='op'>=</span> <span class='const'>Hash</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
|
439
|
+
<span class='ivar'>@handler</span> <span class='op'>=</span> <span class='const'>Kharon</span><span class='period'>.</span><span class='id identifier rubyid_errors_handler'>errors_handler</span>
|
626
440
|
<span class='kw'>end</span></pre>
|
627
441
|
</td>
|
628
442
|
</tr>
|
@@ -630,16 +444,17 @@ keys for example) by the validator.</p>
|
|
630
444
|
</div>
|
631
445
|
|
632
446
|
</div>
|
633
|
-
|
634
|
-
<
|
635
|
-
|
447
|
+
<div id="method_missing_details" class="method_details_list">
|
448
|
+
<h2>Dynamic Method Handling</h2>
|
449
|
+
<p class="notice this">
|
450
|
+
This class handles dynamic methods through the <tt>method_missing</tt> method
|
636
451
|
|
637
|
-
|
638
|
-
<span id=""></span>
|
639
|
-
<div class="method_details first">
|
640
|
-
<h3 class="signature first" id="datas-instance_method">
|
452
|
+
</p>
|
641
453
|
|
642
|
-
|
454
|
+
<div class="method_details first">
|
455
|
+
<h3 class="signature first" id="method_missing-instance_method">
|
456
|
+
|
457
|
+
- (<tt>Object</tt>) <strong>method_missing</strong>(name, *arguments, &block)
|
643
458
|
|
644
459
|
|
645
460
|
|
@@ -648,804 +463,61 @@ keys for example) by the validator.</p>
|
|
648
463
|
</h3><div class="docstring">
|
649
464
|
<div class="discussion">
|
650
465
|
|
651
|
-
<p>
|
652
|
-
|
466
|
+
<p>Method used to not directly define the different type validation methods,
|
467
|
+
but instead to look for it in the processors list.</p>
|
653
468
|
|
654
469
|
|
655
470
|
</div>
|
656
471
|
</div>
|
657
472
|
<div class="tags">
|
658
|
-
|
659
|
-
<
|
660
|
-
<ul class="return">
|
473
|
+
<p class="tag_title">Parameters:</p>
|
474
|
+
<ul class="param">
|
661
475
|
|
662
476
|
<li>
|
663
477
|
|
478
|
+
<span class='name'>name</span>
|
664
479
|
|
665
|
-
|
480
|
+
|
481
|
+
<span class='type'>(<tt>String</tt>)</span>
|
666
482
|
|
667
483
|
|
668
484
|
|
669
485
|
—
|
670
486
|
<div class='inline'>
|
671
|
-
<p>
|
672
|
-
|
673
|
-
|
674
|
-
|
675
|
-
</li>
|
676
|
-
|
677
|
-
</ul>
|
678
|
-
|
679
|
-
</div><table class="source_code">
|
680
|
-
<tr>
|
681
|
-
<td>
|
682
|
-
<pre class="lines">
|
683
|
-
|
684
|
-
|
685
|
-
</pre>
|
686
|
-
</td>
|
687
|
-
<td>
|
688
|
-
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 7</span>
|
689
|
-
|
690
|
-
</pre>
|
691
|
-
</td>
|
692
|
-
</tr>
|
693
|
-
</table>
|
694
|
-
</div>
|
695
|
-
|
696
|
-
|
697
|
-
<span id="filtered=-instance_method"></span>
|
698
|
-
<div class="method_details ">
|
699
|
-
<h3 class="signature " id="filtered-instance_method">
|
700
|
-
|
701
|
-
- (<tt>Hash</tt>) <strong>filtered</strong>
|
702
|
-
|
703
|
-
|
704
|
-
|
705
|
-
|
706
|
-
|
707
|
-
</h3><div class="docstring">
|
708
|
-
<div class="discussion">
|
709
|
-
|
710
|
-
<p>Returns The filtered datas are the datas after they have been filtered
|
711
|
-
(renamed keys for example) by the validator.</p>
|
712
|
-
|
713
|
-
|
714
|
-
</div>
|
715
|
-
</div>
|
716
|
-
<div class="tags">
|
717
|
-
|
718
|
-
<p class="tag_title">Returns:</p>
|
719
|
-
<ul class="return">
|
720
|
-
|
721
|
-
<li>
|
722
|
-
|
723
|
-
|
724
|
-
<span class='type'>(<tt>Hash</tt>)</span>
|
725
|
-
|
726
|
-
|
727
|
-
|
728
|
-
—
|
729
|
-
<div class='inline'>
|
730
|
-
<p>The filtered datas are the datas after they have been filtered (renamed
|
731
|
-
keys for example) by the validator.</p>
|
732
|
-
</div>
|
733
|
-
|
734
|
-
</li>
|
735
|
-
|
736
|
-
</ul>
|
737
|
-
|
738
|
-
</div><table class="source_code">
|
739
|
-
<tr>
|
740
|
-
<td>
|
741
|
-
<pre class="lines">
|
742
|
-
|
743
|
-
|
744
|
-
</pre>
|
745
|
-
</td>
|
746
|
-
<td>
|
747
|
-
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 11</span>
|
748
|
-
|
749
|
-
</pre>
|
750
|
-
</td>
|
751
|
-
</tr>
|
752
|
-
</table>
|
753
|
-
</div>
|
754
|
-
|
755
|
-
|
756
|
-
<span id="handler=-instance_method"></span>
|
757
|
-
<div class="method_details ">
|
758
|
-
<h3 class="signature " id="handler-instance_method">
|
759
|
-
|
760
|
-
- (<tt>Object</tt>) <strong>handler</strong>
|
761
|
-
|
762
|
-
|
763
|
-
|
764
|
-
|
765
|
-
|
766
|
-
</h3><div class="docstring">
|
767
|
-
<div class="discussion">
|
768
|
-
|
769
|
-
<p>Returns the error handler given to this instance of the validator.</p>
|
770
|
-
|
771
|
-
|
772
|
-
</div>
|
773
|
-
</div>
|
774
|
-
<div class="tags">
|
775
|
-
|
776
|
-
<p class="tag_title">Returns:</p>
|
777
|
-
<ul class="return">
|
778
|
-
|
779
|
-
<li>
|
780
|
-
|
781
|
-
|
782
|
-
<span class='type'>(<tt>Object</tt>)</span>
|
783
|
-
|
784
|
-
|
785
|
-
|
786
|
-
—
|
787
|
-
<div class='inline'>
|
788
|
-
<p>the error handler given to this instance of the validator.</p>
|
789
|
-
</div>
|
790
|
-
|
791
|
-
</li>
|
792
|
-
|
793
|
-
</ul>
|
794
|
-
|
795
|
-
</div><table class="source_code">
|
796
|
-
<tr>
|
797
|
-
<td>
|
798
|
-
<pre class="lines">
|
799
|
-
|
800
|
-
|
801
|
-
</pre>
|
802
|
-
</td>
|
803
|
-
<td>
|
804
|
-
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 15</span>
|
805
|
-
|
806
|
-
</pre>
|
807
|
-
</td>
|
808
|
-
</tr>
|
809
|
-
</table>
|
810
|
-
</div>
|
811
|
-
|
812
|
-
</div>
|
813
|
-
|
814
|
-
|
815
|
-
<div id="instance_method_details" class="method_details_list">
|
816
|
-
<h2>Instance Method Details</h2>
|
817
|
-
|
818
|
-
|
819
|
-
<div class="method_details first">
|
820
|
-
<h3 class="signature first" id="any-instance_method">
|
821
|
-
|
822
|
-
- (<tt>Object</tt>) <strong>any</strong>(key, options = {})
|
823
|
-
|
824
|
-
|
825
|
-
|
826
|
-
|
827
|
-
|
828
|
-
</h3><div class="docstring">
|
829
|
-
<div class="discussion">
|
830
|
-
|
831
|
-
<p>Doesn't check the type of the key and let it pass without modification.</p>
|
832
|
-
|
833
|
-
|
834
|
-
</div>
|
835
|
-
</div>
|
836
|
-
<div class="tags">
|
837
|
-
|
838
|
-
<div class="examples">
|
839
|
-
<p class="tag_title">Examples:</p>
|
840
|
-
|
841
|
-
|
842
|
-
<p class="example_title"><div class='inline'>
|
843
|
-
<p>Just checks if the key is in the hash.</p>
|
844
|
-
</div></p>
|
845
|
-
|
846
|
-
<pre class="example code"><code><span class='ivar'>@validator</span><span class='period'>.</span><span class='id identifier rubyid_any'>any</span><span class='lparen'>(</span><span class='symbol'>:a_key</span><span class='comma'>,</span> <span class='label'>required:</span> <span class='kw'>true</span><span class='rparen'>)</span></code></pre>
|
847
|
-
|
848
|
-
</div>
|
849
|
-
<p class="tag_title">Parameters:</p>
|
850
|
-
<ul class="param">
|
851
|
-
|
852
|
-
<li>
|
853
|
-
|
854
|
-
<span class='name'>key</span>
|
855
|
-
|
856
|
-
|
857
|
-
<span class='type'>(<tt>Object</tt>)</span>
|
858
|
-
|
859
|
-
|
860
|
-
|
861
|
-
—
|
862
|
-
<div class='inline'>
|
863
|
-
<p>the key about which verify the type.</p>
|
864
|
-
</div>
|
865
|
-
|
866
|
-
</li>
|
867
|
-
|
868
|
-
<li>
|
869
|
-
|
870
|
-
<span class='name'>options</span>
|
871
|
-
|
872
|
-
|
873
|
-
<span class='type'>(<tt>Hash</tt>)</span>
|
874
|
-
|
875
|
-
|
876
|
-
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
877
|
-
|
878
|
-
|
879
|
-
—
|
880
|
-
<div class='inline'>
|
881
|
-
<p>a hash of options passed to this method (see documentation to know which
|
882
|
-
options pass).</p>
|
883
|
-
</div>
|
884
|
-
|
885
|
-
</li>
|
886
|
-
|
887
|
-
</ul>
|
888
|
-
|
889
|
-
|
890
|
-
</div><table class="source_code">
|
891
|
-
<tr>
|
892
|
-
<td>
|
893
|
-
<pre class="lines">
|
894
|
-
|
895
|
-
|
896
|
-
64
|
897
|
-
65
|
898
|
-
66
|
899
|
-
67</pre>
|
900
|
-
</td>
|
901
|
-
<td>
|
902
|
-
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 64</span>
|
903
|
-
|
904
|
-
<span class='kw'>def</span> <span class='id identifier rubyid_any'>any</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
905
|
-
<span class='id identifier rubyid_before_all'>before_all</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
906
|
-
<span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tlambda'>-></span><span class='lparen'>(</span><span class='id identifier rubyid_item'>item</span><span class='rparen'>)</span><span class='tlambeg'>{</span><span class='id identifier rubyid_item'>item</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
907
|
-
<span class='kw'>end</span></pre>
|
908
|
-
</td>
|
909
|
-
</tr>
|
910
|
-
</table>
|
911
|
-
</div>
|
912
|
-
|
913
|
-
<div class="method_details ">
|
914
|
-
<h3 class="signature " id="array-instance_method">
|
915
|
-
|
916
|
-
- (<tt>Object</tt>) <strong>array</strong>(key, options = {})
|
917
|
-
|
918
|
-
|
919
|
-
|
920
|
-
|
921
|
-
|
922
|
-
</h3><div class="docstring">
|
923
|
-
<div class="discussion">
|
924
|
-
|
925
|
-
<p>Checks if the given key is an array or not.</p>
|
926
|
-
|
927
|
-
|
928
|
-
</div>
|
929
|
-
</div>
|
930
|
-
<div class="tags">
|
931
|
-
|
932
|
-
<div class="examples">
|
933
|
-
<p class="tag_title">Examples:</p>
|
934
|
-
|
935
|
-
|
936
|
-
<p class="example_title"><div class='inline'>
|
937
|
-
<p>Validates a key so it has to be an array, and checks if it has some values
|
938
|
-
in it.</p>
|
939
|
-
</div></p>
|
940
|
-
|
941
|
-
<pre class="example code"><code><span class='ivar'>@validator</span><span class='period'>.</span><span class='id identifier rubyid_date'>date</span><span class='lparen'>(</span><span class='symbol'>:an_array</span><span class='comma'>,</span> <span class='label'>contains?:</span> <span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>first</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>second</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span><span class='rparen'>)</span></code></pre>
|
942
|
-
|
943
|
-
</div>
|
944
|
-
<p class="tag_title">Parameters:</p>
|
945
|
-
<ul class="param">
|
946
|
-
|
947
|
-
<li>
|
948
|
-
|
949
|
-
<span class='name'>key</span>
|
950
|
-
|
951
|
-
|
952
|
-
<span class='type'>(<tt>Object</tt>)</span>
|
953
|
-
|
954
|
-
|
955
|
-
|
956
|
-
—
|
957
|
-
<div class='inline'>
|
958
|
-
<p>the key about which verify the type.</p>
|
959
|
-
</div>
|
960
|
-
|
961
|
-
</li>
|
962
|
-
|
963
|
-
<li>
|
964
|
-
|
965
|
-
<span class='name'>options</span>
|
966
|
-
|
967
|
-
|
968
|
-
<span class='type'>(<tt>Hash</tt>)</span>
|
969
|
-
|
970
|
-
|
971
|
-
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
972
|
-
|
973
|
-
|
974
|
-
—
|
975
|
-
<div class='inline'>
|
976
|
-
<p>a hash of options passed to this method (see documentation to know which
|
977
|
-
options pass).</p>
|
978
|
-
</div>
|
979
|
-
|
980
|
-
</li>
|
981
|
-
|
982
|
-
</ul>
|
983
|
-
|
984
|
-
|
985
|
-
</div><table class="source_code">
|
986
|
-
<tr>
|
987
|
-
<td>
|
988
|
-
<pre class="lines">
|
989
|
-
|
990
|
-
|
991
|
-
94
|
992
|
-
95
|
993
|
-
96
|
994
|
-
97</pre>
|
995
|
-
</td>
|
996
|
-
<td>
|
997
|
-
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 94</span>
|
998
|
-
|
999
|
-
<span class='kw'>def</span> <span class='id identifier rubyid_array'>array</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
1000
|
-
<span class='id identifier rubyid_before_all'>before_all</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
1001
|
-
<span class='id identifier rubyid_is_typed?'>is_typed?</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='const'>Array</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_store_array'>store_array</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tlambda'>-></span><span class='lparen'>(</span><span class='id identifier rubyid_item'>item</span><span class='rparen'>)</span><span class='tlambeg'>{</span><span class='id identifier rubyid_item'>item</span><span class='period'>.</span><span class='id identifier rubyid_to_a'>to_a</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span> <span class='op'>:</span> <span class='id identifier rubyid_raise_type_error'>raise_type_error</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Array</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
1002
|
-
<span class='kw'>end</span></pre>
|
1003
|
-
</td>
|
1004
|
-
</tr>
|
1005
|
-
</table>
|
1006
|
-
</div>
|
1007
|
-
|
1008
|
-
<div class="method_details ">
|
1009
|
-
<h3 class="signature " id="boolean-instance_method">
|
1010
|
-
|
1011
|
-
- (<tt>Object</tt>) <strong>boolean</strong>(key, options = {})
|
1012
|
-
|
1013
|
-
|
1014
|
-
|
1015
|
-
|
1016
|
-
|
1017
|
-
</h3><div class="docstring">
|
1018
|
-
<div class="discussion">
|
1019
|
-
|
1020
|
-
<p>Checks if the given key is a boolean or not.</p>
|
1021
|
-
|
1022
|
-
|
1023
|
-
</div>
|
1024
|
-
</div>
|
1025
|
-
<div class="tags">
|
1026
|
-
|
1027
|
-
<div class="examples">
|
1028
|
-
<p class="tag_title">Examples:</p>
|
1029
|
-
|
1030
|
-
|
1031
|
-
<p class="example_title"><div class='inline'>
|
1032
|
-
<p>Validates a key so it has to be a boolean.</p>
|
1033
|
-
</div></p>
|
1034
|
-
|
1035
|
-
<pre class="example code"><code><span class='ivar'>@validator</span><span class='period'>.</span><span class='id identifier rubyid_boolean'>boolean</span><span class='lparen'>(</span><span class='symbol'>:a_boolean</span><span class='rparen'>)</span></code></pre>
|
1036
|
-
|
1037
|
-
</div>
|
1038
|
-
<p class="tag_title">Parameters:</p>
|
1039
|
-
<ul class="param">
|
1040
|
-
|
1041
|
-
<li>
|
1042
|
-
|
1043
|
-
<span class='name'>key</span>
|
1044
|
-
|
1045
|
-
|
1046
|
-
<span class='type'>(<tt>Object</tt>)</span>
|
1047
|
-
|
1048
|
-
|
1049
|
-
|
1050
|
-
—
|
1051
|
-
<div class='inline'>
|
1052
|
-
<p>the key about which verify the type.</p>
|
1053
|
-
</div>
|
1054
|
-
|
1055
|
-
</li>
|
1056
|
-
|
1057
|
-
<li>
|
1058
|
-
|
1059
|
-
<span class='name'>options</span>
|
1060
|
-
|
1061
|
-
|
1062
|
-
<span class='type'>(<tt>Hash</tt>)</span>
|
1063
|
-
|
1064
|
-
|
1065
|
-
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
1066
|
-
|
1067
|
-
|
1068
|
-
—
|
1069
|
-
<div class='inline'>
|
1070
|
-
<p>a hash of options passed to this method (see documentation to know which
|
1071
|
-
options pass).</p>
|
1072
|
-
</div>
|
1073
|
-
|
1074
|
-
</li>
|
1075
|
-
|
1076
|
-
</ul>
|
1077
|
-
|
1078
|
-
|
1079
|
-
</div><table class="source_code">
|
1080
|
-
<tr>
|
1081
|
-
<td>
|
1082
|
-
<pre class="lines">
|
1083
|
-
|
1084
|
-
|
1085
|
-
114
|
1086
|
-
115
|
1087
|
-
116
|
1088
|
-
117</pre>
|
1089
|
-
</td>
|
1090
|
-
<td>
|
1091
|
-
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 114</span>
|
1092
|
-
|
1093
|
-
<span class='kw'>def</span> <span class='id identifier rubyid_boolean'>boolean</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
1094
|
-
<span class='id identifier rubyid_before_all'>before_all</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
1095
|
-
<span class='id identifier rubyid_match?'>match?</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>(true)|(false)</span><span class='regexp_end'>/</span></span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tlambda'>-></span><span class='lparen'>(</span><span class='id identifier rubyid_item'>item</span><span class='rparen'>)</span><span class='tlambeg'>{</span><span class='id identifier rubyid_to_boolean'>to_boolean</span><span class='lparen'>(</span><span class='id identifier rubyid_item'>item</span><span class='rparen'>)</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span> <span class='op'>:</span> <span class='id identifier rubyid_raise_type_error'>raise_type_error</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Numeric</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
1096
|
-
<span class='kw'>end</span></pre>
|
1097
|
-
</td>
|
1098
|
-
</tr>
|
1099
|
-
</table>
|
1100
|
-
</div>
|
1101
|
-
|
1102
|
-
<div class="method_details ">
|
1103
|
-
<h3 class="signature " id="box-instance_method">
|
1104
|
-
|
1105
|
-
- (<tt>Object</tt>) <strong>box</strong>(key, options = {})
|
1106
|
-
|
1107
|
-
|
1108
|
-
|
1109
|
-
|
1110
|
-
|
1111
|
-
</h3><div class="docstring">
|
1112
|
-
<div class="discussion">
|
1113
|
-
|
1114
|
-
<p>Checks if the given key is a box (geofences) or not. A box is composed of
|
1115
|
-
four numbers (positive or negative, decimal or not) separed by commas.</p>
|
1116
|
-
|
1117
|
-
|
1118
|
-
</div>
|
1119
|
-
</div>
|
1120
|
-
<div class="tags">
|
1121
|
-
|
1122
|
-
<div class="examples">
|
1123
|
-
<p class="tag_title">Examples:</p>
|
1124
|
-
|
1125
|
-
|
1126
|
-
<p class="example_title"><div class='inline'>
|
1127
|
-
<p>Validates a key so it has to be a box.</p>
|
1128
|
-
</div></p>
|
1129
|
-
|
1130
|
-
<pre class="example code"><code><span class='ivar'>@validator</span><span class='period'>.</span><span class='id identifier rubyid_box'>box</span><span class='lparen'>(</span><span class='symbol'>:a_box</span><span class='rparen'>)</span></code></pre>
|
1131
|
-
|
1132
|
-
</div>
|
1133
|
-
<p class="tag_title">Parameters:</p>
|
1134
|
-
<ul class="param">
|
1135
|
-
|
1136
|
-
<li>
|
1137
|
-
|
1138
|
-
<span class='name'>key</span>
|
1139
|
-
|
1140
|
-
|
1141
|
-
<span class='type'>(<tt>Object</tt>)</span>
|
1142
|
-
|
1143
|
-
|
1144
|
-
|
1145
|
-
—
|
1146
|
-
<div class='inline'>
|
1147
|
-
<p>the key about which verify the type.</p>
|
1148
|
-
</div>
|
1149
|
-
|
1150
|
-
</li>
|
1151
|
-
|
1152
|
-
<li>
|
1153
|
-
|
1154
|
-
<span class='name'>options</span>
|
1155
|
-
|
1156
|
-
|
1157
|
-
<span class='type'>(<tt>Hash</tt>)</span>
|
1158
|
-
|
1159
|
-
|
1160
|
-
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
1161
|
-
|
1162
|
-
|
1163
|
-
—
|
1164
|
-
<div class='inline'>
|
1165
|
-
<p>a hash of options passed to this method (see documentation to know which
|
1166
|
-
options pass).</p>
|
1167
|
-
</div>
|
1168
|
-
|
1169
|
-
</li>
|
1170
|
-
|
1171
|
-
</ul>
|
1172
|
-
|
1173
|
-
|
1174
|
-
</div><table class="source_code">
|
1175
|
-
<tr>
|
1176
|
-
<td>
|
1177
|
-
<pre class="lines">
|
1178
|
-
|
1179
|
-
|
1180
|
-
134
|
1181
|
-
135
|
1182
|
-
136
|
1183
|
-
137</pre>
|
1184
|
-
</td>
|
1185
|
-
<td>
|
1186
|
-
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 134</span>
|
1187
|
-
|
1188
|
-
<span class='kw'>def</span> <span class='id identifier rubyid_box'>box</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
1189
|
-
<span class='id identifier rubyid_before_all'>before_all</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
1190
|
-
<span class='id identifier rubyid_match?'>match?</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^(?:[+-]?\d{1,3}(?:\.\d{1,7})?,?){4}$</span><span class='regexp_end'>/</span></span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_store_box'>store_box</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span> <span class='op'>:</span> <span class='id identifier rubyid_raise_type_error'>raise_type_error</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Box</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
1191
|
-
<span class='kw'>end</span></pre>
|
1192
|
-
</td>
|
1193
|
-
</tr>
|
1194
|
-
</table>
|
1195
|
-
</div>
|
1196
|
-
|
1197
|
-
<div class="method_details ">
|
1198
|
-
<h3 class="signature " id="date-instance_method">
|
1199
|
-
|
1200
|
-
- (<tt>Object</tt>) <strong>date</strong>(key, options = {})
|
1201
|
-
|
1202
|
-
|
1203
|
-
|
1204
|
-
|
1205
|
-
|
1206
|
-
</h3><div class="docstring">
|
1207
|
-
<div class="discussion">
|
1208
|
-
|
1209
|
-
<p>Checks if the given key is a date or not.</p>
|
1210
|
-
|
1211
|
-
|
1212
|
-
</div>
|
1213
|
-
</div>
|
1214
|
-
<div class="tags">
|
1215
|
-
|
1216
|
-
<div class="examples">
|
1217
|
-
<p class="tag_title">Examples:</p>
|
1218
|
-
|
1219
|
-
|
1220
|
-
<p class="example_title"><div class='inline'>
|
1221
|
-
<p>Validates a key so it has to be a date, and depends on another key.</p>
|
1222
|
-
</div></p>
|
1223
|
-
|
1224
|
-
<pre class="example code"><code><span class='ivar'>@validator</span><span class='period'>.</span><span class='id identifier rubyid_date'>date</span><span class='lparen'>(</span><span class='symbol'>:a_date</span><span class='comma'>,</span> <span class='label'>dependency:</span> <span class='symbol'>:another_key</span><span class='rparen'>)</span></code></pre>
|
1225
|
-
|
1226
|
-
</div>
|
1227
|
-
<p class="tag_title">Parameters:</p>
|
1228
|
-
<ul class="param">
|
1229
|
-
|
1230
|
-
<li>
|
1231
|
-
|
1232
|
-
<span class='name'>key</span>
|
1233
|
-
|
1234
|
-
|
1235
|
-
<span class='type'>(<tt>Object</tt>)</span>
|
1236
|
-
|
1237
|
-
|
1238
|
-
|
1239
|
-
—
|
1240
|
-
<div class='inline'>
|
1241
|
-
<p>the key about which verify the type.</p>
|
1242
|
-
</div>
|
1243
|
-
|
1244
|
-
</li>
|
1245
|
-
|
1246
|
-
<li>
|
1247
|
-
|
1248
|
-
<span class='name'>options</span>
|
1249
|
-
|
1250
|
-
|
1251
|
-
<span class='type'>(<tt>Hash</tt>)</span>
|
1252
|
-
|
1253
|
-
|
1254
|
-
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
1255
|
-
|
1256
|
-
|
1257
|
-
—
|
1258
|
-
<div class='inline'>
|
1259
|
-
<p>a hash of options passed to this method (see documentation to know which
|
1260
|
-
options pass).</p>
|
1261
|
-
</div>
|
1262
|
-
|
1263
|
-
</li>
|
1264
|
-
|
1265
|
-
</ul>
|
1266
|
-
|
1267
|
-
|
1268
|
-
</div><table class="source_code">
|
1269
|
-
<tr>
|
1270
|
-
<td>
|
1271
|
-
<pre class="lines">
|
1272
|
-
|
1273
|
-
|
1274
|
-
84
|
1275
|
-
85
|
1276
|
-
86
|
1277
|
-
87</pre>
|
1278
|
-
</td>
|
1279
|
-
<td>
|
1280
|
-
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 84</span>
|
1281
|
-
|
1282
|
-
<span class='kw'>def</span> <span class='id identifier rubyid_date'>date</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
1283
|
-
<span class='id identifier rubyid_before_all'>before_all</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
1284
|
-
<span class='kw'>begin</span><span class='semicolon'>;</span> <span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tlambda'>-></span><span class='lparen'>(</span><span class='id identifier rubyid_item'>item</span><span class='rparen'>)</span><span class='tlambeg'>{</span><span class='const'>Date</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_item'>item</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='rparen'>)</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span><span class='semicolon'>;</span> <span class='kw'>rescue</span><span class='semicolon'>;</span> <span class='id identifier rubyid_raise_type_error'>raise_type_error</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Date</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='semicolon'>;</span> <span class='kw'>end</span>
|
1285
|
-
<span class='kw'>end</span></pre>
|
1286
|
-
</td>
|
1287
|
-
</tr>
|
1288
|
-
</table>
|
1289
|
-
</div>
|
1290
|
-
|
1291
|
-
<div class="method_details ">
|
1292
|
-
<h3 class="signature " id="datetime-instance_method">
|
1293
|
-
|
1294
|
-
- (<tt>Object</tt>) <strong>datetime</strong>(key, options = {})
|
1295
|
-
|
1296
|
-
|
1297
|
-
|
1298
|
-
|
1299
|
-
|
1300
|
-
</h3><div class="docstring">
|
1301
|
-
<div class="discussion">
|
1302
|
-
|
1303
|
-
<p>Checks if the given key is a datetime or not.</p>
|
1304
|
-
|
1305
|
-
|
1306
|
-
</div>
|
1307
|
-
</div>
|
1308
|
-
<div class="tags">
|
1309
|
-
|
1310
|
-
<div class="examples">
|
1311
|
-
<p class="tag_title">Examples:</p>
|
1312
|
-
|
1313
|
-
|
1314
|
-
<p class="example_title"><div class='inline'>
|
1315
|
-
<p>Validates a key so it has to be a datetime, and depends on two other keys.</p>
|
1316
|
-
</div></p>
|
1317
|
-
|
1318
|
-
<pre class="example code"><code><span class='ivar'>@validator</span><span class='period'>.</span><span class='id identifier rubyid_datetime'>datetime</span><span class='lparen'>(</span><span class='symbol'>:a_datetime</span><span class='comma'>,</span> <span class='label'>dependencies:</span> <span class='lbracket'>[</span><span class='symbol'>:another_key</span><span class='comma'>,</span> <span class='symbol'>:a_third_key</span><span class='rbracket'>]</span><span class='rparen'>)</span></code></pre>
|
1319
|
-
|
1320
|
-
</div>
|
1321
|
-
<p class="tag_title">Parameters:</p>
|
1322
|
-
<ul class="param">
|
1323
|
-
|
1324
|
-
<li>
|
1325
|
-
|
1326
|
-
<span class='name'>key</span>
|
1327
|
-
|
1328
|
-
|
1329
|
-
<span class='type'>(<tt>Object</tt>)</span>
|
1330
|
-
|
1331
|
-
|
1332
|
-
|
1333
|
-
—
|
1334
|
-
<div class='inline'>
|
1335
|
-
<p>the key about which verify the type.</p>
|
1336
|
-
</div>
|
1337
|
-
|
1338
|
-
</li>
|
1339
|
-
|
1340
|
-
<li>
|
1341
|
-
|
1342
|
-
<span class='name'>options</span>
|
1343
|
-
|
1344
|
-
|
1345
|
-
<span class='type'>(<tt>Hash</tt>)</span>
|
1346
|
-
|
1347
|
-
|
1348
|
-
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
1349
|
-
|
1350
|
-
|
1351
|
-
—
|
1352
|
-
<div class='inline'>
|
1353
|
-
<p>a hash of options passed to this method (see documentation to know which
|
1354
|
-
options pass).</p>
|
1355
|
-
</div>
|
1356
|
-
|
1357
|
-
</li>
|
1358
|
-
|
1359
|
-
</ul>
|
1360
|
-
|
1361
|
-
|
1362
|
-
</div><table class="source_code">
|
1363
|
-
<tr>
|
1364
|
-
<td>
|
1365
|
-
<pre class="lines">
|
1366
|
-
|
1367
|
-
|
1368
|
-
74
|
1369
|
-
75
|
1370
|
-
76
|
1371
|
-
77</pre>
|
1372
|
-
</td>
|
1373
|
-
<td>
|
1374
|
-
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 74</span>
|
1375
|
-
|
1376
|
-
<span class='kw'>def</span> <span class='id identifier rubyid_datetime'>datetime</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
1377
|
-
<span class='id identifier rubyid_before_all'>before_all</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
1378
|
-
<span class='kw'>begin</span><span class='semicolon'>;</span> <span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tlambda'>-></span><span class='lparen'>(</span><span class='id identifier rubyid_item'>item</span><span class='rparen'>)</span><span class='tlambeg'>{</span><span class='const'>DateTime</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_item'>item</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='rparen'>)</span><span class='rbrace'>}</span> <span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span><span class='semicolon'>;</span> <span class='kw'>rescue</span><span class='semicolon'>;</span> <span class='id identifier rubyid_raise_type_error'>raise_type_error</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>DateTime</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='semicolon'>;</span> <span class='kw'>end</span>
|
1379
|
-
<span class='kw'>end</span></pre>
|
1380
|
-
</td>
|
1381
|
-
</tr>
|
1382
|
-
</table>
|
1383
|
-
</div>
|
1384
|
-
|
1385
|
-
<div class="method_details ">
|
1386
|
-
<h3 class="signature " id="email-instance_method">
|
1387
|
-
|
1388
|
-
- (<tt>Object</tt>) <strong>email</strong>(key, options = {})
|
1389
|
-
|
1390
|
-
|
1391
|
-
|
1392
|
-
|
1393
|
-
|
1394
|
-
</h3><div class="docstring">
|
1395
|
-
<div class="discussion">
|
1396
|
-
|
1397
|
-
<p>Checks if the given key is an email or not.</p>
|
1398
|
-
|
1399
|
-
|
1400
|
-
</div>
|
1401
|
-
</div>
|
1402
|
-
<div class="tags">
|
1403
|
-
|
1404
|
-
<div class="examples">
|
1405
|
-
<p class="tag_title">Examples:</p>
|
1406
|
-
|
1407
|
-
|
1408
|
-
<p class="example_title"><div class='inline'>
|
1409
|
-
<p>Validates a key so it has to be an email.</p>
|
1410
|
-
</div></p>
|
1411
|
-
|
1412
|
-
<pre class="example code"><code><span class='ivar'>@validator</span><span class='period'>.</span><span class='id identifier rubyid_email'>email</span><span class='lparen'>(</span><span class='symbol'>:email</span><span class='rparen'>)</span></code></pre>
|
1413
|
-
|
1414
|
-
</div>
|
1415
|
-
<p class="tag_title">Parameters:</p>
|
1416
|
-
<ul class="param">
|
487
|
+
<p>the name of the not found method.</p>
|
488
|
+
</div>
|
489
|
+
|
490
|
+
</li>
|
1417
491
|
|
1418
492
|
<li>
|
1419
493
|
|
1420
|
-
<span class='name'>
|
494
|
+
<span class='name'>arguments</span>
|
1421
495
|
|
1422
496
|
|
1423
|
-
<span class='type'>(<tt>
|
497
|
+
<span class='type'>(<tt>Array</tt>)</span>
|
1424
498
|
|
1425
499
|
|
1426
500
|
|
1427
501
|
—
|
1428
502
|
<div class='inline'>
|
1429
|
-
<p>the
|
503
|
+
<p>the arguments passed to the not found method when it’s called.</p>
|
1430
504
|
</div>
|
1431
505
|
|
1432
506
|
</li>
|
1433
507
|
|
1434
508
|
<li>
|
1435
509
|
|
1436
|
-
<span class='name'>
|
1437
|
-
|
510
|
+
<span class='name'>block</span>
|
1438
511
|
|
1439
|
-
<span class='type'>(<tt>Hash</tt>)</span>
|
1440
512
|
|
513
|
+
<span class='type'>(<tt>Proc</tt>)</span>
|
1441
514
|
|
1442
|
-
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
1443
515
|
|
1444
516
|
|
1445
517
|
—
|
1446
518
|
<div class='inline'>
|
1447
|
-
<p>
|
1448
|
-
|
519
|
+
<p>the block that might have been passed to the not found method when it’s
|
520
|
+
called.</p>
|
1449
521
|
</div>
|
1450
522
|
|
1451
523
|
</li>
|
@@ -1459,27 +531,48 @@ options pass).</p>
|
|
1459
531
|
<pre class="lines">
|
1460
532
|
|
1461
533
|
|
1462
|
-
|
1463
|
-
|
1464
|
-
|
1465
|
-
|
1466
|
-
|
1467
|
-
|
1468
|
-
|
1469
|
-
|
1470
|
-
|
1471
|
-
|
1472
|
-
|
534
|
+
38
|
535
|
+
39
|
536
|
+
40
|
537
|
+
41
|
538
|
+
42
|
539
|
+
43
|
540
|
+
44
|
541
|
+
45
|
542
|
+
46
|
543
|
+
47
|
544
|
+
48</pre>
|
545
|
+
</td>
|
546
|
+
<td>
|
547
|
+
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 38</span>
|
548
|
+
|
549
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_method_missing'>method_missing</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='op'>*</span><span class='id identifier rubyid_arguments'>arguments</span><span class='comma'>,</span> <span class='op'>&</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
|
550
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_respond_to?'>respond_to?</span> <span class='id identifier rubyid_name'>name</span>
|
551
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_arguments'>arguments</span><span class='period'>.</span><span class='id identifier rubyid_count'>count</span> <span class='op'>==</span> <span class='int'>1</span>
|
552
|
+
<span class='id identifier rubyid_processors'>processors</span><span class='lbracket'>[</span><span class='id identifier rubyid_name'>name</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_process'>process</span><span class='lparen'>(</span><span class='id identifier rubyid_arguments'>arguments</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='rparen'>)</span>
|
553
|
+
<span class='kw'>elsif</span> <span class='id identifier rubyid_arguments'>arguments</span><span class='period'>.</span><span class='id identifier rubyid_count'>count</span> <span class='op'>==</span> <span class='int'>2</span>
|
554
|
+
<span class='id identifier rubyid_processors'>processors</span><span class='lbracket'>[</span><span class='id identifier rubyid_name'>name</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_process'>process</span><span class='lparen'>(</span><span class='id identifier rubyid_arguments'>arguments</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='id identifier rubyid_arguments'>arguments</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span><span class='rparen'>)</span>
|
555
|
+
<span class='kw'>end</span>
|
556
|
+
<span class='kw'>else</span>
|
557
|
+
<span class='kw'>super</span>
|
558
|
+
<span class='kw'>end</span>
|
1473
559
|
<span class='kw'>end</span></pre>
|
1474
560
|
</td>
|
1475
561
|
</tr>
|
1476
562
|
</table>
|
1477
563
|
</div>
|
564
|
+
|
565
|
+
</div>
|
566
|
+
|
567
|
+
<div id="instance_attr_details" class="attr_details">
|
568
|
+
<h2>Instance Attribute Details</h2>
|
1478
569
|
|
1479
|
-
|
1480
|
-
|
570
|
+
|
571
|
+
<span id=""></span>
|
572
|
+
<div class="method_details first">
|
573
|
+
<h3 class="signature first" id="datas-instance_method">
|
1481
574
|
|
1482
|
-
- (<tt>
|
575
|
+
- (<tt>Hash</tt>) <strong>datas</strong> <span class="extras">(readonly)</span>
|
1483
576
|
|
1484
577
|
|
1485
578
|
|
@@ -1488,92 +581,57 @@ options pass).</p>
|
|
1488
581
|
</h3><div class="docstring">
|
1489
582
|
<div class="discussion">
|
1490
583
|
|
1491
|
-
<p>
|
584
|
+
<p>Returns The datas to filter, they shouldn’t be modified to guarantee their
|
585
|
+
integrity.</p>
|
1492
586
|
|
1493
587
|
|
1494
588
|
</div>
|
1495
589
|
</div>
|
1496
590
|
<div class="tags">
|
1497
591
|
|
1498
|
-
|
1499
|
-
|
1500
|
-
|
1501
|
-
|
1502
|
-
<p class="example_title"><div class='inline'>
|
1503
|
-
<p>Validates a key so it has to be a hash, and checks if it has some keys.</p>
|
1504
|
-
</div></p>
|
1505
|
-
|
1506
|
-
<pre class="example code"><code><span class='ivar'>@validator</span><span class='period'>.</span><span class='id identifier rubyid_date'>date</span><span class='lparen'>(</span><span class='symbol'>:a_hash</span><span class='comma'>,</span> <span class='label'>has_keys:</span> <span class='lbracket'>[</span><span class='symbol'>:first</span><span class='comma'>,</span> <span class='symbol'>:second</span><span class='rbracket'>]</span><span class='rparen'>)</span></code></pre>
|
1507
|
-
|
1508
|
-
</div>
|
1509
|
-
<p class="tag_title">Parameters:</p>
|
1510
|
-
<ul class="param">
|
1511
|
-
|
1512
|
-
<li>
|
1513
|
-
|
1514
|
-
<span class='name'>key</span>
|
1515
|
-
|
1516
|
-
|
1517
|
-
<span class='type'>(<tt>Object</tt>)</span>
|
1518
|
-
|
1519
|
-
|
1520
|
-
|
1521
|
-
—
|
1522
|
-
<div class='inline'>
|
1523
|
-
<p>the key about which verify the type.</p>
|
1524
|
-
</div>
|
1525
|
-
|
1526
|
-
</li>
|
592
|
+
<p class="tag_title">Returns:</p>
|
593
|
+
<ul class="return">
|
1527
594
|
|
1528
595
|
<li>
|
1529
596
|
|
1530
|
-
<span class='name'>options</span>
|
1531
|
-
|
1532
597
|
|
1533
598
|
<span class='type'>(<tt>Hash</tt>)</span>
|
1534
599
|
|
1535
600
|
|
1536
|
-
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
1537
|
-
|
1538
601
|
|
1539
602
|
—
|
1540
603
|
<div class='inline'>
|
1541
|
-
<p>
|
1542
|
-
|
604
|
+
<p>The datas to filter, they shouldn’t be modified to guarantee their
|
605
|
+
integrity.</p>
|
1543
606
|
</div>
|
1544
607
|
|
1545
608
|
</li>
|
1546
609
|
|
1547
610
|
</ul>
|
1548
611
|
|
1549
|
-
|
1550
612
|
</div><table class="source_code">
|
1551
613
|
<tr>
|
1552
614
|
<td>
|
1553
615
|
<pre class="lines">
|
1554
616
|
|
1555
617
|
|
1556
|
-
|
1557
|
-
105
|
1558
|
-
106
|
1559
|
-
107</pre>
|
618
|
+
</pre>
|
1560
619
|
</td>
|
1561
620
|
<td>
|
1562
|
-
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line
|
621
|
+
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 7</span>
|
1563
622
|
|
1564
|
-
|
1565
|
-
<span class='id identifier rubyid_before_all'>before_all</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
1566
|
-
<span class='id identifier rubyid_is_typed?'>is_typed?</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='const'>Hash</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_store_hash'>store_hash</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tlambda'>-></span><span class='lparen'>(</span><span class='id identifier rubyid_item'>item</span><span class='rparen'>)</span><span class='tlambeg'>{</span><span class='const'>Hash</span><span class='period'>.</span><span class='id identifier rubyid_try_convert'>try_convert</span><span class='lparen'>(</span><span class='id identifier rubyid_item'>item</span><span class='rparen'>)</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span> <span class='op'>:</span> <span class='id identifier rubyid_raise_type_error'>raise_type_error</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Hash</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
1567
|
-
<span class='kw'>end</span></pre>
|
623
|
+
</pre>
|
1568
624
|
</td>
|
1569
625
|
</tr>
|
1570
626
|
</table>
|
1571
627
|
</div>
|
1572
628
|
|
629
|
+
|
630
|
+
<span id="filtered=-instance_method"></span>
|
1573
631
|
<div class="method_details ">
|
1574
|
-
<h3 class="signature " id="
|
632
|
+
<h3 class="signature " id="filtered-instance_method">
|
1575
633
|
|
1576
|
-
- (<tt>
|
634
|
+
- (<tt>Hash</tt>) <strong>filtered</strong>
|
1577
635
|
|
1578
636
|
|
1579
637
|
|
@@ -1582,92 +640,57 @@ options pass).</p>
|
|
1582
640
|
</h3><div class="docstring">
|
1583
641
|
<div class="discussion">
|
1584
642
|
|
1585
|
-
<p>
|
643
|
+
<p>Returns The filtered datas are the datas after they have been filtered
|
644
|
+
(renamed keys for example) by the validator.</p>
|
1586
645
|
|
1587
646
|
|
1588
647
|
</div>
|
1589
648
|
</div>
|
1590
649
|
<div class="tags">
|
1591
650
|
|
1592
|
-
|
1593
|
-
|
1594
|
-
|
1595
|
-
|
1596
|
-
<p class="example_title"><div class='inline'>
|
1597
|
-
<p>Validates a key so it has to be an integer superior or equal to 2.</p>
|
1598
|
-
</div></p>
|
1599
|
-
|
1600
|
-
<pre class="example code"><code><span class='ivar'>@validator</span><span class='period'>.</span><span class='id identifier rubyid_integer'>integer</span><span class='lparen'>(</span><span class='symbol'>:an_integer_key</span><span class='comma'>,</span> <span class='label'>min:</span> <span class='int'>2</span><span class='rparen'>)</span></code></pre>
|
1601
|
-
|
1602
|
-
</div>
|
1603
|
-
<p class="tag_title">Parameters:</p>
|
1604
|
-
<ul class="param">
|
1605
|
-
|
1606
|
-
<li>
|
1607
|
-
|
1608
|
-
<span class='name'>key</span>
|
1609
|
-
|
1610
|
-
|
1611
|
-
<span class='type'>(<tt>Object</tt>)</span>
|
1612
|
-
|
1613
|
-
|
1614
|
-
|
1615
|
-
—
|
1616
|
-
<div class='inline'>
|
1617
|
-
<p>the key about which verify the type.</p>
|
1618
|
-
</div>
|
1619
|
-
|
1620
|
-
</li>
|
651
|
+
<p class="tag_title">Returns:</p>
|
652
|
+
<ul class="return">
|
1621
653
|
|
1622
654
|
<li>
|
1623
655
|
|
1624
|
-
<span class='name'>options</span>
|
1625
|
-
|
1626
656
|
|
1627
657
|
<span class='type'>(<tt>Hash</tt>)</span>
|
1628
658
|
|
1629
659
|
|
1630
|
-
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
1631
|
-
|
1632
660
|
|
1633
661
|
—
|
1634
662
|
<div class='inline'>
|
1635
|
-
<p>
|
1636
|
-
|
663
|
+
<p>The filtered datas are the datas after they have been filtered (renamed
|
664
|
+
keys for example) by the validator.</p>
|
1637
665
|
</div>
|
1638
666
|
|
1639
667
|
</li>
|
1640
668
|
|
1641
669
|
</ul>
|
1642
670
|
|
1643
|
-
|
1644
671
|
</div><table class="source_code">
|
1645
672
|
<tr>
|
1646
673
|
<td>
|
1647
674
|
<pre class="lines">
|
1648
675
|
|
1649
676
|
|
1650
|
-
|
1651
|
-
35
|
1652
|
-
36
|
1653
|
-
37</pre>
|
677
|
+
</pre>
|
1654
678
|
</td>
|
1655
679
|
<td>
|
1656
|
-
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line
|
680
|
+
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 15</span>
|
1657
681
|
|
1658
|
-
|
1659
|
-
<span class='id identifier rubyid_before_all'>before_all</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
1660
|
-
<span class='id identifier rubyid_match?'>match?</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>\A\d+\Z</span><span class='regexp_end'>/</span></span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_store_numeric'>store_numeric</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tlambda'>-></span><span class='lparen'>(</span><span class='id identifier rubyid_item'>item</span><span class='rparen'>)</span><span class='tlambeg'>{</span><span class='id identifier rubyid_item'>item</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span> <span class='op'>:</span> <span class='id identifier rubyid_raise_type_error'>raise_type_error</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Integer</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
1661
|
-
<span class='kw'>end</span></pre>
|
682
|
+
</pre>
|
1662
683
|
</td>
|
1663
684
|
</tr>
|
1664
685
|
</table>
|
1665
686
|
</div>
|
1666
687
|
|
688
|
+
|
689
|
+
<span id="handler=-instance_method"></span>
|
1667
690
|
<div class="method_details ">
|
1668
|
-
<h3 class="signature " id="
|
691
|
+
<h3 class="signature " id="handler-instance_method">
|
1669
692
|
|
1670
|
-
- (<tt>Object</tt>) <strong>
|
693
|
+
- (<tt>Object</tt>) <strong>handler</strong>
|
1671
694
|
|
1672
695
|
|
1673
696
|
|
@@ -1676,32 +699,18 @@ options pass).</p>
|
|
1676
699
|
</h3><div class="docstring">
|
1677
700
|
<div class="discussion">
|
1678
701
|
|
1679
|
-
<p>
|
702
|
+
<p>Returns the error handler given to this instance of the validator.</p>
|
1680
703
|
|
1681
704
|
|
1682
705
|
</div>
|
1683
706
|
</div>
|
1684
707
|
<div class="tags">
|
1685
708
|
|
1686
|
-
|
1687
|
-
|
1688
|
-
|
1689
|
-
|
1690
|
-
<p class="example_title"><div class='inline'>
|
1691
|
-
<p>Validates a key so it has to be a numeric, is required and is between 2 and
|
1692
|
-
5.5.</p>
|
1693
|
-
</div></p>
|
1694
|
-
|
1695
|
-
<pre class="example code"><code><span class='ivar'>@validator</span><span class='period'>.</span><span class='id identifier rubyid_numeric'>numeric</span><span class='lparen'>(</span><span class='symbol'>:a_numeric_key</span><span class='comma'>,</span> <span class='label'>required:</span> <span class='kw'>true</span><span class='comma'>,</span> <span class='label'>between:</span> <span class='lbracket'>[</span><span class='int'>2</span><span class='comma'>,</span> <span class='float'>5.5</span><span class='rbracket'>]</span><span class='rparen'>)</span></code></pre>
|
1696
|
-
|
1697
|
-
</div>
|
1698
|
-
<p class="tag_title">Parameters:</p>
|
1699
|
-
<ul class="param">
|
709
|
+
<p class="tag_title">Returns:</p>
|
710
|
+
<ul class="return">
|
1700
711
|
|
1701
712
|
<li>
|
1702
713
|
|
1703
|
-
<span class='name'>key</span>
|
1704
|
-
|
1705
714
|
|
1706
715
|
<span class='type'>(<tt>Object</tt>)</span>
|
1707
716
|
|
@@ -1709,60 +718,99 @@ options pass).</p>
|
|
1709
718
|
|
1710
719
|
—
|
1711
720
|
<div class='inline'>
|
1712
|
-
<p>the
|
721
|
+
<p>the error handler given to this instance of the validator.</p>
|
1713
722
|
</div>
|
1714
723
|
|
1715
724
|
</li>
|
1716
725
|
|
1717
|
-
|
726
|
+
</ul>
|
727
|
+
|
728
|
+
</div><table class="source_code">
|
729
|
+
<tr>
|
730
|
+
<td>
|
731
|
+
<pre class="lines">
|
732
|
+
|
733
|
+
|
734
|
+
</pre>
|
735
|
+
</td>
|
736
|
+
<td>
|
737
|
+
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 19</span>
|
738
|
+
|
739
|
+
</pre>
|
740
|
+
</td>
|
741
|
+
</tr>
|
742
|
+
</table>
|
743
|
+
</div>
|
744
|
+
|
1718
745
|
|
1719
|
-
|
746
|
+
<span id=""></span>
|
747
|
+
<div class="method_details ">
|
748
|
+
<h3 class="signature " id="processors-instance_method">
|
749
|
+
|
750
|
+
- (<tt>Hash</tt>) <strong>processors</strong> <span class="extras">(readonly)</span>
|
751
|
+
|
752
|
+
|
753
|
+
|
754
|
+
|
755
|
+
|
756
|
+
</h3><div class="docstring">
|
757
|
+
<div class="discussion">
|
758
|
+
|
759
|
+
<p>Returns THe processors to process and validate the keys depending on their
|
760
|
+
types.</p>
|
761
|
+
|
762
|
+
|
763
|
+
</div>
|
764
|
+
</div>
|
765
|
+
<div class="tags">
|
766
|
+
|
767
|
+
<p class="tag_title">Returns:</p>
|
768
|
+
<ul class="return">
|
769
|
+
|
770
|
+
<li>
|
1720
771
|
|
1721
772
|
|
1722
773
|
<span class='type'>(<tt>Hash</tt>)</span>
|
1723
774
|
|
1724
775
|
|
1725
|
-
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
1726
|
-
|
1727
776
|
|
1728
777
|
—
|
1729
778
|
<div class='inline'>
|
1730
|
-
<p>
|
1731
|
-
options pass).</p>
|
779
|
+
<p>THe processors to process and validate the keys depending on their types.</p>
|
1732
780
|
</div>
|
1733
781
|
|
1734
782
|
</li>
|
1735
783
|
|
1736
784
|
</ul>
|
1737
785
|
|
1738
|
-
|
1739
786
|
</div><table class="source_code">
|
1740
787
|
<tr>
|
1741
788
|
<td>
|
1742
789
|
<pre class="lines">
|
1743
790
|
|
1744
791
|
|
1745
|
-
|
1746
|
-
45
|
1747
|
-
46
|
1748
|
-
47</pre>
|
792
|
+
</pre>
|
1749
793
|
</td>
|
1750
794
|
<td>
|
1751
|
-
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line
|
795
|
+
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 11</span>
|
1752
796
|
|
1753
|
-
|
1754
|
-
<span class='id identifier rubyid_before_all'>before_all</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
1755
|
-
<span class='id identifier rubyid_match?'>match?</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>\A([+-]?\d+)([,.](\d+))?\Z</span><span class='regexp_end'>/</span></span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_store_decimal'>store_decimal</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tlambda'>-></span><span class='lparen'>(</span><span class='id identifier rubyid_item'>item</span><span class='rparen'>)</span><span class='tlambeg'>{</span><span class='id identifier rubyid_item'>item</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='period'>.</span><span class='id identifier rubyid_sub'>sub</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>,</span><span class='regexp_end'>/</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>.</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_to_f'>to_f</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span> <span class='op'>:</span> <span class='id identifier rubyid_raise_type_error'>raise_type_error</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Numeric</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
1756
|
-
<span class='kw'>end</span></pre>
|
797
|
+
</pre>
|
1757
798
|
</td>
|
1758
799
|
</tr>
|
1759
800
|
</table>
|
1760
801
|
</div>
|
1761
802
|
|
1762
|
-
|
1763
|
-
|
803
|
+
</div>
|
804
|
+
|
805
|
+
|
806
|
+
<div id="instance_method_details" class="method_details_list">
|
807
|
+
<h2>Instance Method Details</h2>
|
808
|
+
|
809
|
+
|
810
|
+
<div class="method_details first">
|
811
|
+
<h3 class="signature first" id="hash-instance_method">
|
1764
812
|
|
1765
|
-
- (<tt>Object</tt>) <strong>
|
813
|
+
- (<tt>Object</tt>) <strong>hash</strong>(key, options = {})
|
1766
814
|
|
1767
815
|
|
1768
816
|
|
@@ -1771,7 +819,8 @@ options pass).</p>
|
|
1771
819
|
</h3><div class="docstring">
|
1772
820
|
<div class="discussion">
|
1773
821
|
|
1774
|
-
<p>Checks if the given key is a
|
822
|
+
<p>Checks if the given key is a hash or not. This method MUST be defined to
|
823
|
+
override the #hash method with these parameters.</p>
|
1775
824
|
|
1776
825
|
|
1777
826
|
</div>
|
@@ -1783,10 +832,10 @@ options pass).</p>
|
|
1783
832
|
|
1784
833
|
|
1785
834
|
<p class="example_title"><div class='inline'>
|
1786
|
-
<p>Validates a key so it has to be a
|
835
|
+
<p>Validates a key so it has to be a hash, and checks if it has some keys.</p>
|
1787
836
|
</div></p>
|
1788
837
|
|
1789
|
-
<pre class="example code"><code><span class='ivar'>@validator</span><span class='period'>.</span><span class='id identifier
|
838
|
+
<pre class="example code"><code><span class='ivar'>@validator</span><span class='period'>.</span><span class='id identifier rubyid_date'>date</span><span class='lparen'>(</span><span class='symbol'>:a_hash</span><span class='comma'>,</span> <span class='label'>has_keys:</span> <span class='lbracket'>[</span><span class='symbol'>:first</span><span class='comma'>,</span> <span class='symbol'>:second</span><span class='rbracket'>]</span><span class='rparen'>)</span></code></pre>
|
1790
839
|
|
1791
840
|
</div>
|
1792
841
|
<p class="tag_title">Parameters:</p>
|
@@ -1836,17 +885,15 @@ options pass).</p>
|
|
1836
885
|
<pre class="lines">
|
1837
886
|
|
1838
887
|
|
1839
|
-
|
1840
|
-
|
1841
|
-
|
1842
|
-
127</pre>
|
888
|
+
60
|
889
|
+
61
|
890
|
+
62</pre>
|
1843
891
|
</td>
|
1844
892
|
<td>
|
1845
|
-
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line
|
893
|
+
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 60</span>
|
1846
894
|
|
1847
|
-
<span class='kw'>def</span> <span class='id identifier
|
1848
|
-
<span class='id identifier
|
1849
|
-
<span class='id identifier rubyid_match?'>match?</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^[0-9a-fA-F]{24}$</span><span class='regexp_end'>/</span></span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tlambda'>-></span><span class='lparen'>(</span><span class='id identifier rubyid_item'>item</span><span class='rparen'>)</span><span class='tlambeg'>{</span><span class='const'>BSON</span><span class='op'>::</span><span class='const'>ObjectId</span><span class='period'>.</span><span class='id identifier rubyid_from_string'>from_string</span><span class='lparen'>(</span><span class='id identifier rubyid_item'>item</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='rparen'>)</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span> <span class='op'>:</span> <span class='id identifier rubyid_raise_type_error'>raise_type_error</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Moped::BSON::ObjectId</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
895
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_hash'>hash</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
896
|
+
<span class='id identifier rubyid_processors'>processors</span><span class='lbracket'>[</span><span class='symbol'>:hash</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_process'>process</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
1850
897
|
<span class='kw'>end</span></pre>
|
1851
898
|
</td>
|
1852
899
|
</tr>
|
@@ -1854,9 +901,9 @@ options pass).</p>
|
|
1854
901
|
</div>
|
1855
902
|
|
1856
903
|
<div class="method_details ">
|
1857
|
-
<h3 class="signature " id="
|
904
|
+
<h3 class="signature " id="respond_to?-instance_method">
|
1858
905
|
|
1859
|
-
- (<tt>
|
906
|
+
- (<tt>Boolean</tt>) <strong>respond_to?</strong>(name, search_private = false)
|
1860
907
|
|
1861
908
|
|
1862
909
|
|
@@ -1865,83 +912,40 @@ options pass).</p>
|
|
1865
912
|
</h3><div class="docstring">
|
1866
913
|
<div class="discussion">
|
1867
914
|
|
1868
|
-
<p>Checks if the given key is a not-empty string or not.</p>
|
1869
|
-
|
1870
915
|
|
1871
916
|
</div>
|
1872
917
|
</div>
|
1873
918
|
<div class="tags">
|
1874
919
|
|
1875
|
-
|
1876
|
-
|
1877
|
-
|
1878
|
-
|
1879
|
-
<p class="example_title"><div class='inline'>
|
1880
|
-
<p>Validates a key so it has to be a string, and seems like and email address
|
1881
|
-
(not sure of the regular expression though).</p>
|
1882
|
-
</div></p>
|
1883
|
-
|
1884
|
-
<pre class="example code"><code><span class='ivar'>@validator</span><span class='period'>.</span><span class='id identifier rubyid_text'>text</span><span class='lparen'>(</span><span class='symbol'>:an_email</span><span class='comma'>,</span> <span class='label'>regex:</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>[a-zA-Z]+@[a-zA-Z]+\.[a-zA-Z]{2-4}</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span></code></pre>
|
1885
|
-
|
1886
|
-
</div>
|
1887
|
-
<p class="tag_title">Parameters:</p>
|
1888
|
-
<ul class="param">
|
1889
|
-
|
1890
|
-
<li>
|
1891
|
-
|
1892
|
-
<span class='name'>key</span>
|
1893
|
-
|
1894
|
-
|
1895
|
-
<span class='type'>(<tt>Object</tt>)</span>
|
1896
|
-
|
1897
|
-
|
1898
|
-
|
1899
|
-
—
|
1900
|
-
<div class='inline'>
|
1901
|
-
<p>the key about which verify the type.</p>
|
1902
|
-
</div>
|
1903
|
-
|
1904
|
-
</li>
|
920
|
+
<p class="tag_title">Returns:</p>
|
921
|
+
<ul class="return">
|
1905
922
|
|
1906
923
|
<li>
|
1907
924
|
|
1908
|
-
<span class='name'>options</span>
|
1909
|
-
|
1910
|
-
|
1911
|
-
<span class='type'>(<tt>Hash</tt>)</span>
|
1912
|
-
|
1913
925
|
|
1914
|
-
<
|
926
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
1915
927
|
|
1916
928
|
|
1917
|
-
—
|
1918
|
-
<div class='inline'>
|
1919
|
-
<p>a hash of options passed to this method (see documentation to know which
|
1920
|
-
options pass).</p>
|
1921
|
-
</div>
|
1922
929
|
|
1923
930
|
</li>
|
1924
931
|
|
1925
932
|
</ul>
|
1926
933
|
|
1927
|
-
|
1928
934
|
</div><table class="source_code">
|
1929
935
|
<tr>
|
1930
936
|
<td>
|
1931
937
|
<pre class="lines">
|
1932
938
|
|
1933
939
|
|
1934
|
-
|
1935
|
-
|
1936
|
-
|
1937
|
-
57</pre>
|
940
|
+
50
|
941
|
+
51
|
942
|
+
52</pre>
|
1938
943
|
</td>
|
1939
944
|
<td>
|
1940
|
-
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line
|
945
|
+
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 50</span>
|
1941
946
|
|
1942
|
-
<span class='kw'>def</span> <span class='id identifier
|
1943
|
-
<span class='id identifier
|
1944
|
-
<span class='id identifier rubyid_is_typed?'>is_typed?</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='const'>String</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_store_text'>store_text</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tlambda'>-></span><span class='lparen'>(</span><span class='id identifier rubyid_item'>item</span><span class='rparen'>)</span><span class='tlambeg'>{</span><span class='id identifier rubyid_item'>item</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span> <span class='op'>:</span> <span class='id identifier rubyid_raise_type_error'>raise_type_error</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>String</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
947
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_respond_to?'>respond_to?</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_search_private'>search_private</span> <span class='op'>=</span> <span class='kw'>false</span><span class='rparen'>)</span>
|
948
|
+
<span class='id identifier rubyid_processors'>processors</span><span class='period'>.</span><span class='id identifier rubyid_keys'>keys</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='kw'>true</span> <span class='op'>:</span> <span class='kw'>super</span>
|
1945
949
|
<span class='kw'>end</span></pre>
|
1946
950
|
</td>
|
1947
951
|
</tr>
|
@@ -1953,7 +957,7 @@ options pass).</p>
|
|
1953
957
|
</div>
|
1954
958
|
|
1955
959
|
<div id="footer">
|
1956
|
-
Generated on
|
960
|
+
Generated on Thu Jun 2 16:20:55 2016 by
|
1957
961
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
1958
962
|
0.8.7.6 (ruby-1.9.3).
|
1959
963
|
</div>
|