brauser 3.3.2 → 4.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.
Files changed (67) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +6 -0
  3. data/.travis-gemfile +4 -5
  4. data/.travis.yml +2 -2
  5. data/CHANGELOG.md +4 -0
  6. data/Gemfile +7 -8
  7. data/README.md +31 -95
  8. data/Rakefile +0 -1
  9. data/brauser.gemspec +4 -4
  10. data/default_definitions/browsers.rb +50 -0
  11. data/default_definitions/languages.rb +118 -0
  12. data/default_definitions/platforms.rb +24 -0
  13. data/doc/Brauser.html +6 -6
  14. data/doc/Brauser/Browser.html +3867 -580
  15. data/doc/Brauser/Definitions.html +537 -0
  16. data/doc/Brauser/Definitions/Base.html +342 -0
  17. data/doc/Brauser/Definitions/Browser.html +1047 -0
  18. data/doc/Brauser/Definitions/Language.html +496 -0
  19. data/doc/Brauser/Definitions/Platform.html +686 -0
  20. data/doc/Brauser/Hooks.html +2 -2
  21. data/doc/Brauser/Hooks/RubyOnRails.html +9 -9
  22. data/doc/Brauser/Parser.html +513 -0
  23. data/doc/Brauser/Value.html +601 -0
  24. data/doc/Brauser/Version.html +5 -5
  25. data/doc/_index.html +25 -108
  26. data/doc/class_list.html +1 -1
  27. data/doc/file.README.html +33 -97
  28. data/doc/index.html +33 -97
  29. data/doc/method_list.html +72 -120
  30. data/doc/top-level-namespace.html +2 -2
  31. data/lib/brauser.rb +13 -15
  32. data/lib/brauser/browser.rb +195 -66
  33. data/lib/brauser/definitions/base.rb +71 -0
  34. data/lib/brauser/definitions/browser.rb +80 -0
  35. data/lib/brauser/definitions/language.rb +29 -0
  36. data/lib/brauser/definitions/platform.rb +42 -0
  37. data/lib/brauser/hooks.rb +1 -2
  38. data/lib/brauser/parser.rb +47 -0
  39. data/lib/brauser/value.rb +39 -0
  40. data/lib/brauser/version.rb +3 -4
  41. data/spec/brauser/browser_spec.rb +73 -564
  42. data/spec/brauser/default_definitions_spec.rb +129 -0
  43. data/spec/brauser/definitions/base_spec.rb +48 -0
  44. data/spec/brauser/definitions/browser_spec.rb +47 -0
  45. data/spec/brauser/definitions/language_spec.rb +18 -0
  46. data/spec/brauser/definitions/platform_spec.rb +36 -0
  47. data/spec/brauser/hooks_spec.rb +5 -6
  48. data/spec/brauser/parser_spec.rb +31 -0
  49. data/spec/brauser/value_spec.rb +34 -0
  50. data/spec/coverage_helper.rb +0 -1
  51. data/spec/spec_helper.rb +0 -1
  52. metadata +50 -23
  53. data/lib/brauser/browseable/attributes.rb +0 -95
  54. data/lib/brauser/browseable/general.rb +0 -104
  55. data/lib/brauser/browseable/parsing.rb +0 -127
  56. data/lib/brauser/browseable/partial_querying.rb +0 -116
  57. data/lib/brauser/browseable/querying.rb +0 -63
  58. data/lib/brauser/browseable/register.rb +0 -73
  59. data/lib/brauser/definition.rb +0 -80
  60. data/lib/brauser/definitions/browsers.rb +0 -68
  61. data/lib/brauser/definitions/languages.rb +0 -130
  62. data/lib/brauser/definitions/platforms.rb +0 -30
  63. data/lib/brauser/query.rb +0 -36
  64. data/lib/brauser/queryable/chainers.rb +0 -56
  65. data/lib/brauser/queryable/queries.rb +0 -60
  66. data/spec/brauser/definition_spec.rb +0 -39
  67. data/spec/brauser/query_spec.rb +0 -111
@@ -0,0 +1,537 @@
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: Brauser::Definitions
8
+
9
+ &mdash; Documentation by YARD 0.8.7.4
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#!Brauser/Definitions.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 (D)</a> &raquo;
35
+ <span class='title'><span class='object_link'><a href="../Brauser.html" title="Brauser (module)">Brauser</a></span></span>
36
+ &raquo;
37
+ <span class="title">Definitions</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: Brauser::Definitions
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/brauser/definitions/base.rb<span class="defines">,<br />
83
+ lib/brauser/definitions/browser.rb,<br /> lib/brauser/definitions/platform.rb,<br /> lib/brauser/definitions/language.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
+ <p>Definitions used by brauser.</p>
92
+
93
+
94
+ </div>
95
+ </div>
96
+ <div class="tags">
97
+
98
+
99
+ </div><h2>Defined Under Namespace</h2>
100
+ <p class="children">
101
+
102
+
103
+
104
+
105
+ <strong class="classes">Classes:</strong> <span class='object_link'><a href="Definitions/Base.html" title="Brauser::Definitions::Base (class)">Base</a></span>, <span class='object_link'><a href="Definitions/Browser.html" title="Brauser::Definitions::Browser (class)">Browser</a></span>, <span class='object_link'><a href="Definitions/Language.html" title="Brauser::Definitions::Language (class)">Language</a></span>, <span class='object_link'><a href="Definitions/Platform.html" title="Brauser::Definitions::Platform (class)">Platform</a></span>
106
+
107
+
108
+ </p>
109
+
110
+
111
+
112
+
113
+
114
+
115
+
116
+
117
+ <h2>
118
+ Class Method Summary
119
+ <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
120
+ </h2>
121
+
122
+ <ul class="summary">
123
+
124
+ <li class="public ">
125
+ <span class="summary_signature">
126
+
127
+ <a href="#browsers-class_method" title="browsers (class method)">+ (Hash) <strong>browsers</strong> </a>
128
+
129
+
130
+
131
+ </span>
132
+
133
+
134
+
135
+
136
+
137
+
138
+
139
+
140
+
141
+ <span class="summary_desc"><div class='inline'><p>Returns the list of browser that can be recognized.</p>
142
+ </div></span>
143
+
144
+ </li>
145
+
146
+
147
+ <li class="public ">
148
+ <span class="summary_signature">
149
+
150
+ <a href="#languages-class_method" title="languages (class method)">+ (Hash) <strong>languages</strong> </a>
151
+
152
+
153
+
154
+ </span>
155
+
156
+
157
+
158
+
159
+
160
+
161
+
162
+
163
+
164
+ <span class="summary_desc"><div class='inline'><p>Returns the list of languages that can be recognized.</p>
165
+ </div></span>
166
+
167
+ </li>
168
+
169
+
170
+ <li class="public ">
171
+ <span class="summary_signature">
172
+
173
+ <a href="#platforms-class_method" title="platforms (class method)">+ (Hash) <strong>platforms</strong> </a>
174
+
175
+
176
+
177
+ </span>
178
+
179
+
180
+
181
+
182
+
183
+
184
+
185
+
186
+
187
+ <span class="summary_desc"><div class='inline'><p>Returns the list of platforms that can be recognized.</p>
188
+ </div></span>
189
+
190
+ </li>
191
+
192
+
193
+ <li class="public ">
194
+ <span class="summary_signature">
195
+
196
+ <a href="#register-class_method" title="register (class method)">+ (Object) <strong>register</strong>(type, *args, **kwargs, &amp;block) </a>
197
+
198
+
199
+
200
+ </span>
201
+
202
+
203
+
204
+
205
+
206
+
207
+
208
+
209
+
210
+ <span class="summary_desc"><div class='inline'><p>Registers a new definition.</p>
211
+ </div></span>
212
+
213
+ </li>
214
+
215
+
216
+ </ul>
217
+
218
+
219
+
220
+
221
+ <div id="class_method_details" class="method_details_list">
222
+ <h2>Class Method Details</h2>
223
+
224
+
225
+ <div class="method_details first">
226
+ <h3 class="signature first" id="browsers-class_method">
227
+
228
+ + (<tt>Hash</tt>) <strong>browsers</strong>
229
+
230
+
231
+
232
+
233
+
234
+ </h3><div class="docstring">
235
+ <div class="discussion">
236
+ <p>Returns the list of browser that can be recognized.</p>
237
+
238
+ <p>The keys are the ids, the values are the definitions.</p>
239
+
240
+
241
+ </div>
242
+ </div>
243
+ <div class="tags">
244
+
245
+ <p class="tag_title">Returns:</p>
246
+ <ul class="return">
247
+
248
+ <li>
249
+
250
+
251
+ <span class='type'>(<tt>Hash</tt>)</span>
252
+
253
+
254
+
255
+ &mdash;
256
+ <div class='inline'><p>The list of browser that can be recognized.</p>
257
+ </div>
258
+
259
+ </li>
260
+
261
+ </ul>
262
+
263
+ </div><table class="source_code">
264
+ <tr>
265
+ <td>
266
+ <pre class="lines">
267
+
268
+
269
+ 34
270
+ 35
271
+ 36</pre>
272
+ </td>
273
+ <td>
274
+ <pre class="code"><span class="info file"># File 'lib/brauser/definitions/base.rb', line 34</span>
275
+
276
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_browsers'>browsers</span>
277
+ <span class='ivar'>@definitions</span><span class='lbracket'>[</span><span class='symbol'>:browsers</span><span class='rbracket'>]</span>
278
+ <span class='kw'>end</span></pre>
279
+ </td>
280
+ </tr>
281
+ </table>
282
+ </div>
283
+
284
+ <div class="method_details ">
285
+ <h3 class="signature " id="languages-class_method">
286
+
287
+ + (<tt>Hash</tt>) <strong>languages</strong>
288
+
289
+
290
+
291
+
292
+
293
+ </h3><div class="docstring">
294
+ <div class="discussion">
295
+ <p>Returns the list of languages that can be recognized.</p>
296
+
297
+ <p>The keys are the ids, the values are the definitions.</p>
298
+
299
+
300
+ </div>
301
+ </div>
302
+ <div class="tags">
303
+
304
+ <p class="tag_title">Returns:</p>
305
+ <ul class="return">
306
+
307
+ <li>
308
+
309
+
310
+ <span class='type'>(<tt>Hash</tt>)</span>
311
+
312
+
313
+
314
+ &mdash;
315
+ <div class='inline'><p>The list of languages that can be recognized.</p>
316
+ </div>
317
+
318
+ </li>
319
+
320
+ </ul>
321
+
322
+ </div><table class="source_code">
323
+ <tr>
324
+ <td>
325
+ <pre class="lines">
326
+
327
+
328
+ 52
329
+ 53
330
+ 54</pre>
331
+ </td>
332
+ <td>
333
+ <pre class="code"><span class="info file"># File 'lib/brauser/definitions/base.rb', line 52</span>
334
+
335
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_languages'>languages</span>
336
+ <span class='ivar'>@definitions</span><span class='lbracket'>[</span><span class='symbol'>:languages</span><span class='rbracket'>]</span>
337
+ <span class='kw'>end</span></pre>
338
+ </td>
339
+ </tr>
340
+ </table>
341
+ </div>
342
+
343
+ <div class="method_details ">
344
+ <h3 class="signature " id="platforms-class_method">
345
+
346
+ + (<tt>Hash</tt>) <strong>platforms</strong>
347
+
348
+
349
+
350
+
351
+
352
+ </h3><div class="docstring">
353
+ <div class="discussion">
354
+ <p>Returns the list of platforms that can be recognized.</p>
355
+
356
+ <p>The keys are the ids, the values are the definitions.</p>
357
+
358
+
359
+ </div>
360
+ </div>
361
+ <div class="tags">
362
+
363
+ <p class="tag_title">Returns:</p>
364
+ <ul class="return">
365
+
366
+ <li>
367
+
368
+
369
+ <span class='type'>(<tt>Hash</tt>)</span>
370
+
371
+
372
+
373
+ &mdash;
374
+ <div class='inline'><p>The list of platform that can be recognized.</p>
375
+ </div>
376
+
377
+ </li>
378
+
379
+ </ul>
380
+
381
+ </div><table class="source_code">
382
+ <tr>
383
+ <td>
384
+ <pre class="lines">
385
+
386
+
387
+ 43
388
+ 44
389
+ 45</pre>
390
+ </td>
391
+ <td>
392
+ <pre class="code"><span class="info file"># File 'lib/brauser/definitions/base.rb', line 43</span>
393
+
394
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_platforms'>platforms</span>
395
+ <span class='ivar'>@definitions</span><span class='lbracket'>[</span><span class='symbol'>:platforms</span><span class='rbracket'>]</span>
396
+ <span class='kw'>end</span></pre>
397
+ </td>
398
+ </tr>
399
+ </table>
400
+ </div>
401
+
402
+ <div class="method_details ">
403
+ <h3 class="signature " id="register-class_method">
404
+
405
+ + (<tt>Object</tt>) <strong>register</strong>(type, *args, **kwargs, &amp;block)
406
+
407
+
408
+
409
+
410
+
411
+ </h3><div class="docstring">
412
+ <div class="discussion">
413
+ <p>Registers a new definition.</p>
414
+
415
+
416
+ </div>
417
+ </div>
418
+ <div class="tags">
419
+ <p class="tag_title">Parameters:</p>
420
+ <ul class="param">
421
+
422
+ <li>
423
+
424
+ <span class='name'>type</span>
425
+
426
+
427
+ <span class='type'>(<tt>Symbol</tt>)</span>
428
+
429
+
430
+
431
+ &mdash;
432
+ <div class='inline'><p>The type of the definition. Can be <code>:browser</code>, <code>:language</code>, <code>:platform</code>.</p>
433
+ </div>
434
+
435
+ </li>
436
+
437
+ <li>
438
+
439
+ <span class='name'>args</span>
440
+
441
+
442
+ <span class='type'>(<tt>Array</tt>)</span>
443
+
444
+
445
+
446
+ &mdash;
447
+ <div class='inline'><p>The arguments of the definition.</p>
448
+ </div>
449
+
450
+ </li>
451
+
452
+ <li>
453
+
454
+ <span class='name'>kwargs</span>
455
+
456
+
457
+ <span class='type'>(<tt>Hash</tt>)</span>
458
+
459
+
460
+
461
+ &mdash;
462
+ <div class='inline'><p>The keyword arguments of the definition.</p>
463
+ </div>
464
+
465
+ </li>
466
+
467
+ <li>
468
+
469
+ <span class='name'>block</span>
470
+
471
+
472
+ <span class='type'>(<tt>Proc</tt>)</span>
473
+
474
+
475
+
476
+ &mdash;
477
+ <div class='inline'><p>The block of the definition.</p>
478
+ </div>
479
+
480
+ </li>
481
+
482
+ </ul>
483
+
484
+
485
+ </div><table class="source_code">
486
+ <tr>
487
+ <td>
488
+ <pre class="lines">
489
+
490
+
491
+ 15
492
+ 16
493
+ 17
494
+ 18
495
+ 19
496
+ 20
497
+ 21
498
+ 22
499
+ 23
500
+ 24
501
+ 25
502
+ 26
503
+ 27</pre>
504
+ </td>
505
+ <td>
506
+ <pre class="code"><span class="info file"># File 'lib/brauser/definitions/base.rb', line 15</span>
507
+
508
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='id identifier rubyid_type'>type</span><span class='comma'>,</span> <span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_kwargs'>kwargs</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
509
+ <span class='id identifier rubyid_klass'>klass</span> <span class='op'>=</span>
510
+ <span class='kw'>case</span> <span class='id identifier rubyid_type'>type</span>
511
+ <span class='kw'>when</span> <span class='symbol'>:browser</span> <span class='kw'>then</span> <span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Definitions</span><span class='op'>::</span><span class='const'>Browser</span>
512
+ <span class='kw'>when</span> <span class='symbol'>:language</span> <span class='kw'>then</span> <span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Definitions</span><span class='op'>::</span><span class='const'>Language</span>
513
+ <span class='kw'>when</span> <span class='symbol'>:platform</span> <span class='kw'>then</span> <span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Definitions</span><span class='op'>::</span><span class='const'>Platform</span>
514
+ <span class='kw'>else</span> <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Invalid definition type \&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>\&quot;.</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
515
+ <span class='kw'>end</span>
516
+
517
+ <span class='ivar'>@definitions</span> <span class='op'>||=</span> <span class='lbrace'>{</span><span class='label'>browsers:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>languages:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>platforms:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rbrace'>}</span>
518
+ <span class='id identifier rubyid_definition'>definition</span> <span class='op'>=</span> <span class='id identifier rubyid_klass'>klass</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_kwargs'>kwargs</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
519
+ <span class='ivar'>@definitions</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>s</span><span class='tstring_end'>&quot;</span></span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='id identifier rubyid_definition'>definition</span><span class='period'>.</span><span class='id identifier rubyid_id'>id</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_definition'>definition</span>
520
+ <span class='kw'>end</span></pre>
521
+ </td>
522
+ </tr>
523
+ </table>
524
+ </div>
525
+
526
+ </div>
527
+
528
+ </div>
529
+
530
+ <div id="footer">
531
+ Generated on Mon Sep 29 16:43:31 2014 by
532
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
533
+ 0.8.7.4 (ruby-2.1.3).
534
+ </div>
535
+
536
+ </body>
537
+ </html>