brauser 2.1.4 → 3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +3 -3
- data/README.md +3 -3
- data/brauser.gemspec +1 -1
- data/doc/Brauser.html +6 -5
- data/doc/Brauser/Browser.html +553 -541
- data/doc/Brauser/BrowserMethods.html +1 -1
- data/doc/Brauser/BrowserMethods/Attributes.html +21 -21
- data/doc/Brauser/BrowserMethods/General.html +1 -1
- data/doc/Brauser/BrowserMethods/General/ClassMethods.html +29 -29
- data/doc/Brauser/BrowserMethods/Parsing.html +15 -15
- data/doc/Brauser/BrowserMethods/PartialQuerying.html +45 -55
- data/doc/Brauser/BrowserMethods/Querying.html +21 -21
- data/doc/Brauser/BrowserMethods/Register.html +1 -1
- data/doc/Brauser/BrowserMethods/Register/ClassMethods.html +116 -425
- data/doc/Brauser/Hooks.html +1 -1
- data/doc/Brauser/Hooks/RubyOnRails.html +2 -2
- data/doc/Brauser/Query.html +45 -1267
- data/doc/Brauser/Version.html +4 -4
- data/doc/_index.html +33 -4
- data/doc/class_list.html +1 -1
- data/doc/file.README.html +4 -4
- data/doc/index.html +4 -4
- data/doc/method_list.html +89 -65
- data/doc/top-level-namespace.html +1 -1
- data/lib/brauser.rb +1 -0
- data/lib/brauser/browser.rb +163 -234
- data/lib/brauser/definition.rb +54 -0
- data/lib/brauser/hooks.rb +1 -1
- data/lib/brauser/query.rb +68 -59
- data/lib/brauser/version.rb +3 -3
- data/spec/brauser/browser_spec.rb +222 -292
- data/spec/brauser/definition_spec.rb +39 -0
- data/spec/brauser/hooks_spec.rb +2 -3
- data/spec/brauser/query_spec.rb +29 -33
- metadata +8 -5
@@ -125,7 +125,7 @@
|
|
125
125
|
</div>
|
126
126
|
|
127
127
|
<div id="footer">
|
128
|
-
Generated on
|
128
|
+
Generated on Sun May 19 12:02:56 2013 by
|
129
129
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
130
130
|
0.8.6.1 (ruby-1.9.3).
|
131
131
|
</div>
|
@@ -112,7 +112,7 @@
|
|
112
112
|
<li class="public ">
|
113
113
|
<span class="summary_signature">
|
114
114
|
|
115
|
-
<a href="#
|
115
|
+
<a href="#add-instance_method" title="#add (instance method)">- (Boolean) <strong>add</strong>(type, definition) </a>
|
116
116
|
|
117
117
|
|
118
118
|
|
@@ -126,7 +126,7 @@
|
|
126
126
|
|
127
127
|
|
128
128
|
|
129
|
-
<span class="summary_desc"><div class='inline'><p>
|
129
|
+
<span class="summary_desc"><div class='inline'><p>Adds a definitions for recognition.</p>
|
130
130
|
</div></span>
|
131
131
|
|
132
132
|
</li>
|
@@ -135,7 +135,7 @@
|
|
135
135
|
<li class="public ">
|
136
136
|
<span class="summary_signature">
|
137
137
|
|
138
|
-
<a href="#
|
138
|
+
<a href="#add_default_browsers-instance_method" title="#add_default_browsers (instance method)">- (Boolean) <strong>add_default_browsers</strong> </a>
|
139
139
|
|
140
140
|
|
141
141
|
|
@@ -149,7 +149,7 @@
|
|
149
149
|
|
150
150
|
|
151
151
|
|
152
|
-
<span class="summary_desc"><div class='inline'><p>
|
152
|
+
<span class="summary_desc"><div class='inline'><p>Adds definitions for a default list of browsers that can be recognized.</p>
|
153
153
|
</div></span>
|
154
154
|
|
155
155
|
</li>
|
@@ -158,7 +158,7 @@
|
|
158
158
|
<li class="public ">
|
159
159
|
<span class="summary_signature">
|
160
160
|
|
161
|
-
<a href="#
|
161
|
+
<a href="#add_default_languages-instance_method" title="#add_default_languages (instance method)">- (Boolean) <strong>add_default_languages</strong> </a>
|
162
162
|
|
163
163
|
|
164
164
|
|
@@ -172,7 +172,7 @@
|
|
172
172
|
|
173
173
|
|
174
174
|
|
175
|
-
<span class="summary_desc"><div class='inline'><p>
|
175
|
+
<span class="summary_desc"><div class='inline'><p>Adds a default list of languages that can be recognized.</p>
|
176
176
|
</div></span>
|
177
177
|
|
178
178
|
</li>
|
@@ -181,7 +181,7 @@
|
|
181
181
|
<li class="public ">
|
182
182
|
<span class="summary_signature">
|
183
183
|
|
184
|
-
<a href="#
|
184
|
+
<a href="#add_default_platforms-instance_method" title="#add_default_platforms (instance method)">- (Boolean) <strong>add_default_platforms</strong> </a>
|
185
185
|
|
186
186
|
|
187
187
|
|
@@ -195,53 +195,7 @@
|
|
195
195
|
|
196
196
|
|
197
197
|
|
198
|
-
<span class="summary_desc"><div class='inline'><p>
|
199
|
-
</div></span>
|
200
|
-
|
201
|
-
</li>
|
202
|
-
|
203
|
-
|
204
|
-
<li class="public ">
|
205
|
-
<span class="summary_signature">
|
206
|
-
|
207
|
-
<a href="#register_language-instance_method" title="#register_language (instance method)">- (Boolean) <strong>register_language</strong>(code, label = nil) </a>
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
</span>
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
221
|
-
<span class="summary_desc"><div class='inline'><p>Registers a new language that can be recognized.</p>
|
222
|
-
</div></span>
|
223
|
-
|
224
|
-
</li>
|
225
|
-
|
226
|
-
|
227
|
-
<li class="public ">
|
228
|
-
<span class="summary_signature">
|
229
|
-
|
230
|
-
<a href="#register_platform-instance_method" title="#register_platform (instance method)">- (Boolean) <strong>register_platform</strong>(name, matcher = nil, label = nil) </a>
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
</span>
|
235
|
-
|
236
|
-
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
<span class="summary_desc"><div class='inline'><p>Registers a new platform that can be recognized.</p>
|
198
|
+
<span class="summary_desc"><div class='inline'><p>Adds a default list of platforms that can be recognized.</p>
|
245
199
|
</div></span>
|
246
200
|
|
247
201
|
</li>
|
@@ -257,9 +211,9 @@
|
|
257
211
|
|
258
212
|
|
259
213
|
<div class="method_details first">
|
260
|
-
<h3 class="signature first" id="
|
214
|
+
<h3 class="signature first" id="add-instance_method">
|
261
215
|
|
262
|
-
- (<tt>Boolean</tt>) <strong>
|
216
|
+
- (<tt>Boolean</tt>) <strong>add</strong>(type, definition)
|
263
217
|
|
264
218
|
|
265
219
|
|
@@ -267,7 +221,7 @@
|
|
267
221
|
|
268
222
|
</h3><div class="docstring">
|
269
223
|
<div class="discussion">
|
270
|
-
<p>
|
224
|
+
<p>Adds a definitions for recognition.</p>
|
271
225
|
|
272
226
|
|
273
227
|
</div>
|
@@ -278,66 +232,30 @@
|
|
278
232
|
|
279
233
|
<li>
|
280
234
|
|
281
|
-
<span class='name'>
|
235
|
+
<span class='name'>type</span>
|
282
236
|
|
283
237
|
|
284
|
-
<span class='type'>(<tt>Symbol
|
238
|
+
<span class='type'>(<tt>Symbol</tt>)</span>
|
285
239
|
|
286
240
|
|
287
241
|
|
288
242
|
—
|
289
|
-
<div class='inline'><p>The
|
243
|
+
<div class='inline'><p>The type of the definition. Can be <code>:browsers</code>, <code>:platforms</code> or <code>:languages</code>.</p>
|
290
244
|
</div>
|
291
245
|
|
292
246
|
</li>
|
293
247
|
|
294
248
|
<li>
|
295
249
|
|
296
|
-
<span class='name'>
|
297
|
-
|
250
|
+
<span class='name'>definition</span>
|
298
251
|
|
299
|
-
<span class='type'>(<tt>String|Regexp|Block</tt>)</span>
|
300
252
|
|
253
|
+
<span class='type'>(<tt><span class='object_link'><a href="../../Definition.html" title="Brauser::Definition (class)">Definition</a></span>|Array</tt>)</span>
|
301
254
|
|
302
|
-
<em class="default">(defaults to: <tt>nil</tt>)</em>
|
303
255
|
|
304
256
|
|
305
257
|
—
|
306
|
-
<div class='inline'><p>The
|
307
|
-
</div>
|
308
|
-
|
309
|
-
</li>
|
310
|
-
|
311
|
-
<li>
|
312
|
-
|
313
|
-
<span class='name'>version_match</span>
|
314
|
-
|
315
|
-
|
316
|
-
<span class='type'>(<tt>String|Regexp|Block</tt>)</span>
|
317
|
-
|
318
|
-
|
319
|
-
<em class="default">(defaults to: <tt>nil</tt>)</em>
|
320
|
-
|
321
|
-
|
322
|
-
—
|
323
|
-
<div class='inline'><p>The match for the version. If a block, it will be yield with the browser name and the user agent and must return the browser version.</p>
|
324
|
-
</div>
|
325
|
-
|
326
|
-
</li>
|
327
|
-
|
328
|
-
<li>
|
329
|
-
|
330
|
-
<span class='name'>label</span>
|
331
|
-
|
332
|
-
|
333
|
-
<span class='type'>(<tt>String</tt>)</span>
|
334
|
-
|
335
|
-
|
336
|
-
<em class="default">(defaults to: <tt>nil</tt>)</em>
|
337
|
-
|
338
|
-
|
339
|
-
—
|
340
|
-
<div class='inline'><p>A human readable name of the browser.</p>
|
258
|
+
<div class='inline'><p>The definition to add. Can be also an array of definitions.</p>
|
341
259
|
</div>
|
342
260
|
|
343
261
|
</li>
|
@@ -355,7 +273,7 @@
|
|
355
273
|
|
356
274
|
|
357
275
|
—
|
358
|
-
<div class='inline'><p><code>true</code> if at least one
|
276
|
+
<div class='inline'><p><code>true</code> if at least one definition has been added, <code>false</code> otherwise.</p>
|
359
277
|
</div>
|
360
278
|
|
361
279
|
</li>
|
@@ -368,17 +286,43 @@
|
|
368
286
|
<pre class="lines">
|
369
287
|
|
370
288
|
|
371
|
-
|
372
|
-
|
373
|
-
|
374
|
-
|
289
|
+
22
|
290
|
+
23
|
291
|
+
24
|
292
|
+
25
|
293
|
+
26
|
294
|
+
27
|
295
|
+
28
|
296
|
+
29
|
297
|
+
30
|
298
|
+
31
|
299
|
+
32
|
300
|
+
33
|
301
|
+
34
|
302
|
+
35
|
303
|
+
36
|
304
|
+
37
|
305
|
+
38</pre>
|
375
306
|
</td>
|
376
307
|
<td>
|
377
|
-
<pre class="code"><span class="info file"># File 'lib/brauser/browser.rb', line
|
308
|
+
<pre class="code"><span class="info file"># File 'lib/brauser/browser.rb', line 22</span>
|
309
|
+
|
310
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_add'>add</span><span class='lparen'>(</span><span class='id identifier rubyid_type'>type</span><span class='comma'>,</span> <span class='id identifier rubyid_definition'>definition</span><span class='rparen'>)</span>
|
311
|
+
<span class='id identifier rubyid_rv'>rv</span> <span class='op'>=</span> <span class='kw'>false</span>
|
312
|
+
|
313
|
+
<span class='kw'>if</span> <span class='lbracket'>[</span><span class='symbol'>:browsers</span><span class='comma'>,</span> <span class='symbol'>:platforms</span><span class='comma'>,</span> <span class='symbol'>:languages</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_type'>type</span><span class='rparen'>)</span> <span class='kw'>then</span>
|
314
|
+
<span class='ivar'>@definitions</span> <span class='op'>||=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
315
|
+
<span class='ivar'>@definitions</span><span class='lbracket'>[</span><span class='id identifier rubyid_type'>type</span><span class='rbracket'>]</span> <span class='op'>||=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
378
316
|
|
379
|
-
<span class='
|
380
|
-
|
381
|
-
|
317
|
+
<span class='id identifier rubyid_definition'>definition</span><span class='period'>.</span><span class='id identifier rubyid_ensure_array'>ensure_array</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_d'>d</span><span class='op'>|</span>
|
318
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_d'>d</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Definition</span><span class='rparen'>)</span> <span class='kw'>then</span>
|
319
|
+
<span class='ivar'>@definitions</span><span class='lbracket'>[</span><span class='id identifier rubyid_type'>type</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='id identifier rubyid_d'>d</span><span class='period'>.</span><span class='id identifier rubyid_tag'>tag</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_d'>d</span>
|
320
|
+
<span class='id identifier rubyid_rv'>rv</span> <span class='op'>=</span> <span class='kw'>true</span>
|
321
|
+
<span class='kw'>end</span>
|
322
|
+
<span class='kw'>end</span>
|
323
|
+
<span class='kw'>end</span>
|
324
|
+
|
325
|
+
<span class='id identifier rubyid_rv'>rv</span>
|
382
326
|
<span class='kw'>end</span></pre>
|
383
327
|
</td>
|
384
328
|
</tr>
|
@@ -386,9 +330,9 @@
|
|
386
330
|
</div>
|
387
331
|
|
388
332
|
<div class="method_details ">
|
389
|
-
<h3 class="signature " id="
|
333
|
+
<h3 class="signature " id="add_default_browsers-instance_method">
|
390
334
|
|
391
|
-
- (<tt>Boolean</tt>) <strong>
|
335
|
+
- (<tt>Boolean</tt>) <strong>add_default_browsers</strong>
|
392
336
|
|
393
337
|
|
394
338
|
|
@@ -396,7 +340,7 @@
|
|
396
340
|
|
397
341
|
</h3><div class="docstring">
|
398
342
|
<div class="discussion">
|
399
|
-
<p>
|
343
|
+
<p>Adds definitions for a default list of browsers that can be recognized.</p>
|
400
344
|
|
401
345
|
|
402
346
|
</div>
|
@@ -427,25 +371,15 @@
|
|
427
371
|
<pre class="lines">
|
428
372
|
|
429
373
|
|
430
|
-
|
431
|
-
|
432
|
-
|
433
|
-
23
|
434
|
-
24
|
435
|
-
25
|
436
|
-
26
|
437
|
-
27</pre>
|
374
|
+
43
|
375
|
+
44
|
376
|
+
45</pre>
|
438
377
|
</td>
|
439
378
|
<td>
|
440
|
-
<pre class="code"><span class="info file"># File 'lib/brauser/browser.rb', line
|
441
|
-
|
442
|
-
<span class='kw'>def</span> <span class='id identifier rubyid_register_default_browsers'>register_default_browsers</span>
|
443
|
-
<span class='ivar'>@browsers</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
379
|
+
<pre class="code"><span class="info file"># File 'lib/brauser/browser.rb', line 43</span>
|
444
380
|
|
445
|
-
|
446
|
-
<span class='id identifier
|
447
|
-
|
448
|
-
<span class='ivar'>@browsers</span><span class='period'>.</span><span class='id identifier rubyid_present?'>present?</span> <span class='op'>?</span> <span class='kw'>true</span> <span class='op'>:</span> <span class='kw'>false</span>
|
381
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_add_default_browsers'>add_default_browsers</span>
|
382
|
+
<span class='id identifier rubyid_add_mobile_browsers'>add_mobile_browsers</span> <span class='op'>&&</span> <span class='id identifier rubyid_add_major_desktop_browsers'>add_major_desktop_browsers</span> <span class='op'>&&</span> <span class='id identifier rubyid_add_msie_browsers'>add_msie_browsers</span> <span class='op'>&&</span> <span class='id identifier rubyid_add_minor_desktop_browsers'>add_minor_desktop_browsers</span>
|
449
383
|
<span class='kw'>end</span></pre>
|
450
384
|
</td>
|
451
385
|
</tr>
|
@@ -453,9 +387,9 @@
|
|
453
387
|
</div>
|
454
388
|
|
455
389
|
<div class="method_details ">
|
456
|
-
<h3 class="signature " id="
|
390
|
+
<h3 class="signature " id="add_default_languages-instance_method">
|
457
391
|
|
458
|
-
- (<tt>Boolean</tt>) <strong>
|
392
|
+
- (<tt>Boolean</tt>) <strong>add_default_languages</strong>
|
459
393
|
|
460
394
|
|
461
395
|
|
@@ -463,7 +397,7 @@
|
|
463
397
|
|
464
398
|
</h3><div class="docstring">
|
465
399
|
<div class="discussion">
|
466
|
-
<p>
|
400
|
+
<p>Adds a default list of languages that can be recognized.</p>
|
467
401
|
|
468
402
|
|
469
403
|
</div>
|
@@ -494,20 +428,6 @@
|
|
494
428
|
<pre class="lines">
|
495
429
|
|
496
430
|
|
497
|
-
57
|
498
|
-
58
|
499
|
-
59
|
500
|
-
60
|
501
|
-
61
|
502
|
-
62
|
503
|
-
63
|
504
|
-
64
|
505
|
-
65
|
506
|
-
66
|
507
|
-
67
|
508
|
-
68
|
509
|
-
69
|
510
|
-
70
|
511
431
|
71
|
512
432
|
72
|
513
433
|
73
|
@@ -614,15 +534,23 @@
|
|
614
534
|
174
|
615
535
|
175
|
616
536
|
176
|
617
|
-
177
|
537
|
+
177
|
538
|
+
178
|
539
|
+
179
|
540
|
+
180
|
541
|
+
181
|
542
|
+
182
|
543
|
+
183
|
544
|
+
184
|
545
|
+
185
|
546
|
+
186
|
547
|
+
187</pre>
|
618
548
|
</td>
|
619
549
|
<td>
|
620
|
-
<pre class="code"><span class="info file"># File 'lib/brauser/browser.rb', line
|
621
|
-
|
622
|
-
<span class='kw'>def</span> <span class='id identifier rubyid_register_default_languages'>register_default_languages</span>
|
623
|
-
<span class='ivar'>@languages</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
550
|
+
<pre class="code"><span class="info file"># File 'lib/brauser/browser.rb', line 71</span>
|
624
551
|
|
625
|
-
|
552
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_add_default_languages'>add_default_languages</span>
|
553
|
+
<span class='id identifier rubyid_add'>add</span><span class='lparen'>(</span><span class='symbol'>:languages</span><span class='comma'>,</span> <span class='lbrace'>{</span>
|
626
554
|
<span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>af</span><span class='tstring_end'>"</span></span> <span class='op'>=></span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Afrikaans</span><span class='tstring_end'>"</span></span><span class='comma'>,</span>
|
627
555
|
<span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>sq</span><span class='tstring_end'>"</span></span> <span class='op'>=></span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Albanian</span><span class='tstring_end'>"</span></span><span class='comma'>,</span>
|
628
556
|
<span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>eu</span><span class='tstring_end'>"</span></span> <span class='op'>=></span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Basque</span><span class='tstring_end'>"</span></span><span class='comma'>,</span>
|
@@ -736,9 +664,7 @@
|
|
736
664
|
<span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>xh</span><span class='tstring_end'>"</span></span> <span class='op'>=></span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Xshosa</span><span class='tstring_end'>"</span></span><span class='comma'>,</span>
|
737
665
|
<span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>ji</span><span class='tstring_end'>"</span></span> <span class='op'>=></span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Yiddish</span><span class='tstring_end'>"</span></span><span class='comma'>,</span>
|
738
666
|
<span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>zu</span><span class='tstring_end'>"</span></span> <span class='op'>=></span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Zulu</span><span class='tstring_end'>"</span></span>
|
739
|
-
<span class='rbrace'>}</span><span class='rparen'>)</span>
|
740
|
-
|
741
|
-
<span class='ivar'>@languages</span><span class='period'>.</span><span class='id identifier rubyid_present?'>present?</span> <span class='op'>?</span> <span class='kw'>true</span> <span class='op'>:</span> <span class='kw'>false</span>
|
667
|
+
<span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_collect'>collect</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_code'>code</span><span class='comma'>,</span> <span class='id identifier rubyid_name'>name</span><span class='op'>|</span> <span class='op'>::</span><span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Definition</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_code'>code</span><span class='comma'>,</span> <span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_code'>code</span><span class='rparen'>)</span> <span class='rbrace'>}</span><span class='rparen'>)</span>
|
742
668
|
<span class='kw'>end</span></pre>
|
743
669
|
</td>
|
744
670
|
</tr>
|
@@ -746,9 +672,9 @@
|
|
746
672
|
</div>
|
747
673
|
|
748
674
|
<div class="method_details ">
|
749
|
-
<h3 class="signature " id="
|
675
|
+
<h3 class="signature " id="add_default_platforms-instance_method">
|
750
676
|
|
751
|
-
- (<tt>Boolean</tt>) <strong>
|
677
|
+
- (<tt>Boolean</tt>) <strong>add_default_platforms</strong>
|
752
678
|
|
753
679
|
|
754
680
|
|
@@ -756,7 +682,7 @@
|
|
756
682
|
|
757
683
|
</h3><div class="docstring">
|
758
684
|
<div class="discussion">
|
759
|
-
<p>
|
685
|
+
<p>Adds a default list of platforms that can be recognized.</p>
|
760
686
|
|
761
687
|
|
762
688
|
</div>
|
@@ -787,278 +713,43 @@
|
|
787
713
|
<pre class="lines">
|
788
714
|
|
789
715
|
|
790
|
-
32
|
791
|
-
33
|
792
|
-
34
|
793
|
-
35
|
794
|
-
36
|
795
|
-
37
|
796
|
-
38
|
797
|
-
39
|
798
|
-
40
|
799
|
-
41
|
800
|
-
42
|
801
|
-
43
|
802
|
-
44
|
803
|
-
45
|
804
|
-
46
|
805
|
-
47
|
806
|
-
48
|
807
|
-
49
|
808
716
|
50
|
809
717
|
51
|
810
|
-
52
|
811
|
-
|
812
|
-
|
813
|
-
|
814
|
-
|
815
|
-
|
816
|
-
|
817
|
-
|
818
|
-
|
819
|
-
|
820
|
-
|
821
|
-
|
822
|
-
|
823
|
-
|
824
|
-
|
825
|
-
<span class='lbracket'>[</span><span class='symbol'>:psp</span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>psp</span><span class='regexp_end'>/i</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Sony Playstation Portable</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span><span class='comma'>,</span>
|
826
|
-
<span class='lbracket'>[</span><span class='symbol'>:ps3</span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>playstation 3</span><span class='regexp_end'>/i</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Sony Playstation 3</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span><span class='comma'>,</span>
|
827
|
-
<span class='lbracket'>[</span><span class='symbol'>:wii</span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>wii</span><span class='regexp_end'>/i</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Nintendo Wii</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span><span class='comma'>,</span>
|
828
|
-
|
829
|
-
<span class='lbracket'>[</span><span class='symbol'>:linux</span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>linux</span><span class='regexp_end'>/i</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Linux</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span><span class='comma'>,</span>
|
830
|
-
<span class='lbracket'>[</span><span class='symbol'>:osx</span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>mac|macintosh|mac os x</span><span class='regexp_end'>/i</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Apple MacOS X</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span><span class='comma'>,</span>
|
831
|
-
<span class='lbracket'>[</span><span class='symbol'>:windows</span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>windows</span><span class='regexp_end'>/i</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Microsoft Windows</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span>
|
832
|
-
<span class='rbracket'>]</span><span class='rparen'>)</span>
|
833
|
-
|
834
|
-
<span class='ivar'>@platforms</span><span class='period'>.</span><span class='id identifier rubyid_present?'>present?</span> <span class='op'>?</span> <span class='kw'>true</span> <span class='op'>:</span> <span class='kw'>false</span>
|
835
|
-
<span class='kw'>end</span></pre>
|
836
|
-
</td>
|
837
|
-
</tr>
|
838
|
-
</table>
|
839
|
-
</div>
|
840
|
-
|
841
|
-
<div class="method_details ">
|
842
|
-
<h3 class="signature " id="register_language-instance_method">
|
843
|
-
|
844
|
-
- (<tt>Boolean</tt>) <strong>register_language</strong>(code, label = nil)
|
845
|
-
|
846
|
-
|
847
|
-
|
848
|
-
|
849
|
-
|
850
|
-
</h3><div class="docstring">
|
851
|
-
<div class="discussion">
|
852
|
-
<p>Registers a new language that can be recognized.</p>
|
853
|
-
|
854
|
-
|
855
|
-
</div>
|
856
|
-
</div>
|
857
|
-
<div class="tags">
|
858
|
-
<p class="tag_title">Parameters:</p>
|
859
|
-
<ul class="param">
|
860
|
-
|
861
|
-
<li>
|
862
|
-
|
863
|
-
<span class='name'>code</span>
|
864
|
-
|
865
|
-
|
866
|
-
<span class='type'>(<tt>String|Hash</tt>)</span>
|
867
|
-
|
868
|
-
|
869
|
-
|
870
|
-
—
|
871
|
-
<div class='inline'><p>The language code or an hash with codes as keys and label as values.</p>
|
872
|
-
</div>
|
873
|
-
|
874
|
-
</li>
|
875
|
-
|
876
|
-
<li>
|
877
|
-
|
878
|
-
<span class='name'>label</span>
|
879
|
-
|
880
|
-
|
881
|
-
<span class='type'>(<tt>String</tt>)</span>
|
882
|
-
|
883
|
-
|
884
|
-
<em class="default">(defaults to: <tt>nil</tt>)</em>
|
885
|
-
|
886
|
-
|
887
|
-
—
|
888
|
-
<div class='inline'><p>The language name. Ignored if code is an Hash.</p>
|
889
|
-
</div>
|
890
|
-
|
891
|
-
</li>
|
892
|
-
|
893
|
-
</ul>
|
894
|
-
|
895
|
-
<p class="tag_title">Returns:</p>
|
896
|
-
<ul class="return">
|
897
|
-
|
898
|
-
<li>
|
899
|
-
|
900
|
-
|
901
|
-
<span class='type'>(<tt>Boolean</tt>)</span>
|
902
|
-
|
903
|
-
|
904
|
-
|
905
|
-
—
|
906
|
-
<div class='inline'><p><code>true</code> if at least one language has been added, <code>false</code> otherwise.</p>
|
907
|
-
</div>
|
908
|
-
|
909
|
-
</li>
|
910
|
-
|
911
|
-
</ul>
|
912
|
-
|
913
|
-
</div><table class="source_code">
|
914
|
-
<tr>
|
915
|
-
<td>
|
916
|
-
<pre class="lines">
|
917
|
-
|
918
|
-
|
919
|
-
207
|
920
|
-
208
|
921
|
-
209
|
922
|
-
210
|
923
|
-
211
|
924
|
-
212
|
925
|
-
213
|
926
|
-
214
|
927
|
-
215
|
928
|
-
216
|
929
|
-
217
|
930
|
-
218
|
931
|
-
219
|
932
|
-
220</pre>
|
933
|
-
</td>
|
934
|
-
<td>
|
935
|
-
<pre class="code"><span class="info file"># File 'lib/brauser/browser.rb', line 207</span>
|
936
|
-
|
937
|
-
<span class='kw'>def</span> <span class='id identifier rubyid_register_language'>register_language</span><span class='lparen'>(</span><span class='id identifier rubyid_code'>code</span><span class='comma'>,</span> <span class='id identifier rubyid_label'>label</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
|
938
|
-
<span class='ivar'>@languages</span> <span class='op'>||=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
939
|
-
<span class='id identifier rubyid_rv'>rv</span> <span class='op'>=</span> <span class='kw'>false</span>
|
940
|
-
<span class='id identifier rubyid_code'>code</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='id identifier rubyid_code'>code</span><span class='period'>.</span><span class='id identifier rubyid_ensure_string'>ensure_string</span> <span class='op'>=></span> <span class='id identifier rubyid_label'>label</span><span class='period'>.</span><span class='id identifier rubyid_ensure_string'>ensure_string</span><span class='rbrace'>}</span> <span class='kw'>if</span> <span class='op'>!</span><span class='id identifier rubyid_code'>code</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Hash</span><span class='rparen'>)</span>
|
941
|
-
|
942
|
-
<span class='id identifier rubyid_code'>code</span><span class='period'>.</span><span class='id identifier rubyid_each_pair'>each_pair</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_c'>c</span><span class='comma'>,</span> <span class='id identifier rubyid_l'>l</span><span class='op'>|</span>
|
943
|
-
<span class='kw'>if</span> <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_present?'>present?</span> <span class='op'>&&</span> <span class='id identifier rubyid_l'>l</span><span class='period'>.</span><span class='id identifier rubyid_present?'>present?</span> <span class='kw'>then</span>
|
944
|
-
<span class='ivar'>@languages</span><span class='lbracket'>[</span><span class='id identifier rubyid_c'>c</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_l'>l</span>
|
945
|
-
<span class='id identifier rubyid_rv'>rv</span> <span class='op'>=</span> <span class='kw'>true</span>
|
946
|
-
<span class='kw'>end</span>
|
947
|
-
<span class='kw'>end</span>
|
948
|
-
|
949
|
-
<span class='id identifier rubyid_rv'>rv</span>
|
950
|
-
<span class='kw'>end</span></pre>
|
951
|
-
</td>
|
952
|
-
</tr>
|
953
|
-
</table>
|
954
|
-
</div>
|
955
|
-
|
956
|
-
<div class="method_details ">
|
957
|
-
<h3 class="signature " id="register_platform-instance_method">
|
958
|
-
|
959
|
-
- (<tt>Boolean</tt>) <strong>register_platform</strong>(name, matcher = nil, label = nil)
|
960
|
-
|
961
|
-
|
962
|
-
|
963
|
-
|
964
|
-
|
965
|
-
</h3><div class="docstring">
|
966
|
-
<div class="discussion">
|
967
|
-
<p>Registers a new platform that can be recognized.</p>
|
968
|
-
|
969
|
-
|
970
|
-
</div>
|
971
|
-
</div>
|
972
|
-
<div class="tags">
|
973
|
-
<p class="tag_title">Parameters:</p>
|
974
|
-
<ul class="param">
|
975
|
-
|
976
|
-
<li>
|
977
|
-
|
978
|
-
<span class='name'>name</span>
|
979
|
-
|
980
|
-
|
981
|
-
<span class='type'>(<tt>Symbol|Array</tt>)</span>
|
982
|
-
|
983
|
-
|
984
|
-
|
985
|
-
—
|
986
|
-
<div class='inline'><p>The platform name or a list of platforms (a list of array with <code>[name, matcher, label]</code> entries).</p>
|
987
|
-
</div>
|
988
|
-
|
989
|
-
</li>
|
990
|
-
|
991
|
-
<li>
|
992
|
-
|
993
|
-
<span class='name'>matcher</span>
|
994
|
-
|
995
|
-
|
996
|
-
<span class='type'>(<tt>StringRegexp|Block</tt>)</span>
|
997
|
-
|
998
|
-
|
999
|
-
<em class="default">(defaults to: <tt>nil</tt>)</em>
|
1000
|
-
|
1001
|
-
|
1002
|
-
—
|
1003
|
-
<div class='inline'><p>The matcher for the platform. If a block, it will be yielded with the browser name and the user agent and must return <code>true</code> if the platform was recognized.</p>
|
1004
|
-
</div>
|
1005
|
-
|
1006
|
-
</li>
|
1007
|
-
|
1008
|
-
<li>
|
1009
|
-
|
1010
|
-
<span class='name'>label</span>
|
1011
|
-
|
1012
|
-
|
1013
|
-
<span class='type'>(<tt>String</tt>)</span>
|
1014
|
-
|
1015
|
-
|
1016
|
-
<em class="default">(defaults to: <tt>nil</tt>)</em>
|
1017
|
-
|
1018
|
-
|
1019
|
-
—
|
1020
|
-
<div class='inline'><p>A human readable name of the platform.</p>
|
1021
|
-
</div>
|
1022
|
-
|
1023
|
-
</li>
|
1024
|
-
|
1025
|
-
</ul>
|
1026
|
-
|
1027
|
-
<p class="tag_title">Returns:</p>
|
1028
|
-
<ul class="return">
|
1029
|
-
|
1030
|
-
<li>
|
1031
|
-
|
1032
|
-
|
1033
|
-
<span class='type'>(<tt>Boolean</tt>)</span>
|
1034
|
-
|
1035
|
-
|
1036
|
-
|
1037
|
-
—
|
1038
|
-
<div class='inline'><p><code>true</code> if at least one platform has been added, <code>false</code> otherwise.</p>
|
1039
|
-
</div>
|
1040
|
-
|
1041
|
-
</li>
|
1042
|
-
|
1043
|
-
</ul>
|
1044
|
-
|
1045
|
-
</div><table class="source_code">
|
1046
|
-
<tr>
|
1047
|
-
<td>
|
1048
|
-
<pre class="lines">
|
1049
|
-
|
1050
|
-
|
1051
|
-
197
|
1052
|
-
198
|
1053
|
-
199
|
1054
|
-
200</pre>
|
718
|
+
52
|
719
|
+
53
|
720
|
+
54
|
721
|
+
55
|
722
|
+
56
|
723
|
+
57
|
724
|
+
58
|
725
|
+
59
|
726
|
+
60
|
727
|
+
61
|
728
|
+
62
|
729
|
+
63
|
730
|
+
64
|
731
|
+
65
|
732
|
+
66</pre>
|
1055
733
|
</td>
|
1056
734
|
<td>
|
1057
|
-
<pre class="code"><span class="info file"># File 'lib/brauser/browser.rb', line
|
1058
|
-
|
1059
|
-
<span class='kw'>def</span> <span class='id identifier
|
1060
|
-
<span class='
|
1061
|
-
|
735
|
+
<pre class="code"><span class="info file"># File 'lib/brauser/browser.rb', line 50</span>
|
736
|
+
|
737
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_add_default_platforms'>add_default_platforms</span>
|
738
|
+
<span class='id identifier rubyid_add'>add</span><span class='lparen'>(</span><span class='symbol'>:platforms</span><span class='comma'>,</span> <span class='lbracket'>[</span>
|
739
|
+
<span class='lbracket'>[</span><span class='symbol'>:symbian</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Symbian</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>s60|symb</span><span class='regexp_end'>/i</span></span><span class='rbracket'>]</span><span class='comma'>,</span>
|
740
|
+
<span class='lbracket'>[</span><span class='symbol'>:windows_phone</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Microsoft Windows Phone</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>windows phone</span><span class='regexp_end'>/i</span></span><span class='rbracket'>]</span><span class='comma'>,</span>
|
741
|
+
<span class='lbracket'>[</span><span class='symbol'>:kindle</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Nokia Symbian</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>kindle|silk</span><span class='regexp_end'>/i</span></span><span class='comma'>,</span> <span class='rbracket'>]</span><span class='comma'>,</span>
|
742
|
+
<span class='lbracket'>[</span><span class='symbol'>:ios</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Apple iOS</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='const'>Proc</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='id identifier rubyid_agent'>agent</span><span class='op'>|</span> <span class='lbracket'>[</span><span class='symbol'>:iphone</span><span class='comma'>,</span> <span class='symbol'>:ipad</span><span class='comma'>,</span> <span class='symbol'>:ipod</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='id identifier rubyid_agent'>agent</span> <span class='op'>=~</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>ipad|iphone|ipod</span><span class='regexp_end'>/i</span></span> <span class='rbrace'>}</span><span class='rbracket'>]</span><span class='comma'>,</span>
|
743
|
+
<span class='lbracket'>[</span><span class='symbol'>:android</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Android</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>android</span><span class='regexp_end'>/i</span></span><span class='rbracket'>]</span><span class='comma'>,</span>
|
744
|
+
<span class='lbracket'>[</span><span class='symbol'>:blackberry</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>RIM BlackBerry</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>blackberry</span><span class='regexp_end'>/i</span></span><span class='rbracket'>]</span><span class='comma'>,</span>
|
745
|
+
<span class='lbracket'>[</span><span class='symbol'>:psp</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Sony Playstation Portable</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>psp</span><span class='regexp_end'>/i</span></span><span class='rbracket'>]</span><span class='comma'>,</span>
|
746
|
+
<span class='lbracket'>[</span><span class='symbol'>:ps3</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Sony Playstation 3</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>playstation 3</span><span class='regexp_end'>/i</span></span><span class='rbracket'>]</span><span class='comma'>,</span>
|
747
|
+
<span class='lbracket'>[</span><span class='symbol'>:wii</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Nintendo Wii</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>wii</span><span class='regexp_end'>/i</span></span><span class='rbracket'>]</span><span class='comma'>,</span>
|
748
|
+
|
749
|
+
<span class='lbracket'>[</span><span class='symbol'>:linux</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Linux</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>linux</span><span class='regexp_end'>/i</span></span><span class='rbracket'>]</span><span class='comma'>,</span>
|
750
|
+
<span class='lbracket'>[</span><span class='symbol'>:osx</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Apple MacOS X</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>mac|macintosh|mac os x</span><span class='regexp_end'>/i</span></span><span class='rbracket'>]</span><span class='comma'>,</span>
|
751
|
+
<span class='lbracket'>[</span><span class='symbol'>:windows</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Microsoft Windows</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>windows</span><span class='regexp_end'>/i</span></span><span class='rbracket'>]</span>
|
752
|
+
<span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_collect'>collect</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_platform'>platform</span><span class='op'>|</span> <span class='op'>::</span><span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Definition</span><span class='period'>.</span><span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='symbol'>:new</span><span class='comma'>,</span> <span class='op'>*</span><span class='id identifier rubyid_platform'>platform</span><span class='rparen'>)</span> <span class='rbrace'>}</span><span class='rparen'>)</span>
|
1062
753
|
<span class='kw'>end</span></pre>
|
1063
754
|
</td>
|
1064
755
|
</tr>
|
@@ -1070,7 +761,7 @@
|
|
1070
761
|
</div>
|
1071
762
|
|
1072
763
|
<div id="footer">
|
1073
|
-
Generated on
|
764
|
+
Generated on Sun May 19 12:02:56 2013 by
|
1074
765
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
1075
766
|
0.8.6.1 (ruby-1.9.3).
|
1076
767
|
</div>
|