kharon 0.5.1 → 1.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.
- checksums.yaml +15 -0
- data/.gitignore +1 -0
- data/.rspec +2 -1
- data/Gemfile +1 -10
- data/Gemfile.lock +29 -16
- data/README.md +135 -26
- data/{kharon-0.0.1.gem → dist/kharon-0.0.1.gem} +0 -0
- data/{kharon-0.0.2.gem → dist/kharon-0.0.2.gem} +0 -0
- data/{kharon-0.0.3.gem → dist/kharon-0.0.3.gem} +0 -0
- data/{kharon-0.1.0.gem → dist/kharon-0.1.0.gem} +0 -0
- data/{kharon-0.2.0.gem → dist/kharon-0.2.0.gem} +0 -0
- data/{kharon-0.3.0.gem → dist/kharon-0.3.0.gem} +0 -0
- data/{kharon-0.3.1.gem → dist/kharon-0.3.1.gem} +0 -0
- data/{kharon-0.4.0.gem → dist/kharon-0.4.0.gem} +0 -0
- data/{kharon-0.5.0.gem → dist/kharon-0.5.0.gem} +0 -0
- data/dist/kharon-0.5.1.gem +0 -0
- data/doc/Kharon.html +364 -0
- data/doc/Kharon/Configuration.html +452 -0
- data/doc/Kharon/Errors.html +145 -0
- data/doc/Kharon/Errors/Validation.html +436 -0
- data/doc/Kharon/Handlers.html +144 -0
- data/doc/Kharon/Handlers/Exceptions.html +273 -0
- data/doc/Kharon/Handlers/Messages.html +425 -0
- data/doc/Kharon/Helpers.html +277 -0
- data/doc/Kharon/Validator.html +1962 -0
- data/doc/_index.html +187 -0
- data/doc/class_list.html +58 -0
- data/doc/css/common.css +1 -0
- data/doc/css/full_list.css +57 -0
- data/doc/css/style.css +339 -0
- data/doc/file.README.html +415 -0
- data/doc/file.results.html +1578 -0
- data/doc/file_list.html +63 -0
- data/doc/frames.html +26 -0
- data/doc/index.html +415 -0
- data/doc/js/app.js +219 -0
- data/doc/js/full_list.js +181 -0
- data/doc/js/jquery.js +4 -0
- data/doc/method_list.html +207 -0
- data/doc/top-level-namespace.html +112 -0
- data/kharon.gemspec +9 -1
- data/lib/kharon.rb +7 -11
- data/lib/kharon/errors.rb +7 -0
- data/lib/kharon/errors/validation.rb +2 -0
- data/lib/kharon/handlers.rb +8 -0
- data/lib/kharon/handlers/exceptions.rb +3 -1
- data/lib/kharon/handlers/messages.rb +11 -4
- data/lib/kharon/validator.rb +17 -5
- data/lib/kharon/version.rb +2 -1
- data/spec/lib/kharon/handlers/messages_spec.rb +11 -0
- data/spec/lib/kharon/validator_spec.rb +6 -0
- data/spec/results.html +1506 -0
- metadata +140 -20
- data/lib/kharon/configuration.rb +0 -28
- data/lib/kharon/helpers/validate.rb +0 -15
|
@@ -0,0 +1,277 @@
|
|
|
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: Kharon::Helpers
|
|
8
|
+
|
|
9
|
+
— Documentation by YARD 0.8.7.6
|
|
10
|
+
|
|
11
|
+
</title>
|
|
12
|
+
|
|
13
|
+
<link rel="stylesheet" href="../css/style.css" type="text/css" charset="utf-8" />
|
|
14
|
+
|
|
15
|
+
<link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" />
|
|
16
|
+
|
|
17
|
+
<script type="text/javascript" charset="utf-8">
|
|
18
|
+
hasFrames = window.top.frames.main ? true : false;
|
|
19
|
+
relpath = '../';
|
|
20
|
+
framesUrl = "../frames.html#!Kharon/Helpers.html";
|
|
21
|
+
</script>
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
|
|
25
|
+
|
|
26
|
+
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
</head>
|
|
30
|
+
<body>
|
|
31
|
+
<div id="header">
|
|
32
|
+
<div id="menu">
|
|
33
|
+
|
|
34
|
+
<a href="../_index.html">Index (H)</a> »
|
|
35
|
+
<span class='title'><span class='object_link'><a href="../Kharon.html" title="Kharon (module)">Kharon</a></span></span>
|
|
36
|
+
»
|
|
37
|
+
<span class="title">Helpers</span>
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
|
|
41
|
+
</div>
|
|
42
|
+
|
|
43
|
+
<div id="search">
|
|
44
|
+
|
|
45
|
+
<a class="full_list_link" id="class_list_link"
|
|
46
|
+
href="../class_list.html">
|
|
47
|
+
Class List
|
|
48
|
+
</a>
|
|
49
|
+
|
|
50
|
+
<a class="full_list_link" id="method_list_link"
|
|
51
|
+
href="../method_list.html">
|
|
52
|
+
Method List
|
|
53
|
+
</a>
|
|
54
|
+
|
|
55
|
+
<a class="full_list_link" id="file_list_link"
|
|
56
|
+
href="../file_list.html">
|
|
57
|
+
File List
|
|
58
|
+
</a>
|
|
59
|
+
|
|
60
|
+
</div>
|
|
61
|
+
<div class="clear"></div>
|
|
62
|
+
</div>
|
|
63
|
+
|
|
64
|
+
<iframe id="search_frame"></iframe>
|
|
65
|
+
|
|
66
|
+
<div id="content"><h1>Module: Kharon::Helpers
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
</h1>
|
|
71
|
+
|
|
72
|
+
<dl class="box">
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
<dt class="r1 last">Defined in:</dt>
|
|
82
|
+
<dd class="r1 last">lib/kharon/helpers.rb<span class="defines">,<br />
|
|
83
|
+
lib/kharon/helpers/validate.rb</span>
|
|
84
|
+
</dd>
|
|
85
|
+
|
|
86
|
+
</dl>
|
|
87
|
+
<div class="clear"></div>
|
|
88
|
+
|
|
89
|
+
<h2>Overview</h2><div class="docstring">
|
|
90
|
+
<div class="discussion">
|
|
91
|
+
|
|
92
|
+
<p>This module contains helpers made for Rails or Sinatra applications and
|
|
93
|
+
using the Kharon validator.</p>
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
</div>
|
|
97
|
+
</div>
|
|
98
|
+
<div class="tags">
|
|
99
|
+
|
|
100
|
+
<p class="tag_title">Author:</p>
|
|
101
|
+
<ul class="author">
|
|
102
|
+
|
|
103
|
+
<li>
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
<div class='inline'>
|
|
110
|
+
<p>Vincent Courtois <courtois.vincent@outlook.com></p>
|
|
111
|
+
</div>
|
|
112
|
+
|
|
113
|
+
</li>
|
|
114
|
+
|
|
115
|
+
</ul>
|
|
116
|
+
|
|
117
|
+
</div>
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
<h2>
|
|
126
|
+
Instance Method Summary
|
|
127
|
+
<small>(<a href="#" class="summary_toggle">collapse</a>)</small>
|
|
128
|
+
</h2>
|
|
129
|
+
|
|
130
|
+
<ul class="summary">
|
|
131
|
+
|
|
132
|
+
<li class="public ">
|
|
133
|
+
<span class="summary_signature">
|
|
134
|
+
|
|
135
|
+
<a href="#validate-instance_method" title="#validate (instance method)">- (Hash) <strong>validate</strong>(datas, &block) </a>
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
</span>
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
<span class="summary_desc"><div class='inline'>
|
|
150
|
+
<p>Validates the datas passed as parameter with a Phenix::Validator and the
|
|
151
|
+
given instructions.</p>
|
|
152
|
+
</div></span>
|
|
153
|
+
|
|
154
|
+
</li>
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
</ul>
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
<div id="instance_method_details" class="method_details_list">
|
|
163
|
+
<h2>Instance Method Details</h2>
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
<div class="method_details first">
|
|
167
|
+
<h3 class="signature first" id="validate-instance_method">
|
|
168
|
+
|
|
169
|
+
- (<tt>Hash</tt>) <strong>validate</strong>(datas, &block)
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
</h3><div class="docstring">
|
|
176
|
+
<div class="discussion">
|
|
177
|
+
|
|
178
|
+
<p>Validates the datas passed as parameter with a Phenix::Validator and the
|
|
179
|
+
given instructions.</p>
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
</div>
|
|
183
|
+
</div>
|
|
184
|
+
<div class="tags">
|
|
185
|
+
<p class="tag_title">Parameters:</p>
|
|
186
|
+
<ul class="param">
|
|
187
|
+
|
|
188
|
+
<li>
|
|
189
|
+
|
|
190
|
+
<span class='name'>datas</span>
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
—
|
|
198
|
+
<div class='inline'>
|
|
199
|
+
<p>the parameters to validate with the given instructions.</p>
|
|
200
|
+
</div>
|
|
201
|
+
|
|
202
|
+
</li>
|
|
203
|
+
|
|
204
|
+
<li>
|
|
205
|
+
|
|
206
|
+
<span class='name'>block</span>
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
<span class='type'>(<tt>Proc</tt>)</span>
|
|
210
|
+
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
—
|
|
214
|
+
<div class='inline'>
|
|
215
|
+
<p>the instructions to apply on the validator.</p>
|
|
216
|
+
</div>
|
|
217
|
+
|
|
218
|
+
</li>
|
|
219
|
+
|
|
220
|
+
</ul>
|
|
221
|
+
|
|
222
|
+
<p class="tag_title">Returns:</p>
|
|
223
|
+
<ul class="return">
|
|
224
|
+
|
|
225
|
+
<li>
|
|
226
|
+
|
|
227
|
+
|
|
228
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
|
229
|
+
|
|
230
|
+
|
|
231
|
+
|
|
232
|
+
—
|
|
233
|
+
<div class='inline'>
|
|
234
|
+
<p>the validated and filtered datas.</p>
|
|
235
|
+
</div>
|
|
236
|
+
|
|
237
|
+
</li>
|
|
238
|
+
|
|
239
|
+
</ul>
|
|
240
|
+
|
|
241
|
+
</div><table class="source_code">
|
|
242
|
+
<tr>
|
|
243
|
+
<td>
|
|
244
|
+
<pre class="lines">
|
|
245
|
+
|
|
246
|
+
|
|
247
|
+
8
|
|
248
|
+
9
|
|
249
|
+
10
|
|
250
|
+
11
|
|
251
|
+
12</pre>
|
|
252
|
+
</td>
|
|
253
|
+
<td>
|
|
254
|
+
<pre class="code"><span class="info file"># File 'lib/kharon/helpers/validate.rb', line 8</span>
|
|
255
|
+
|
|
256
|
+
<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>
|
|
257
|
+
<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>
|
|
258
|
+
<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>
|
|
259
|
+
<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>
|
|
260
|
+
<span class='kw'>end</span></pre>
|
|
261
|
+
</td>
|
|
262
|
+
</tr>
|
|
263
|
+
</table>
|
|
264
|
+
</div>
|
|
265
|
+
|
|
266
|
+
</div>
|
|
267
|
+
|
|
268
|
+
</div>
|
|
269
|
+
|
|
270
|
+
<div id="footer">
|
|
271
|
+
Generated on Thu Jun 11 10:14:41 2015 by
|
|
272
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
|
273
|
+
0.8.7.6 (ruby-1.9.3).
|
|
274
|
+
</div>
|
|
275
|
+
|
|
276
|
+
</body>
|
|
277
|
+
</html>
|
|
@@ -0,0 +1,1962 @@
|
|
|
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
|
+
Class: Kharon::Validator
|
|
8
|
+
|
|
9
|
+
— Documentation by YARD 0.8.7.6
|
|
10
|
+
|
|
11
|
+
</title>
|
|
12
|
+
|
|
13
|
+
<link rel="stylesheet" href="../css/style.css" type="text/css" charset="utf-8" />
|
|
14
|
+
|
|
15
|
+
<link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" />
|
|
16
|
+
|
|
17
|
+
<script type="text/javascript" charset="utf-8">
|
|
18
|
+
hasFrames = window.top.frames.main ? true : false;
|
|
19
|
+
relpath = '../';
|
|
20
|
+
framesUrl = "../frames.html#!Kharon/Validator.html";
|
|
21
|
+
</script>
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
|
|
25
|
+
|
|
26
|
+
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
</head>
|
|
30
|
+
<body>
|
|
31
|
+
<div id="header">
|
|
32
|
+
<div id="menu">
|
|
33
|
+
|
|
34
|
+
<a href="../_index.html">Index (V)</a> »
|
|
35
|
+
<span class='title'><span class='object_link'><a href="../Kharon.html" title="Kharon (module)">Kharon</a></span></span>
|
|
36
|
+
»
|
|
37
|
+
<span class="title">Validator</span>
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
|
|
41
|
+
</div>
|
|
42
|
+
|
|
43
|
+
<div id="search">
|
|
44
|
+
|
|
45
|
+
<a class="full_list_link" id="class_list_link"
|
|
46
|
+
href="../class_list.html">
|
|
47
|
+
Class List
|
|
48
|
+
</a>
|
|
49
|
+
|
|
50
|
+
<a class="full_list_link" id="method_list_link"
|
|
51
|
+
href="../method_list.html">
|
|
52
|
+
Method List
|
|
53
|
+
</a>
|
|
54
|
+
|
|
55
|
+
<a class="full_list_link" id="file_list_link"
|
|
56
|
+
href="../file_list.html">
|
|
57
|
+
File List
|
|
58
|
+
</a>
|
|
59
|
+
|
|
60
|
+
</div>
|
|
61
|
+
<div class="clear"></div>
|
|
62
|
+
</div>
|
|
63
|
+
|
|
64
|
+
<iframe id="search_frame"></iframe>
|
|
65
|
+
|
|
66
|
+
<div id="content"><h1>Class: Kharon::Validator
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
</h1>
|
|
71
|
+
|
|
72
|
+
<dl class="box">
|
|
73
|
+
|
|
74
|
+
<dt class="r1">Inherits:</dt>
|
|
75
|
+
<dd class="r1">
|
|
76
|
+
<span class="inheritName">Object</span>
|
|
77
|
+
|
|
78
|
+
<ul class="fullTree">
|
|
79
|
+
<li>Object</li>
|
|
80
|
+
|
|
81
|
+
<li class="next">Kharon::Validator</li>
|
|
82
|
+
|
|
83
|
+
</ul>
|
|
84
|
+
<a href="#" class="inheritanceTree">show all</a>
|
|
85
|
+
|
|
86
|
+
</dd>
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
<dt class="r2 last">Defined in:</dt>
|
|
97
|
+
<dd class="r2 last">lib/kharon/validator.rb</dd>
|
|
98
|
+
|
|
99
|
+
</dl>
|
|
100
|
+
<div class="clear"></div>
|
|
101
|
+
|
|
102
|
+
<h2>Overview</h2><div class="docstring">
|
|
103
|
+
<div class="discussion">
|
|
104
|
+
|
|
105
|
+
<p>The validator is the main class of Kharon, it validates a hash given a
|
|
106
|
+
structure.</p>
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
</div>
|
|
110
|
+
</div>
|
|
111
|
+
<div class="tags">
|
|
112
|
+
|
|
113
|
+
<p class="tag_title">Author:</p>
|
|
114
|
+
<ul class="author">
|
|
115
|
+
|
|
116
|
+
<li>
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
<div class='inline'>
|
|
123
|
+
<p>Vincent Courtois <courtois.vincent@outlook.com></p>
|
|
124
|
+
</div>
|
|
125
|
+
|
|
126
|
+
</li>
|
|
127
|
+
|
|
128
|
+
</ul>
|
|
129
|
+
|
|
130
|
+
</div>
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
<h2>Instance Attribute Summary <small>(<a href="#" class="summary_toggle">collapse</a>)</small></h2>
|
|
135
|
+
<ul class="summary">
|
|
136
|
+
|
|
137
|
+
<li class="public ">
|
|
138
|
+
<span class="summary_signature">
|
|
139
|
+
|
|
140
|
+
<a href="#datas-instance_method" title="#datas (instance method)">- (Hash) <strong>datas</strong> </a>
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
</span>
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
<span class="note title readonly">readonly</span>
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
<span class="summary_desc"><div class='inline'>
|
|
160
|
+
<p>The datas to filter, they shouldn't be modified to guarantee their
|
|
161
|
+
integrity.</p>
|
|
162
|
+
</div></span>
|
|
163
|
+
|
|
164
|
+
</li>
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
<li class="public ">
|
|
168
|
+
<span class="summary_signature">
|
|
169
|
+
|
|
170
|
+
<a href="#filtered-instance_method" title="#filtered (instance method)">- (Hash) <strong>filtered</strong> </a>
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
</span>
|
|
175
|
+
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
<span class="summary_desc"><div class='inline'>
|
|
188
|
+
<p>The filtered datas are the datas after they have been filtered (renamed
|
|
189
|
+
keys for example) by the validator.</p>
|
|
190
|
+
</div></span>
|
|
191
|
+
|
|
192
|
+
</li>
|
|
193
|
+
|
|
194
|
+
|
|
195
|
+
<li class="public ">
|
|
196
|
+
<span class="summary_signature">
|
|
197
|
+
|
|
198
|
+
<a href="#handler-instance_method" title="#handler (instance method)">- (Object) <strong>handler</strong> </a>
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
</span>
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
|
|
206
|
+
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
<span class="summary_desc"><div class='inline'>
|
|
216
|
+
<p>The error handler given to this instance of the validator.</p>
|
|
217
|
+
</div></span>
|
|
218
|
+
|
|
219
|
+
</li>
|
|
220
|
+
|
|
221
|
+
|
|
222
|
+
</ul>
|
|
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 ">
|
|
308
|
+
<span class="summary_signature">
|
|
309
|
+
|
|
310
|
+
<a href="#box-instance_method" title="#box (instance method)">- (Object) <strong>box</strong>(key, options = {}) </a>
|
|
311
|
+
|
|
312
|
+
|
|
313
|
+
|
|
314
|
+
</span>
|
|
315
|
+
|
|
316
|
+
|
|
317
|
+
|
|
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
|
+
|
|
334
|
+
<a href="#date-instance_method" title="#date (instance method)">- (Object) <strong>date</strong>(key, options = {}) </a>
|
|
335
|
+
|
|
336
|
+
|
|
337
|
+
|
|
338
|
+
</span>
|
|
339
|
+
|
|
340
|
+
|
|
341
|
+
|
|
342
|
+
|
|
343
|
+
|
|
344
|
+
|
|
345
|
+
|
|
346
|
+
|
|
347
|
+
|
|
348
|
+
<span class="summary_desc"><div class='inline'>
|
|
349
|
+
<p>Checks if the given key is a date or not.</p>
|
|
350
|
+
</div></span>
|
|
351
|
+
|
|
352
|
+
</li>
|
|
353
|
+
|
|
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
|
+
|
|
362
|
+
</span>
|
|
363
|
+
|
|
364
|
+
|
|
365
|
+
|
|
366
|
+
|
|
367
|
+
|
|
368
|
+
|
|
369
|
+
|
|
370
|
+
|
|
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
|
+
|
|
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
|
+
|
|
385
|
+
|
|
386
|
+
</span>
|
|
387
|
+
|
|
388
|
+
|
|
389
|
+
|
|
390
|
+
|
|
391
|
+
|
|
392
|
+
|
|
393
|
+
|
|
394
|
+
|
|
395
|
+
|
|
396
|
+
<span class="summary_desc"><div class='inline'>
|
|
397
|
+
<p>Checks if the given key is an email or not.</p>
|
|
398
|
+
</div></span>
|
|
399
|
+
|
|
400
|
+
</li>
|
|
401
|
+
|
|
402
|
+
|
|
403
|
+
<li class="public ">
|
|
404
|
+
<span class="summary_signature">
|
|
405
|
+
|
|
406
|
+
<a href="#hash-instance_method" title="#hash (instance method)">- (Object) <strong>hash</strong>(key, options = {}) </a>
|
|
407
|
+
|
|
408
|
+
|
|
409
|
+
|
|
410
|
+
</span>
|
|
411
|
+
|
|
412
|
+
|
|
413
|
+
|
|
414
|
+
|
|
415
|
+
|
|
416
|
+
|
|
417
|
+
|
|
418
|
+
|
|
419
|
+
|
|
420
|
+
<span class="summary_desc"><div class='inline'>
|
|
421
|
+
<p>Checks if the given key is a hash or not.</p>
|
|
422
|
+
</div></span>
|
|
423
|
+
|
|
424
|
+
</li>
|
|
425
|
+
|
|
426
|
+
|
|
427
|
+
<li class="public ">
|
|
428
|
+
<span class="summary_signature">
|
|
429
|
+
|
|
430
|
+
<a href="#initialize-instance_method" title="#initialize (instance method)">- (Validator) <strong>initialize</strong>(datas) </a>
|
|
431
|
+
|
|
432
|
+
|
|
433
|
+
|
|
434
|
+
</span>
|
|
435
|
+
|
|
436
|
+
|
|
437
|
+
<span class="note title constructor">constructor</span>
|
|
438
|
+
|
|
439
|
+
|
|
440
|
+
|
|
441
|
+
|
|
442
|
+
|
|
443
|
+
|
|
444
|
+
|
|
445
|
+
|
|
446
|
+
<span class="summary_desc"><div class='inline'>
|
|
447
|
+
<p>Constructor of the classe, receiving the datas to validate and filter.</p>
|
|
448
|
+
</div></span>
|
|
449
|
+
|
|
450
|
+
</li>
|
|
451
|
+
|
|
452
|
+
|
|
453
|
+
<li class="public ">
|
|
454
|
+
<span class="summary_signature">
|
|
455
|
+
|
|
456
|
+
<a href="#integer-instance_method" title="#integer (instance method)">- (Object) <strong>integer</strong>(key, options = {}) </a>
|
|
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>
|
|
505
|
+
|
|
506
|
+
|
|
507
|
+
|
|
508
|
+
</span>
|
|
509
|
+
|
|
510
|
+
|
|
511
|
+
|
|
512
|
+
|
|
513
|
+
|
|
514
|
+
|
|
515
|
+
|
|
516
|
+
|
|
517
|
+
|
|
518
|
+
<span class="summary_desc"><div class='inline'>
|
|
519
|
+
<p>Checks if the given key is a SSID for a MongoDB object or not.</p>
|
|
520
|
+
</div></span>
|
|
521
|
+
|
|
522
|
+
</li>
|
|
523
|
+
|
|
524
|
+
|
|
525
|
+
<li class="public ">
|
|
526
|
+
<span class="summary_signature">
|
|
527
|
+
|
|
528
|
+
<a href="#text-instance_method" title="#text (instance method)">- (Object) <strong>text</strong>(key, options = {}) </a>
|
|
529
|
+
|
|
530
|
+
|
|
531
|
+
|
|
532
|
+
</span>
|
|
533
|
+
|
|
534
|
+
|
|
535
|
+
|
|
536
|
+
|
|
537
|
+
|
|
538
|
+
|
|
539
|
+
|
|
540
|
+
|
|
541
|
+
|
|
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>
|
|
545
|
+
|
|
546
|
+
</li>
|
|
547
|
+
|
|
548
|
+
|
|
549
|
+
</ul>
|
|
550
|
+
|
|
551
|
+
|
|
552
|
+
<div id="constructor_details" class="method_details_list">
|
|
553
|
+
<h2>Constructor Details</h2>
|
|
554
|
+
|
|
555
|
+
<div class="method_details first">
|
|
556
|
+
<h3 class="signature first" id="initialize-instance_method">
|
|
557
|
+
|
|
558
|
+
- (<tt><span class='object_link'><a href="" title="Kharon::Validator (class)">Validator</a></span></tt>) <strong>initialize</strong>(datas)
|
|
559
|
+
|
|
560
|
+
|
|
561
|
+
|
|
562
|
+
|
|
563
|
+
|
|
564
|
+
</h3><div class="docstring">
|
|
565
|
+
<div class="discussion">
|
|
566
|
+
|
|
567
|
+
<p>Constructor of the classe, receiving the datas to validate and filter.</p>
|
|
568
|
+
|
|
569
|
+
|
|
570
|
+
</div>
|
|
571
|
+
</div>
|
|
572
|
+
<div class="tags">
|
|
573
|
+
|
|
574
|
+
<div class="examples">
|
|
575
|
+
<p class="tag_title">Examples:</p>
|
|
576
|
+
|
|
577
|
+
|
|
578
|
+
<p class="example_title"><div class='inline'>
|
|
579
|
+
<p>create a new instance of validator.</p>
|
|
580
|
+
</div></p>
|
|
581
|
+
|
|
582
|
+
<pre class="example code"><code><span class='ivar'>@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='lbrace'>{</span><span class='label'>key:</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>value</span><span class='tstring_end'>"</span></span><span class='rbrace'>}</span><span class='rparen'>)</span></code></pre>
|
|
583
|
+
|
|
584
|
+
</div>
|
|
585
|
+
<p class="tag_title">Parameters:</p>
|
|
586
|
+
<ul class="param">
|
|
587
|
+
|
|
588
|
+
<li>
|
|
589
|
+
|
|
590
|
+
<span class='name'>datas</span>
|
|
591
|
+
|
|
592
|
+
|
|
593
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
|
594
|
+
|
|
595
|
+
|
|
596
|
+
|
|
597
|
+
—
|
|
598
|
+
<div class='inline'>
|
|
599
|
+
<p>the datas to validate in the validator.</p>
|
|
600
|
+
</div>
|
|
601
|
+
|
|
602
|
+
</li>
|
|
603
|
+
|
|
604
|
+
</ul>
|
|
605
|
+
|
|
606
|
+
|
|
607
|
+
</div><table class="source_code">
|
|
608
|
+
<tr>
|
|
609
|
+
<td>
|
|
610
|
+
<pre class="lines">
|
|
611
|
+
|
|
612
|
+
|
|
613
|
+
23
|
|
614
|
+
24
|
|
615
|
+
25
|
|
616
|
+
26
|
|
617
|
+
27</pre>
|
|
618
|
+
</td>
|
|
619
|
+
<td>
|
|
620
|
+
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 23</span>
|
|
621
|
+
|
|
622
|
+
<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> <span class='op'>=</span> <span class='id identifier rubyid_datas'>datas</span>
|
|
624
|
+
<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>
|
|
625
|
+
<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
|
+
<span class='kw'>end</span></pre>
|
|
627
|
+
</td>
|
|
628
|
+
</tr>
|
|
629
|
+
</table>
|
|
630
|
+
</div>
|
|
631
|
+
|
|
632
|
+
</div>
|
|
633
|
+
|
|
634
|
+
<div id="instance_attr_details" class="attr_details">
|
|
635
|
+
<h2>Instance Attribute Details</h2>
|
|
636
|
+
|
|
637
|
+
|
|
638
|
+
<span id=""></span>
|
|
639
|
+
<div class="method_details first">
|
|
640
|
+
<h3 class="signature first" id="datas-instance_method">
|
|
641
|
+
|
|
642
|
+
- (<tt>Hash</tt>) <strong>datas</strong> <span class="extras">(readonly)</span>
|
|
643
|
+
|
|
644
|
+
|
|
645
|
+
|
|
646
|
+
|
|
647
|
+
|
|
648
|
+
</h3><div class="docstring">
|
|
649
|
+
<div class="discussion">
|
|
650
|
+
|
|
651
|
+
<p>Returns The datas to filter, they shouldn’t be modified to guarantee their
|
|
652
|
+
integrity.</p>
|
|
653
|
+
|
|
654
|
+
|
|
655
|
+
</div>
|
|
656
|
+
</div>
|
|
657
|
+
<div class="tags">
|
|
658
|
+
|
|
659
|
+
<p class="tag_title">Returns:</p>
|
|
660
|
+
<ul class="return">
|
|
661
|
+
|
|
662
|
+
<li>
|
|
663
|
+
|
|
664
|
+
|
|
665
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
|
666
|
+
|
|
667
|
+
|
|
668
|
+
|
|
669
|
+
—
|
|
670
|
+
<div class='inline'>
|
|
671
|
+
<p>The datas to filter, they shouldn’t be modified to guarantee their
|
|
672
|
+
integrity.</p>
|
|
673
|
+
</div>
|
|
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">
|
|
1417
|
+
|
|
1418
|
+
<li>
|
|
1419
|
+
|
|
1420
|
+
<span class='name'>key</span>
|
|
1421
|
+
|
|
1422
|
+
|
|
1423
|
+
<span class='type'>(<tt>Object</tt>)</span>
|
|
1424
|
+
|
|
1425
|
+
|
|
1426
|
+
|
|
1427
|
+
—
|
|
1428
|
+
<div class='inline'>
|
|
1429
|
+
<p>the key about which verify the type.</p>
|
|
1430
|
+
</div>
|
|
1431
|
+
|
|
1432
|
+
</li>
|
|
1433
|
+
|
|
1434
|
+
<li>
|
|
1435
|
+
|
|
1436
|
+
<span class='name'>options</span>
|
|
1437
|
+
|
|
1438
|
+
|
|
1439
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
|
1440
|
+
|
|
1441
|
+
|
|
1442
|
+
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
|
1443
|
+
|
|
1444
|
+
|
|
1445
|
+
—
|
|
1446
|
+
<div class='inline'>
|
|
1447
|
+
<p>a hash of options passed to this method (see documentation to know which
|
|
1448
|
+
options pass).</p>
|
|
1449
|
+
</div>
|
|
1450
|
+
|
|
1451
|
+
</li>
|
|
1452
|
+
|
|
1453
|
+
</ul>
|
|
1454
|
+
|
|
1455
|
+
|
|
1456
|
+
</div><table class="source_code">
|
|
1457
|
+
<tr>
|
|
1458
|
+
<td>
|
|
1459
|
+
<pre class="lines">
|
|
1460
|
+
|
|
1461
|
+
|
|
1462
|
+
144
|
|
1463
|
+
145
|
|
1464
|
+
146
|
|
1465
|
+
147</pre>
|
|
1466
|
+
</td>
|
|
1467
|
+
<td>
|
|
1468
|
+
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 144</span>
|
|
1469
|
+
|
|
1470
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_email'>email</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>
|
|
1471
|
+
<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>
|
|
1472
|
+
<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-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$</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_item'>item</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'>Email</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
|
1473
|
+
<span class='kw'>end</span></pre>
|
|
1474
|
+
</td>
|
|
1475
|
+
</tr>
|
|
1476
|
+
</table>
|
|
1477
|
+
</div>
|
|
1478
|
+
|
|
1479
|
+
<div class="method_details ">
|
|
1480
|
+
<h3 class="signature " id="hash-instance_method">
|
|
1481
|
+
|
|
1482
|
+
- (<tt>Object</tt>) <strong>hash</strong>(key, options = {})
|
|
1483
|
+
|
|
1484
|
+
|
|
1485
|
+
|
|
1486
|
+
|
|
1487
|
+
|
|
1488
|
+
</h3><div class="docstring">
|
|
1489
|
+
<div class="discussion">
|
|
1490
|
+
|
|
1491
|
+
<p>Checks if the given key is a hash or not.</p>
|
|
1492
|
+
|
|
1493
|
+
|
|
1494
|
+
</div>
|
|
1495
|
+
</div>
|
|
1496
|
+
<div class="tags">
|
|
1497
|
+
|
|
1498
|
+
<div class="examples">
|
|
1499
|
+
<p class="tag_title">Examples:</p>
|
|
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>
|
|
1527
|
+
|
|
1528
|
+
<li>
|
|
1529
|
+
|
|
1530
|
+
<span class='name'>options</span>
|
|
1531
|
+
|
|
1532
|
+
|
|
1533
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
|
1534
|
+
|
|
1535
|
+
|
|
1536
|
+
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
|
1537
|
+
|
|
1538
|
+
|
|
1539
|
+
—
|
|
1540
|
+
<div class='inline'>
|
|
1541
|
+
<p>a hash of options passed to this method (see documentation to know which
|
|
1542
|
+
options pass).</p>
|
|
1543
|
+
</div>
|
|
1544
|
+
|
|
1545
|
+
</li>
|
|
1546
|
+
|
|
1547
|
+
</ul>
|
|
1548
|
+
|
|
1549
|
+
|
|
1550
|
+
</div><table class="source_code">
|
|
1551
|
+
<tr>
|
|
1552
|
+
<td>
|
|
1553
|
+
<pre class="lines">
|
|
1554
|
+
|
|
1555
|
+
|
|
1556
|
+
104
|
|
1557
|
+
105
|
|
1558
|
+
106
|
|
1559
|
+
107</pre>
|
|
1560
|
+
</td>
|
|
1561
|
+
<td>
|
|
1562
|
+
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 104</span>
|
|
1563
|
+
|
|
1564
|
+
<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>
|
|
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>
|
|
1568
|
+
</td>
|
|
1569
|
+
</tr>
|
|
1570
|
+
</table>
|
|
1571
|
+
</div>
|
|
1572
|
+
|
|
1573
|
+
<div class="method_details ">
|
|
1574
|
+
<h3 class="signature " id="integer-instance_method">
|
|
1575
|
+
|
|
1576
|
+
- (<tt>Object</tt>) <strong>integer</strong>(key, options = {})
|
|
1577
|
+
|
|
1578
|
+
|
|
1579
|
+
|
|
1580
|
+
|
|
1581
|
+
|
|
1582
|
+
</h3><div class="docstring">
|
|
1583
|
+
<div class="discussion">
|
|
1584
|
+
|
|
1585
|
+
<p>Checks if the given key is an integer or not.</p>
|
|
1586
|
+
|
|
1587
|
+
|
|
1588
|
+
</div>
|
|
1589
|
+
</div>
|
|
1590
|
+
<div class="tags">
|
|
1591
|
+
|
|
1592
|
+
<div class="examples">
|
|
1593
|
+
<p class="tag_title">Examples:</p>
|
|
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>
|
|
1621
|
+
|
|
1622
|
+
<li>
|
|
1623
|
+
|
|
1624
|
+
<span class='name'>options</span>
|
|
1625
|
+
|
|
1626
|
+
|
|
1627
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
|
1628
|
+
|
|
1629
|
+
|
|
1630
|
+
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
|
1631
|
+
|
|
1632
|
+
|
|
1633
|
+
—
|
|
1634
|
+
<div class='inline'>
|
|
1635
|
+
<p>a hash of options passed to this method (see documentation to know which
|
|
1636
|
+
options pass).</p>
|
|
1637
|
+
</div>
|
|
1638
|
+
|
|
1639
|
+
</li>
|
|
1640
|
+
|
|
1641
|
+
</ul>
|
|
1642
|
+
|
|
1643
|
+
|
|
1644
|
+
</div><table class="source_code">
|
|
1645
|
+
<tr>
|
|
1646
|
+
<td>
|
|
1647
|
+
<pre class="lines">
|
|
1648
|
+
|
|
1649
|
+
|
|
1650
|
+
34
|
|
1651
|
+
35
|
|
1652
|
+
36
|
|
1653
|
+
37</pre>
|
|
1654
|
+
</td>
|
|
1655
|
+
<td>
|
|
1656
|
+
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 34</span>
|
|
1657
|
+
|
|
1658
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_integer'>integer</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>
|
|
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>
|
|
1662
|
+
</td>
|
|
1663
|
+
</tr>
|
|
1664
|
+
</table>
|
|
1665
|
+
</div>
|
|
1666
|
+
|
|
1667
|
+
<div class="method_details ">
|
|
1668
|
+
<h3 class="signature " id="numeric-instance_method">
|
|
1669
|
+
|
|
1670
|
+
- (<tt>Object</tt>) <strong>numeric</strong>(key, options = {})
|
|
1671
|
+
|
|
1672
|
+
|
|
1673
|
+
|
|
1674
|
+
|
|
1675
|
+
|
|
1676
|
+
</h3><div class="docstring">
|
|
1677
|
+
<div class="discussion">
|
|
1678
|
+
|
|
1679
|
+
<p>Checks if the given key is a numeric or not.</p>
|
|
1680
|
+
|
|
1681
|
+
|
|
1682
|
+
</div>
|
|
1683
|
+
</div>
|
|
1684
|
+
<div class="tags">
|
|
1685
|
+
|
|
1686
|
+
<div class="examples">
|
|
1687
|
+
<p class="tag_title">Examples:</p>
|
|
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">
|
|
1700
|
+
|
|
1701
|
+
<li>
|
|
1702
|
+
|
|
1703
|
+
<span class='name'>key</span>
|
|
1704
|
+
|
|
1705
|
+
|
|
1706
|
+
<span class='type'>(<tt>Object</tt>)</span>
|
|
1707
|
+
|
|
1708
|
+
|
|
1709
|
+
|
|
1710
|
+
—
|
|
1711
|
+
<div class='inline'>
|
|
1712
|
+
<p>the key about which verify the type.</p>
|
|
1713
|
+
</div>
|
|
1714
|
+
|
|
1715
|
+
</li>
|
|
1716
|
+
|
|
1717
|
+
<li>
|
|
1718
|
+
|
|
1719
|
+
<span class='name'>options</span>
|
|
1720
|
+
|
|
1721
|
+
|
|
1722
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
|
1723
|
+
|
|
1724
|
+
|
|
1725
|
+
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
|
1726
|
+
|
|
1727
|
+
|
|
1728
|
+
—
|
|
1729
|
+
<div class='inline'>
|
|
1730
|
+
<p>a hash of options passed to this method (see documentation to know which
|
|
1731
|
+
options pass).</p>
|
|
1732
|
+
</div>
|
|
1733
|
+
|
|
1734
|
+
</li>
|
|
1735
|
+
|
|
1736
|
+
</ul>
|
|
1737
|
+
|
|
1738
|
+
|
|
1739
|
+
</div><table class="source_code">
|
|
1740
|
+
<tr>
|
|
1741
|
+
<td>
|
|
1742
|
+
<pre class="lines">
|
|
1743
|
+
|
|
1744
|
+
|
|
1745
|
+
44
|
|
1746
|
+
45
|
|
1747
|
+
46
|
|
1748
|
+
47</pre>
|
|
1749
|
+
</td>
|
|
1750
|
+
<td>
|
|
1751
|
+
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 44</span>
|
|
1752
|
+
|
|
1753
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_numeric'>numeric</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>
|
|
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>
|
|
1757
|
+
</td>
|
|
1758
|
+
</tr>
|
|
1759
|
+
</table>
|
|
1760
|
+
</div>
|
|
1761
|
+
|
|
1762
|
+
<div class="method_details ">
|
|
1763
|
+
<h3 class="signature " id="ssid-instance_method">
|
|
1764
|
+
|
|
1765
|
+
- (<tt>Object</tt>) <strong>ssid</strong>(key, options = {})
|
|
1766
|
+
|
|
1767
|
+
|
|
1768
|
+
|
|
1769
|
+
|
|
1770
|
+
|
|
1771
|
+
</h3><div class="docstring">
|
|
1772
|
+
<div class="discussion">
|
|
1773
|
+
|
|
1774
|
+
<p>Checks if the given key is a SSID for a MongoDB object or not.</p>
|
|
1775
|
+
|
|
1776
|
+
|
|
1777
|
+
</div>
|
|
1778
|
+
</div>
|
|
1779
|
+
<div class="tags">
|
|
1780
|
+
|
|
1781
|
+
<div class="examples">
|
|
1782
|
+
<p class="tag_title">Examples:</p>
|
|
1783
|
+
|
|
1784
|
+
|
|
1785
|
+
<p class="example_title"><div class='inline'>
|
|
1786
|
+
<p>Validates a key so it has to be a MongoDB SSID.</p>
|
|
1787
|
+
</div></p>
|
|
1788
|
+
|
|
1789
|
+
<pre class="example code"><code><span class='ivar'>@validator</span><span class='period'>.</span><span class='id identifier rubyid_ssid'>ssid</span><span class='lparen'>(</span><span class='symbol'>:a_ssid</span><span class='rparen'>)</span></code></pre>
|
|
1790
|
+
|
|
1791
|
+
</div>
|
|
1792
|
+
<p class="tag_title">Parameters:</p>
|
|
1793
|
+
<ul class="param">
|
|
1794
|
+
|
|
1795
|
+
<li>
|
|
1796
|
+
|
|
1797
|
+
<span class='name'>key</span>
|
|
1798
|
+
|
|
1799
|
+
|
|
1800
|
+
<span class='type'>(<tt>Object</tt>)</span>
|
|
1801
|
+
|
|
1802
|
+
|
|
1803
|
+
|
|
1804
|
+
—
|
|
1805
|
+
<div class='inline'>
|
|
1806
|
+
<p>the key about which verify the type.</p>
|
|
1807
|
+
</div>
|
|
1808
|
+
|
|
1809
|
+
</li>
|
|
1810
|
+
|
|
1811
|
+
<li>
|
|
1812
|
+
|
|
1813
|
+
<span class='name'>options</span>
|
|
1814
|
+
|
|
1815
|
+
|
|
1816
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
|
1817
|
+
|
|
1818
|
+
|
|
1819
|
+
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
|
1820
|
+
|
|
1821
|
+
|
|
1822
|
+
—
|
|
1823
|
+
<div class='inline'>
|
|
1824
|
+
<p>a hash of options passed to this method (see documentation to know which
|
|
1825
|
+
options pass).</p>
|
|
1826
|
+
</div>
|
|
1827
|
+
|
|
1828
|
+
</li>
|
|
1829
|
+
|
|
1830
|
+
</ul>
|
|
1831
|
+
|
|
1832
|
+
|
|
1833
|
+
</div><table class="source_code">
|
|
1834
|
+
<tr>
|
|
1835
|
+
<td>
|
|
1836
|
+
<pre class="lines">
|
|
1837
|
+
|
|
1838
|
+
|
|
1839
|
+
124
|
|
1840
|
+
125
|
|
1841
|
+
126
|
|
1842
|
+
127</pre>
|
|
1843
|
+
</td>
|
|
1844
|
+
<td>
|
|
1845
|
+
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 124</span>
|
|
1846
|
+
|
|
1847
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_ssid'>ssid</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>
|
|
1848
|
+
<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>
|
|
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>
|
|
1850
|
+
<span class='kw'>end</span></pre>
|
|
1851
|
+
</td>
|
|
1852
|
+
</tr>
|
|
1853
|
+
</table>
|
|
1854
|
+
</div>
|
|
1855
|
+
|
|
1856
|
+
<div class="method_details ">
|
|
1857
|
+
<h3 class="signature " id="text-instance_method">
|
|
1858
|
+
|
|
1859
|
+
- (<tt>Object</tt>) <strong>text</strong>(key, options = {})
|
|
1860
|
+
|
|
1861
|
+
|
|
1862
|
+
|
|
1863
|
+
|
|
1864
|
+
|
|
1865
|
+
</h3><div class="docstring">
|
|
1866
|
+
<div class="discussion">
|
|
1867
|
+
|
|
1868
|
+
<p>Checks if the given key is a not-empty string or not.</p>
|
|
1869
|
+
|
|
1870
|
+
|
|
1871
|
+
</div>
|
|
1872
|
+
</div>
|
|
1873
|
+
<div class="tags">
|
|
1874
|
+
|
|
1875
|
+
<div class="examples">
|
|
1876
|
+
<p class="tag_title">Examples:</p>
|
|
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>
|
|
1905
|
+
|
|
1906
|
+
<li>
|
|
1907
|
+
|
|
1908
|
+
<span class='name'>options</span>
|
|
1909
|
+
|
|
1910
|
+
|
|
1911
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
|
1912
|
+
|
|
1913
|
+
|
|
1914
|
+
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
|
1915
|
+
|
|
1916
|
+
|
|
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
|
+
|
|
1923
|
+
</li>
|
|
1924
|
+
|
|
1925
|
+
</ul>
|
|
1926
|
+
|
|
1927
|
+
|
|
1928
|
+
</div><table class="source_code">
|
|
1929
|
+
<tr>
|
|
1930
|
+
<td>
|
|
1931
|
+
<pre class="lines">
|
|
1932
|
+
|
|
1933
|
+
|
|
1934
|
+
54
|
|
1935
|
+
55
|
|
1936
|
+
56
|
|
1937
|
+
57</pre>
|
|
1938
|
+
</td>
|
|
1939
|
+
<td>
|
|
1940
|
+
<pre class="code"><span class="info file"># File 'lib/kharon/validator.rb', line 54</span>
|
|
1941
|
+
|
|
1942
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_text'>text</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>
|
|
1943
|
+
<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>
|
|
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>
|
|
1945
|
+
<span class='kw'>end</span></pre>
|
|
1946
|
+
</td>
|
|
1947
|
+
</tr>
|
|
1948
|
+
</table>
|
|
1949
|
+
</div>
|
|
1950
|
+
|
|
1951
|
+
</div>
|
|
1952
|
+
|
|
1953
|
+
</div>
|
|
1954
|
+
|
|
1955
|
+
<div id="footer">
|
|
1956
|
+
Generated on Tue Sep 15 10:54:07 2015 by
|
|
1957
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
|
1958
|
+
0.8.7.6 (ruby-1.9.3).
|
|
1959
|
+
</div>
|
|
1960
|
+
|
|
1961
|
+
</body>
|
|
1962
|
+
</html>
|