kabk 0.2.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.

Potentially problematic release.


This version of kabk might be problematic. Click here for more details.

Files changed (67) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +27 -0
  3. data/Gemfile +6 -0
  4. data/Gemfile.lock +108 -0
  5. data/Kabk_logo.svg +33 -0
  6. data/LICENSE +21 -0
  7. data/README.md +101 -0
  8. data/doc/Kabk/Adapters/Base.html +854 -0
  9. data/doc/Kabk/Adapters/SequelAdapter.html +948 -0
  10. data/doc/Kabk/Adapters.html +120 -0
  11. data/doc/Kabk/ApiError.html +511 -0
  12. data/doc/Kabk/Auth/JwtStrategy.html +551 -0
  13. data/doc/Kabk/Auth.html +118 -0
  14. data/doc/Kabk/Concurrency.html +297 -0
  15. data/doc/Kabk/ConcurrencyConflictError.html +225 -0
  16. data/doc/Kabk/Error.html +140 -0
  17. data/doc/Kabk/ExportHandler.html +381 -0
  18. data/doc/Kabk/Field.html +2160 -0
  19. data/doc/Kabk/ForbiddenError.html +225 -0
  20. data/doc/Kabk/InvalidFieldError.html +136 -0
  21. data/doc/Kabk/InvalidOldPasswordError.html +225 -0
  22. data/doc/Kabk/NotFoundError.html +225 -0
  23. data/doc/Kabk/QueryBuilder.html +551 -0
  24. data/doc/Kabk/Registry.html +608 -0
  25. data/doc/Kabk/RelationHydrator.html +480 -0
  26. data/doc/Kabk/Resource.html +1986 -0
  27. data/doc/Kabk/ResourceBuilder.html +1002 -0
  28. data/doc/Kabk/RestEngine.html +879 -0
  29. data/doc/Kabk/SchemaRenderer.html +318 -0
  30. data/doc/Kabk/UnauthorizedError.html +225 -0
  31. data/doc/Kabk/UploadHandler.html +308 -0
  32. data/doc/Kabk/ValidationError.html +225 -0
  33. data/doc/Kabk/Validator.html +380 -0
  34. data/doc/Kabk.html +330 -0
  35. data/doc/_index.html +376 -0
  36. data/doc/class_list.html +54 -0
  37. data/doc/css/common.css +1 -0
  38. data/doc/css/full_list.css +206 -0
  39. data/doc/css/style.css +1089 -0
  40. data/doc/file.README.html +149 -0
  41. data/doc/file_list.html +59 -0
  42. data/doc/frames.html +22 -0
  43. data/doc/index.html +149 -0
  44. data/doc/js/app.js +801 -0
  45. data/doc/js/full_list.js +334 -0
  46. data/doc/js/jquery.js +4 -0
  47. data/doc/method_list.html +910 -0
  48. data/doc/top-level-namespace.html +112 -0
  49. data/docs/API_REFERENCE.md +241 -0
  50. data/lib/kabk/adapters/base.rb +45 -0
  51. data/lib/kabk/adapters/sequel_adapter.rb +125 -0
  52. data/lib/kabk/concurrency.rb +30 -0
  53. data/lib/kabk/errors.rb +62 -0
  54. data/lib/kabk/export_handler.rb +43 -0
  55. data/lib/kabk/field.rb +97 -0
  56. data/lib/kabk/query_builder.rb +72 -0
  57. data/lib/kabk/registry.rb +41 -0
  58. data/lib/kabk/relation_hydrator.rb +107 -0
  59. data/lib/kabk/resource.rb +88 -0
  60. data/lib/kabk/resource_builder.rb +93 -0
  61. data/lib/kabk/rest_engine.rb +84 -0
  62. data/lib/kabk/schema_renderer.rb +69 -0
  63. data/lib/kabk/upload_handler.rb +24 -0
  64. data/lib/kabk/validator.rb +64 -0
  65. data/lib/kabk/version.rb +6 -0
  66. data/lib/kabk.rb +51 -0
  67. metadata +193 -0
@@ -0,0 +1,297 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Class: Kabk::Concurrency
8
+
9
+ &mdash; Documentation by YARD 0.9.45
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../css/style.css" type="text/css">
14
+
15
+ <link rel="stylesheet" href="../css/common.css" type="text/css">
16
+
17
+ <script type="text/javascript">
18
+ pathId = "Kabk::Concurrency";
19
+ relpath = '../';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div id="main_progress" aria-hidden="true"></div>
31
+
32
+ <div class="nav_wrap">
33
+ <iframe id="nav" src="../class_list.html?1"></iframe>
34
+ <div id="resizer"></div>
35
+ </div>
36
+
37
+ <div id="main" tabindex="-1">
38
+ <div id="header">
39
+ <div id="menu">
40
+
41
+ <a href="../_index.html">Index (C)</a> &raquo;
42
+ <span class='title'><span class='object_link'><a href="../Kabk.html" title="Kabk (module)">Kabk</a></span></span>
43
+ &raquo;
44
+ <span class="title">Concurrency</span>
45
+
46
+ </div>
47
+
48
+ <div id="search">
49
+
50
+ <a class="full_list_link" id="class_list_link"
51
+ href="../class_list.html">
52
+
53
+ <svg width="24" height="24">
54
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
55
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
56
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
57
+ </svg>
58
+ </a>
59
+
60
+ </div>
61
+ <div class="clear"></div>
62
+ </div>
63
+
64
+ <div id="content"><h1>Class: Kabk::Concurrency
65
+
66
+
67
+
68
+ </h1>
69
+ <div class="box_info">
70
+
71
+ <dl>
72
+ <dt>Inherits:</dt>
73
+ <dd>
74
+ <span class="inheritName">Object</span>
75
+
76
+ <ul class="fullTree">
77
+ <li>Object</li>
78
+
79
+ <li class="next">Kabk::Concurrency</li>
80
+
81
+ </ul>
82
+ <a href="#" class="inheritanceTree">show all</a>
83
+
84
+ </dd>
85
+ </dl>
86
+
87
+
88
+
89
+
90
+
91
+
92
+
93
+
94
+
95
+
96
+
97
+ <dl>
98
+ <dt>Defined in:</dt>
99
+ <dd>lib/kabk/concurrency.rb
100
+ </dd>
101
+ </dl>
102
+
103
+ </div>
104
+
105
+ <h2>Overview</h2><div class="docstring">
106
+ <div class="discussion">
107
+ <p>Handles Optimistic Concurrency Control (OCC)</p>
108
+
109
+ </div>
110
+ </div>
111
+ <div class="tags">
112
+
113
+
114
+ </div>
115
+
116
+
117
+
118
+
119
+
120
+
121
+
122
+ <h2>
123
+ Class Method Summary
124
+ <small><a href="#" class="summary_toggle">collapse</a></small>
125
+ </h2>
126
+
127
+ <ul class="summary">
128
+
129
+ <li class="public ">
130
+ <span class="summary_signature">
131
+
132
+ <a href="#check!-class_method" title="check! (class method)">.<strong>check!</strong>(resource, current_record, submitted_params) &#x21d2; Object </a>
133
+
134
+
135
+
136
+ </span>
137
+
138
+
139
+
140
+
141
+
142
+
143
+
144
+
145
+
146
+ <span class="summary_desc"><div class='inline'><p>Check if the provided version matches the database state.</p></div></span>
147
+
148
+ </li>
149
+
150
+
151
+ </ul>
152
+
153
+
154
+
155
+
156
+
157
+ <div id="class_method_details" class="method_details_list">
158
+ <h2>Class Method Details</h2>
159
+
160
+
161
+ <div class="method_details first">
162
+ <h3 class="signature first" id="check!-class_method">
163
+
164
+ .<strong>check!</strong>(resource, current_record, submitted_params) &#x21d2; <tt>Object</tt>
165
+
166
+
167
+
168
+
169
+
170
+ </h3><div class="docstring">
171
+ <div class="discussion">
172
+ <p>Check if the provided version matches the database state</p>
173
+
174
+ </div>
175
+ </div>
176
+ <div class="tags">
177
+ <p class="tag_title">Parameters:</p>
178
+ <ul class="param">
179
+
180
+ <li>
181
+
182
+ <span class='name'>resource</span>
183
+
184
+
185
+ <span class='type'>(<tt><span class='object_link'><a href="Resource.html" title="Kabk::Resource (class)">Kabk::Resource</a></span></tt>)</span>
186
+
187
+
188
+
189
+ </li>
190
+
191
+ <li>
192
+
193
+ <span class='name'>current_record</span>
194
+
195
+
196
+ <span class='type'>(<tt>Object</tt>)</span>
197
+
198
+
199
+
200
+ &mdash;
201
+ <div class='inline'><p>The existing record in the database</p></div>
202
+
203
+ </li>
204
+
205
+ <li>
206
+
207
+ <span class='name'>submitted_params</span>
208
+
209
+
210
+ <span class='type'>(<tt>Hash</tt>)</span>
211
+
212
+
213
+
214
+ &mdash;
215
+ <div class='inline'><p>The payload from the client</p></div>
216
+
217
+ </li>
218
+
219
+ </ul>
220
+
221
+ <p class="tag_title">Raises:</p>
222
+ <ul class="raise">
223
+
224
+ <li>
225
+
226
+
227
+ <span class='type'>(<tt><span class='object_link'><a href="ConcurrencyConflictError.html" title="Kabk::ConcurrencyConflictError (class)">Kabk::ConcurrencyConflictError</a></span></tt>)</span>
228
+
229
+
230
+
231
+ &mdash;
232
+ <div class='inline'><p>if there is a mismatch</p></div>
233
+
234
+ </li>
235
+
236
+ </ul>
237
+
238
+ </div><table class="source_code">
239
+ <tr>
240
+ <td>
241
+ <pre class="lines">
242
+
243
+
244
+ 13
245
+ 14
246
+ 15
247
+ 16
248
+ 17
249
+ 18
250
+ 19
251
+ 20
252
+ 21
253
+ 22
254
+ 23
255
+ 24
256
+ 25
257
+ 26
258
+ 27
259
+ 28</pre>
260
+ </td>
261
+ <td>
262
+ <pre class="code"><span class="info file"># File 'lib/kabk/concurrency.rb', line 13</span>
263
+
264
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_check!'>check!</span><span class='lparen'>(</span><span class='id identifier rubyid_resource'>resource</span><span class='comma'>,</span> <span class='id identifier rubyid_current_record'>current_record</span><span class='comma'>,</span> <span class='id identifier rubyid_submitted_params'>submitted_params</span><span class='rparen'>)</span>
265
+ <span class='kw'>return</span> <span class='kw'>unless</span> <span class='id identifier rubyid_resource'>resource</span><span class='period'>.</span><span class='id identifier rubyid_concurrency_field'>concurrency_field</span>
266
+
267
+ <span class='id identifier rubyid_field'>field</span> <span class='op'>=</span> <span class='id identifier rubyid_resource'>resource</span><span class='period'>.</span><span class='id identifier rubyid_concurrency_field'>concurrency_field</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span>
268
+ <span class='kw'>return</span> <span class='kw'>unless</span> <span class='id identifier rubyid_submitted_params'>submitted_params</span><span class='period'>.</span><span class='id identifier rubyid_key?'>key?</span><span class='lparen'>(</span><span class='id identifier rubyid_field'>field</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='id identifier rubyid_submitted_params'>submitted_params</span><span class='period'>.</span><span class='id identifier rubyid_key?'>key?</span><span class='lparen'>(</span><span class='id identifier rubyid_field'>field</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='rparen'>)</span>
269
+
270
+ <span class='id identifier rubyid_client_version'>client_version</span> <span class='op'>=</span> <span class='id identifier rubyid_submitted_params'>submitted_params</span><span class='lbracket'>[</span><span class='id identifier rubyid_field'>field</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='id identifier rubyid_submitted_params'>submitted_params</span><span class='lbracket'>[</span><span class='id identifier rubyid_field'>field</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='rbracket'>]</span>
271
+ <span class='id identifier rubyid_db_version'>db_version</span> <span class='op'>=</span> <span class='id identifier rubyid_current_record'>current_record</span><span class='period'>.</span><span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='id identifier rubyid_field'>field</span><span class='rparen'>)</span>
272
+
273
+ <span class='comment'># Handle Time object comparison by converting DB to ISO8601 (which is what the client sends)
274
+ </span> <span class='id identifier rubyid_db_version_str'>db_version_str</span> <span class='op'>=</span> <span class='id identifier rubyid_db_version'>db_version</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Time</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='id identifier rubyid_db_version'>db_version</span><span class='period'>.</span><span class='id identifier rubyid_respond_to?'>respond_to?</span><span class='lparen'>(</span><span class='symbol'>:iso8601</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_db_version'>db_version</span><span class='period'>.</span><span class='id identifier rubyid_iso8601'>iso8601</span> <span class='op'>:</span> <span class='id identifier rubyid_db_version'>db_version</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span>
275
+
276
+ <span class='kw'>return</span> <span class='kw'>unless</span> <span class='id identifier rubyid_client_version'>client_version</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span> <span class='op'>!=</span> <span class='id identifier rubyid_db_version_str'>db_version_str</span>
277
+
278
+ <span class='id identifier rubyid_raise'>raise</span> <span class='const'><span class='object_link'><a href="ConcurrencyConflictError.html" title="Kabk::ConcurrencyConflictError (class)">ConcurrencyConflictError</a></span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Record has been updated by another user.</span><span class='tstring_end'>&quot;</span></span>
279
+ <span class='kw'>end</span></pre>
280
+ </td>
281
+ </tr>
282
+ </table>
283
+ </div>
284
+
285
+ </div>
286
+
287
+ </div>
288
+
289
+ <div id="footer">
290
+ Generated on Tue Aug 11 21:17:07 2026 by
291
+ <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
292
+ 0.9.45 (ruby-4.0.6).
293
+ </div>
294
+
295
+ </div>
296
+ </body>
297
+ </html>
@@ -0,0 +1,225 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Exception: Kabk::ConcurrencyConflictError
8
+
9
+ &mdash; Documentation by YARD 0.9.45
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../css/style.css" type="text/css">
14
+
15
+ <link rel="stylesheet" href="../css/common.css" type="text/css">
16
+
17
+ <script type="text/javascript">
18
+ pathId = "Kabk::ConcurrencyConflictError";
19
+ relpath = '../';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div id="main_progress" aria-hidden="true"></div>
31
+
32
+ <div class="nav_wrap">
33
+ <iframe id="nav" src="../class_list.html?1"></iframe>
34
+ <div id="resizer"></div>
35
+ </div>
36
+
37
+ <div id="main" tabindex="-1">
38
+ <div id="header">
39
+ <div id="menu">
40
+
41
+ <a href="../_index.html">Index (C)</a> &raquo;
42
+ <span class='title'><span class='object_link'><a href="../Kabk.html" title="Kabk (module)">Kabk</a></span></span>
43
+ &raquo;
44
+ <span class="title">ConcurrencyConflictError</span>
45
+
46
+ </div>
47
+
48
+ <div id="search">
49
+
50
+ <a class="full_list_link" id="class_list_link"
51
+ href="../class_list.html">
52
+
53
+ <svg width="24" height="24">
54
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
55
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
56
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
57
+ </svg>
58
+ </a>
59
+
60
+ </div>
61
+ <div class="clear"></div>
62
+ </div>
63
+
64
+ <div id="content"><h1>Exception: Kabk::ConcurrencyConflictError
65
+
66
+
67
+
68
+ </h1>
69
+ <div class="box_info">
70
+
71
+ <dl>
72
+ <dt>Inherits:</dt>
73
+ <dd>
74
+ <span class="inheritName"><span class='object_link'><a href="ApiError.html" title="Kabk::ApiError (class)">ApiError</a></span></span>
75
+
76
+ <ul class="fullTree">
77
+ <li>Object</li>
78
+
79
+ <li class="next">StandardError</li>
80
+
81
+ <li class="next"><span class='object_link'><a href="ApiError.html" title="Kabk::ApiError (class)">ApiError</a></span></li>
82
+
83
+ <li class="next">Kabk::ConcurrencyConflictError</li>
84
+
85
+ </ul>
86
+ <a href="#" class="inheritanceTree">show all</a>
87
+
88
+ </dd>
89
+ </dl>
90
+
91
+
92
+
93
+
94
+
95
+
96
+
97
+
98
+
99
+
100
+
101
+ <dl>
102
+ <dt>Defined in:</dt>
103
+ <dd>lib/kabk/errors.rb
104
+ </dd>
105
+ </dl>
106
+
107
+ </div>
108
+
109
+
110
+
111
+
112
+
113
+
114
+
115
+ <h2>Instance Attribute Summary</h2>
116
+
117
+ <h3 class="inherited">Attributes inherited from <span class='object_link'><a href="ApiError.html" title="Kabk::ApiError (class)">ApiError</a></span></h3>
118
+ <p class="inherited"><span class='object_link'><a href="ApiError.html#code-instance_method" title="Kabk::ApiError#code (method)">#code</a></span>, <span class='object_link'><a href="ApiError.html#fields-instance_method" title="Kabk::ApiError#fields (method)">#fields</a></span>, <span class='object_link'><a href="ApiError.html#http_status-instance_method" title="Kabk::ApiError#http_status (method)">#http_status</a></span></p>
119
+
120
+
121
+
122
+ <h2>
123
+ Instance Method Summary
124
+ <small><a href="#" class="summary_toggle">collapse</a></small>
125
+ </h2>
126
+
127
+ <ul class="summary">
128
+
129
+ <li class="public ">
130
+ <span class="summary_signature">
131
+
132
+ <a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(message = &quot;Concurrent record modification detected&quot;) &#x21d2; ConcurrencyConflictError </a>
133
+
134
+
135
+
136
+ </span>
137
+
138
+
139
+ <span class="note title constructor">constructor</span>
140
+
141
+
142
+
143
+
144
+
145
+
146
+
147
+
148
+ <span class="summary_desc"><div class='inline'><p>A new instance of ConcurrencyConflictError.</p></div></span>
149
+
150
+ </li>
151
+
152
+
153
+ </ul>
154
+
155
+
156
+
157
+
158
+
159
+
160
+
161
+
162
+
163
+
164
+
165
+
166
+
167
+ <h3 class="inherited">Methods inherited from <span class='object_link'><a href="ApiError.html" title="Kabk::ApiError (class)">ApiError</a></span></h3>
168
+ <p class="inherited"><span class='object_link'><a href="ApiError.html#to_h-instance_method" title="Kabk::ApiError#to_h (method)">#to_h</a></span></p>
169
+
170
+ <div id="constructor_details" class="method_details_list">
171
+ <h2>Constructor Details</h2>
172
+
173
+ <div class="method_details first">
174
+ <h3 class="signature first" id="initialize-instance_method">
175
+
176
+ #<strong>initialize</strong>(message = &quot;Concurrent record modification detected&quot;) &#x21d2; <tt><span class='object_link'><a href="" title="Kabk::ConcurrencyConflictError (class)">ConcurrencyConflictError</a></span></tt>
177
+
178
+
179
+
180
+
181
+
182
+ </h3><div class="docstring">
183
+ <div class="discussion">
184
+ <p>Returns a new instance of ConcurrencyConflictError.</p>
185
+
186
+ </div>
187
+ </div>
188
+ <div class="tags">
189
+
190
+
191
+ </div><table class="source_code">
192
+ <tr>
193
+ <td>
194
+ <pre class="lines">
195
+
196
+
197
+ 58
198
+ 59
199
+ 60</pre>
200
+ </td>
201
+ <td>
202
+ <pre class="code"><span class="info file"># File 'lib/kabk/errors.rb', line 58</span>
203
+
204
+ <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_message'>message</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Concurrent record modification detected</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
205
+ <span class='kw'>super</span><span class='lparen'>(</span><span class='id identifier rubyid_message'>message</span><span class='comma'>,</span> <span class='label'>code:</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>CONCURRENCY_CONFLICT</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='label'>http_status:</span> <span class='int'>409</span><span class='rparen'>)</span>
206
+ <span class='kw'>end</span></pre>
207
+ </td>
208
+ </tr>
209
+ </table>
210
+ </div>
211
+
212
+ </div>
213
+
214
+
215
+ </div>
216
+
217
+ <div id="footer">
218
+ Generated on Tue Aug 11 21:17:06 2026 by
219
+ <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
220
+ 0.9.45 (ruby-4.0.6).
221
+ </div>
222
+
223
+ </div>
224
+ </body>
225
+ </html>
@@ -0,0 +1,140 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Exception: Kabk::Error
8
+
9
+ &mdash; Documentation by YARD 0.9.45
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../css/style.css" type="text/css">
14
+
15
+ <link rel="stylesheet" href="../css/common.css" type="text/css">
16
+
17
+ <script type="text/javascript">
18
+ pathId = "Kabk::Error";
19
+ relpath = '../';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div id="main_progress" aria-hidden="true"></div>
31
+
32
+ <div class="nav_wrap">
33
+ <iframe id="nav" src="../class_list.html?1"></iframe>
34
+ <div id="resizer"></div>
35
+ </div>
36
+
37
+ <div id="main" tabindex="-1">
38
+ <div id="header">
39
+ <div id="menu">
40
+
41
+ <a href="../_index.html">Index (E)</a> &raquo;
42
+ <span class='title'><span class='object_link'><a href="../Kabk.html" title="Kabk (module)">Kabk</a></span></span>
43
+ &raquo;
44
+ <span class="title">Error</span>
45
+
46
+ </div>
47
+
48
+ <div id="search">
49
+
50
+ <a class="full_list_link" id="class_list_link"
51
+ href="../class_list.html">
52
+
53
+ <svg width="24" height="24">
54
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
55
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
56
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
57
+ </svg>
58
+ </a>
59
+
60
+ </div>
61
+ <div class="clear"></div>
62
+ </div>
63
+
64
+ <div id="content"><h1>Exception: Kabk::Error
65
+
66
+
67
+
68
+ </h1>
69
+ <div class="box_info">
70
+
71
+ <dl>
72
+ <dt>Inherits:</dt>
73
+ <dd>
74
+ <span class="inheritName">StandardError</span>
75
+
76
+ <ul class="fullTree">
77
+ <li>Object</li>
78
+
79
+ <li class="next">StandardError</li>
80
+
81
+ <li class="next">Kabk::Error</li>
82
+
83
+ </ul>
84
+ <a href="#" class="inheritanceTree">show all</a>
85
+
86
+ </dd>
87
+ </dl>
88
+
89
+
90
+
91
+
92
+
93
+
94
+
95
+
96
+
97
+
98
+
99
+ <dl>
100
+ <dt>Defined in:</dt>
101
+ <dd>lib/kabk/resource_builder.rb
102
+ </dd>
103
+ </dl>
104
+
105
+ </div>
106
+
107
+ <h2>Overview</h2><div class="docstring">
108
+ <div class="discussion">
109
+ <p>Custom error classes</p>
110
+
111
+ </div>
112
+ </div>
113
+ <div class="tags">
114
+
115
+
116
+ </div><div id="subclasses">
117
+ <h2>Direct Known Subclasses</h2>
118
+ <p class="children"><span class='object_link'><a href="InvalidFieldError.html" title="Kabk::InvalidFieldError (class)">InvalidFieldError</a></span></p>
119
+ </div>
120
+
121
+
122
+
123
+
124
+
125
+
126
+
127
+
128
+
129
+
130
+ </div>
131
+
132
+ <div id="footer">
133
+ Generated on Tue Aug 11 21:17:07 2026 by
134
+ <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
135
+ 0.9.45 (ruby-4.0.6).
136
+ </div>
137
+
138
+ </div>
139
+ </body>
140
+ </html>