brauser 4.0.0 → 4.1.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.
@@ -6,7 +6,7 @@
6
6
  <title>
7
7
  Module: Brauser::Definitions
8
8
 
9
- &mdash; Documentation by YARD 0.8.7.4
9
+ &mdash; Documentation by YARD 0.8.7.6
10
10
 
11
11
  </title>
12
12
 
@@ -273,9 +273,10 @@
273
273
  <td>
274
274
  <pre class="code"><span class="info file"># File 'lib/brauser/definitions/base.rb', line 34</span>
275
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>
276
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_self self kw'>self</span><span class='dot token'>.</span><span class='rubyid_browsers identifier id'>browsers</span>
277
+ <span class='rubyid_@definitions ivar id'>@definitions</span><span class='lbrack token'>[</span><span class='symbol val'>:browsers</span><span class='rbrack token'>]</span>
278
+ <span class='rubyid_end end kw'>end</span>
279
+ </pre>
279
280
  </td>
280
281
  </tr>
281
282
  </table>
@@ -332,9 +333,10 @@
332
333
  <td>
333
334
  <pre class="code"><span class="info file"># File 'lib/brauser/definitions/base.rb', line 52</span>
334
335
 
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>
336
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_self self kw'>self</span><span class='dot token'>.</span><span class='rubyid_languages identifier id'>languages</span>
337
+ <span class='rubyid_@definitions ivar id'>@definitions</span><span class='lbrack token'>[</span><span class='symbol val'>:languages</span><span class='rbrack token'>]</span>
338
+ <span class='rubyid_end end kw'>end</span>
339
+ </pre>
338
340
  </td>
339
341
  </tr>
340
342
  </table>
@@ -391,9 +393,10 @@
391
393
  <td>
392
394
  <pre class="code"><span class="info file"># File 'lib/brauser/definitions/base.rb', line 43</span>
393
395
 
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>
396
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_self self kw'>self</span><span class='dot token'>.</span><span class='rubyid_platforms identifier id'>platforms</span>
397
+ <span class='rubyid_@definitions ivar id'>@definitions</span><span class='lbrack token'>[</span><span class='symbol val'>:platforms</span><span class='rbrack token'>]</span>
398
+ <span class='rubyid_end end kw'>end</span>
399
+ </pre>
397
400
  </td>
398
401
  </tr>
399
402
  </table>
@@ -505,19 +508,20 @@
505
508
  <td>
506
509
  <pre class="code"><span class="info file"># File 'lib/brauser/definitions/base.rb', line 15</span>
507
510
 
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>
511
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_self self kw'>self</span><span class='dot token'>.</span><span class='rubyid_register identifier id'>register</span><span class='lparen token'>(</span><span class='rubyid_type identifier id'>type</span><span class='comma token'>,</span> <span class='mult op'>*</span><span class='rubyid_args identifier id'>args</span><span class='comma token'>,</span> <span class='pow op'>**</span><span class='rubyid_kwargs identifier id'>kwargs</span><span class='comma token'>,</span> <span class='bitand op'>&amp;</span><span class='rubyid_block identifier id'>block</span><span class='rparen token'>)</span>
512
+ <span class='rubyid_klass identifier id'>klass</span> <span class='assign token'>=</span>
513
+ <span class='rubyid_case case kw'>case</span> <span class='rubyid_type identifier id'>type</span>
514
+ <span class='rubyid_when when kw'>when</span> <span class='symbol val'>:browser</span> <span class='rubyid_then then kw'>then</span> <span class='rubyid_Brauser constant id'>Brauser</span><span class='colon2 op'>::</span><span class='rubyid_Definitions constant id'>Definitions</span><span class='colon2 op'>::</span><span class='rubyid_Browser constant id'>Browser</span>
515
+ <span class='rubyid_when when kw'>when</span> <span class='symbol val'>:language</span> <span class='rubyid_then then kw'>then</span> <span class='rubyid_Brauser constant id'>Brauser</span><span class='colon2 op'>::</span><span class='rubyid_Definitions constant id'>Definitions</span><span class='colon2 op'>::</span><span class='rubyid_Language constant id'>Language</span>
516
+ <span class='rubyid_when when kw'>when</span> <span class='symbol val'>:platform</span> <span class='rubyid_then then kw'>then</span> <span class='rubyid_Brauser constant id'>Brauser</span><span class='colon2 op'>::</span><span class='rubyid_Definitions constant id'>Definitions</span><span class='colon2 op'>::</span><span class='rubyid_Platform constant id'>Platform</span>
517
+ <span class='rubyid_else else kw'>else</span> <span class='rubyid_raise identifier id'>raise</span><span class='lparen token'>(</span><span class='rubyid_ArgumentError constant id'>ArgumentError</span><span class='comma token'>,</span> <span class='dstring node'>&quot;Invalid definition type \&quot;#{type}\&quot;.&quot;</span><span class='rparen token'>)</span>
518
+ <span class='rubyid_end end kw'>end</span>
519
+
520
+ <span class='rubyid_@definitions ivar id'>@definitions</span> <span class='opasgn op'>||=</span> <span class='lbrace token'>{</span><span class='label val'>browsers:</span> <span class='lbrace token'>{</span><span class='rbrace token'>}</span><span class='comma token'>,</span> <span class='label val'>languages:</span> <span class='lbrace token'>{</span><span class='rbrace token'>}</span><span class='comma token'>,</span> <span class='label val'>platforms:</span> <span class='lbrace token'>{</span><span class='rbrace token'>}</span><span class='rbrace token'>}</span>
521
+ <span class='rubyid_definition identifier id'>definition</span> <span class='assign token'>=</span> <span class='rubyid_klass identifier id'>klass</span><span class='dot token'>.</span><span class='rubyid_new identifier id'>new</span><span class='lparen token'>(</span><span class='mult op'>*</span><span class='rubyid_args identifier id'>args</span><span class='comma token'>,</span> <span class='pow op'>**</span><span class='rubyid_kwargs identifier id'>kwargs</span><span class='comma token'>,</span> <span class='bitand op'>&amp;</span><span class='rubyid_block identifier id'>block</span><span class='rparen token'>)</span>
522
+ <span class='rubyid_@definitions ivar id'>@definitions</span><span class='lbrack token'>[</span><span class='dstring node'>&quot;#{type}s&quot;</span><span class='dot token'>.</span><span class='rubyid_to_sym identifier id'>to_sym</span><span class='rbrack token'>]</span><span class='lbrack token'>[</span><span class='rubyid_definition identifier id'>definition</span><span class='dot token'>.</span><span class='rubyid_id identifier id'>id</span><span class='rbrack token'>]</span> <span class='assign token'>=</span> <span class='rubyid_definition identifier id'>definition</span>
523
+ <span class='rubyid_end end kw'>end</span>
524
+ </pre>
521
525
  </td>
522
526
  </tr>
523
527
  </table>
@@ -528,9 +532,9 @@
528
532
  </div>
529
533
 
530
534
  <div id="footer">
531
- Generated on Mon Sep 29 16:43:31 2014 by
535
+ Generated on Mon Mar 2 13:10:31 2015 by
532
536
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
533
- 0.8.7.4 (ruby-2.1.3).
537
+ 0.8.7.6 (ruby-2.2.0).
534
538
  </div>
535
539
 
536
540
  </body>
@@ -6,7 +6,7 @@
6
6
  <title>
7
7
  Class: Brauser::Definitions::Base
8
8
 
9
- &mdash; Documentation by YARD 0.8.7.4
9
+ &mdash; Documentation by YARD 0.8.7.6
10
10
 
11
11
  </title>
12
12
 
@@ -249,16 +249,17 @@
249
249
  <td>
250
250
  <pre class="code"><span class="info file"># File 'lib/brauser/definitions/base.rb', line 60</span>
251
251
 
252
- <span class='kw'>class</span> <span class='const'>Base</span>
253
- <span class='id identifier rubyid_attr_reader'>attr_reader</span> <span class='symbol'>:id</span>
254
-
255
- <span class='comment'># Performs a match of this definition.
256
- </span> <span class='comment'>#
257
- </span> <span class='comment'># @return [Object|NilClass] A non falsy value if match succeeded, `false` or `nil` otherwise.
258
- </span> <span class='kw'>def</span> <span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='op'>*</span><span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid__'>_</span><span class='rparen'>)</span>
259
- <span class='id identifier rubyid_raise'>raise</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Must be overridden by a subclass.</span><span class='tstring_end'>&quot;</span></span>
260
- <span class='kw'>end</span>
261
- <span class='kw'>end</span></pre>
252
+ <span class='rubyid_class class kw'>class</span> <span class='rubyid_Base constant id'>Base</span>
253
+ <span class='rubyid_attr_reader identifier id'>attr_reader</span> <span class='symbol val'>:id</span>
254
+
255
+ <span class='comment val'># Performs a match of this definition.</span>
256
+ <span class='comment val'>#</span>
257
+ <span class='comment val'># @return [Object|NilClass] A non falsy value if match succeeded, `false` or `nil` otherwise.</span>
258
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_match identifier id'>match</span><span class='lparen token'>(</span><span class='rubyid__ identifier id'>_</span><span class='comma token'>,</span> <span class='mult op'>*</span><span class='rubyid__ identifier id'>_</span><span class='comma token'>,</span> <span class='pow op'>**</span><span class='rubyid__ identifier id'>_</span><span class='rparen token'>)</span>
259
+ <span class='rubyid_raise identifier id'>raise</span> <span class='string val'>&quot;Must be overridden by a subclass.&quot;</span>
260
+ <span class='rubyid_end end kw'>end</span>
261
+ <span class='rubyid_end end kw'>end</span>
262
+ </pre>
262
263
  </td>
263
264
  </tr>
264
265
  </table>
@@ -320,9 +321,10 @@
320
321
  <td>
321
322
  <pre class="code"><span class="info file"># File 'lib/brauser/definitions/base.rb', line 66</span>
322
323
 
323
- <span class='kw'>def</span> <span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='op'>*</span><span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid__'>_</span><span class='rparen'>)</span>
324
- <span class='id identifier rubyid_raise'>raise</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Must be overridden by a subclass.</span><span class='tstring_end'>&quot;</span></span>
325
- <span class='kw'>end</span></pre>
324
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_match identifier id'>match</span><span class='lparen token'>(</span><span class='rubyid__ identifier id'>_</span><span class='comma token'>,</span> <span class='mult op'>*</span><span class='rubyid__ identifier id'>_</span><span class='comma token'>,</span> <span class='pow op'>**</span><span class='rubyid__ identifier id'>_</span><span class='rparen token'>)</span>
325
+ <span class='rubyid_raise identifier id'>raise</span> <span class='string val'>&quot;Must be overridden by a subclass.&quot;</span>
326
+ <span class='rubyid_end end kw'>end</span>
327
+ </pre>
326
328
  </td>
327
329
  </tr>
328
330
  </table>
@@ -333,9 +335,9 @@
333
335
  </div>
334
336
 
335
337
  <div id="footer">
336
- Generated on Mon Sep 29 16:43:32 2014 by
338
+ Generated on Mon Mar 2 13:10:31 2015 by
337
339
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
338
- 0.8.7.4 (ruby-2.1.3).
340
+ 0.8.7.6 (ruby-2.2.0).
339
341
  </div>
340
342
 
341
343
  </body>
@@ -6,7 +6,7 @@
6
6
  <title>
7
7
  Class: Brauser::Definitions::Browser
8
8
 
9
- &mdash; Documentation by YARD 0.8.7.4
9
+ &mdash; Documentation by YARD 0.8.7.6
10
10
 
11
11
  </title>
12
12
 
@@ -379,12 +379,13 @@
379
379
  <td>
380
380
  <pre class="code"><span class="info file"># File 'lib/brauser/definitions/browser.rb', line 25</span>
381
381
 
382
- <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_id'>id</span><span class='comma'>,</span> <span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_engine_matcher'>engine_matcher</span><span class='comma'>,</span> <span class='id identifier rubyid_version_matcher'>version_matcher</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid__'>_</span><span class='rparen'>)</span>
383
- <span class='ivar'>@id</span> <span class='op'>=</span> <span class='id identifier rubyid_id'>id</span>
384
- <span class='ivar'>@name</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span>
385
- <span class='ivar'>@engine_matcher</span> <span class='op'>=</span> <span class='id identifier rubyid_engine_matcher'>engine_matcher</span>
386
- <span class='ivar'>@version_matcher</span> <span class='op'>=</span> <span class='id identifier rubyid_version_matcher'>version_matcher</span>
387
- <span class='kw'>end</span></pre>
382
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_initialize identifier id'>initialize</span><span class='lparen token'>(</span><span class='rubyid_id identifier id'>id</span><span class='comma token'>,</span> <span class='rubyid_name identifier id'>name</span><span class='comma token'>,</span> <span class='rubyid_engine_matcher identifier id'>engine_matcher</span><span class='comma token'>,</span> <span class='rubyid_version_matcher identifier id'>version_matcher</span><span class='comma token'>,</span> <span class='pow op'>**</span><span class='rubyid__ identifier id'>_</span><span class='rparen token'>)</span>
383
+ <span class='rubyid_@id ivar id'>@id</span> <span class='assign token'>=</span> <span class='rubyid_id identifier id'>id</span>
384
+ <span class='rubyid_@name ivar id'>@name</span> <span class='assign token'>=</span> <span class='rubyid_name identifier id'>name</span>
385
+ <span class='rubyid_@engine_matcher ivar id'>@engine_matcher</span> <span class='assign token'>=</span> <span class='rubyid_engine_matcher identifier id'>engine_matcher</span>
386
+ <span class='rubyid_@version_matcher ivar id'>@version_matcher</span> <span class='assign token'>=</span> <span class='rubyid_version_matcher identifier id'>version_matcher</span>
387
+ <span class='rubyid_end end kw'>end</span>
388
+ </pre>
388
389
  </td>
389
390
  </tr>
390
391
  </table>
@@ -506,69 +507,70 @@
506
507
  <td>
507
508
  <pre class="code"><span class="info file"># File 'lib/brauser/definitions/browser.rb', line 16</span>
508
509
 
509
- <span class='kw'>class</span> <span class='const'>Browser</span> <span class='op'>&lt;</span> <span class='const'>Base</span>
510
- <span class='id identifier rubyid_attr_reader'>attr_reader</span> <span class='symbol'>:name</span><span class='comma'>,</span> <span class='symbol'>:engine_matcher</span><span class='comma'>,</span> <span class='symbol'>:version_matcher</span>
511
-
512
- <span class='comment'># Creates a new definition.
513
- </span> <span class='comment'>#
514
- </span> <span class='comment'># @param id [Symbol] The platform id.
515
- </span> <span class='comment'># @param name [String] The platform name.
516
- </span> <span class='comment'># @param engine_matcher [Regexp|Proc] The pattern or the block to recognize the engine.
517
- </span> <span class='comment'># @param version_matcher [Regexp|Proc] The pattern or the block to recognize the version.
518
- </span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_id'>id</span><span class='comma'>,</span> <span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_engine_matcher'>engine_matcher</span><span class='comma'>,</span> <span class='id identifier rubyid_version_matcher'>version_matcher</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid__'>_</span><span class='rparen'>)</span>
519
- <span class='ivar'>@id</span> <span class='op'>=</span> <span class='id identifier rubyid_id'>id</span>
520
- <span class='ivar'>@name</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span>
521
- <span class='ivar'>@engine_matcher</span> <span class='op'>=</span> <span class='id identifier rubyid_engine_matcher'>engine_matcher</span>
522
- <span class='ivar'>@version_matcher</span> <span class='op'>=</span> <span class='id identifier rubyid_version_matcher'>version_matcher</span>
523
- <span class='kw'>end</span>
524
-
525
- <span class='comment'># Matches against an header.
526
- </span> <span class='comment'>#
527
- </span> <span class='comment'># @param header [String] The header to match
528
- </span> <span class='comment'># @return [Array|NilClass] An array with the engine and the version if match succeeded, `false` or `nil` otherwise.
529
- </span> <span class='kw'>def</span> <span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='id identifier rubyid_header'>header</span><span class='rparen'>)</span>
530
- <span class='comment'># First of all, match the engine
531
- </span> <span class='id identifier rubyid_engine'>engine</span> <span class='op'>=</span> <span class='id identifier rubyid_perform_match'>perform_match</span><span class='lparen'>(</span><span class='ivar'>@engine_matcher</span><span class='comma'>,</span> <span class='id identifier rubyid_header'>header</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='ivar'>@id</span> <span class='op'>:</span> <span class='kw'>nil</span>
532
-
533
- <span class='kw'>if</span> <span class='id identifier rubyid_engine'>engine</span>
534
- <span class='id identifier rubyid_version'>version</span> <span class='op'>=</span> <span class='id identifier rubyid_extract_version'>extract_version</span><span class='lparen'>(</span><span class='id identifier rubyid_perform_match'>perform_match</span><span class='lparen'>(</span><span class='ivar'>@version_matcher</span><span class='comma'>,</span> <span class='id identifier rubyid_header'>header</span><span class='rparen'>)</span><span class='rparen'>)</span>
535
- <span class='id identifier rubyid_platform'>platform</span> <span class='op'>=</span> <span class='id identifier rubyid_extract_platform'>extract_platform</span><span class='lparen'>(</span><span class='id identifier rubyid_header'>header</span><span class='comma'>,</span> <span class='id identifier rubyid_engine'>engine</span><span class='rparen'>)</span>
536
- <span class='lbracket'>[</span><span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Value</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_engine'>engine</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Value</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_version'>version</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Value</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_platform'>platform</span><span class='rparen'>)</span><span class='rbracket'>]</span>
537
- <span class='kw'>else</span>
538
- <span class='kw'>nil</span>
539
- <span class='kw'>end</span>
540
- <span class='kw'>end</span>
541
-
542
- <span class='id identifier rubyid_private'>private</span>
543
-
544
- <span class='comment'># :nodoc:
545
- </span> <span class='kw'>def</span> <span class='id identifier rubyid_perform_match'>perform_match</span><span class='lparen'>(</span><span class='id identifier rubyid_pattern'>pattern</span><span class='comma'>,</span> <span class='id identifier rubyid_subject'>subject</span><span class='rparen'>)</span>
546
- <span class='id identifier rubyid_method'>method</span> <span class='op'>=</span> <span class='id identifier rubyid_pattern'>pattern</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Regexp</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='symbol'>:match</span> <span class='op'>:</span> <span class='symbol'>:call</span>
547
- <span class='id identifier rubyid_pattern'>pattern</span><span class='period'>.</span><span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='id identifier rubyid_method'>method</span><span class='comma'>,</span> <span class='id identifier rubyid_subject'>subject</span><span class='rparen'>)</span>
548
- <span class='kw'>end</span>
549
-
550
- <span class='comment'># :nodoc:
551
- </span> <span class='comment'># @private
552
- </span> <span class='kw'>def</span> <span class='id identifier rubyid_extract_version'>extract_version</span><span class='lparen'>(</span><span class='id identifier rubyid_version'>version</span><span class='rparen'>)</span>
553
- <span class='comment'># Adjust version
554
- </span> <span class='id identifier rubyid_version'>version</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>0.0</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_version'>version</span><span class='period'>.</span><span class='id identifier rubyid_blank?'>blank?</span>
555
- <span class='id identifier rubyid_version'>version</span> <span class='op'>=</span> <span class='id identifier rubyid_version'>version</span><span class='period'>.</span><span class='id identifier rubyid_to_a'>to_a</span><span class='period'>.</span><span class='id identifier rubyid_last'>last</span> <span class='kw'>if</span> <span class='id identifier rubyid_version'>version</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'>MatchData</span><span class='rparen'>)</span>
556
- <span class='const'>Versionomy</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_version'>version</span><span class='rparen'>)</span>
557
- <span class='kw'>rescue</span>
558
- <span class='id identifier rubyid_version'>version</span>
559
- <span class='kw'>end</span>
560
-
561
- <span class='comment'># :nodoc:
562
- </span> <span class='kw'>def</span> <span class='id identifier rubyid_extract_platform'>extract_platform</span><span class='lparen'>(</span><span class='id identifier rubyid_header'>header</span><span class='comma'>,</span> <span class='id identifier rubyid_engine'>engine</span><span class='rparen'>)</span>
563
- <span class='id identifier rubyid_catch'>catch</span><span class='lparen'>(</span><span class='symbol'>:result</span><span class='rparen'>)</span> <span class='lbrace'>{</span>
564
- <span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Definitions</span><span class='period'>.</span><span class='id identifier rubyid_platforms'>platforms</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_platform'>platform</span><span class='comma'>,</span> <span class='id identifier rubyid_definition'>definition</span><span class='op'>|</span>
565
- <span class='id identifier rubyid_throw'>throw</span><span class='lparen'>(</span><span class='symbol'>:result</span><span class='comma'>,</span> <span class='id identifier rubyid_platform'>platform</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_definition'>definition</span><span class='period'>.</span><span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='id identifier rubyid_header'>header</span><span class='comma'>,</span> <span class='id identifier rubyid_engine'>engine</span><span class='rparen'>)</span>
566
- <span class='kw'>end</span>
567
-
568
- <span class='kw'>nil</span>
569
- <span class='rbrace'>}</span>
570
- <span class='kw'>end</span>
571
- <span class='kw'>end</span></pre>
510
+ <span class='rubyid_class class kw'>class</span> <span class='rubyid_Browser constant id'>Browser</span> <span class='lt op'>&lt;</span> <span class='rubyid_Base constant id'>Base</span>
511
+ <span class='rubyid_attr_reader identifier id'>attr_reader</span> <span class='symbol val'>:name</span><span class='comma token'>,</span> <span class='symbol val'>:engine_matcher</span><span class='comma token'>,</span> <span class='symbol val'>:version_matcher</span>
512
+
513
+ <span class='comment val'># Creates a new definition.</span>
514
+ <span class='comment val'>#</span>
515
+ <span class='comment val'># @param id [Symbol] The platform id.</span>
516
+ <span class='comment val'># @param name [String] The platform name.</span>
517
+ <span class='comment val'># @param engine_matcher [Regexp|Proc] The pattern or the block to recognize the engine.</span>
518
+ <span class='comment val'># @param version_matcher [Regexp|Proc] The pattern or the block to recognize the version.</span>
519
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_initialize identifier id'>initialize</span><span class='lparen token'>(</span><span class='rubyid_id identifier id'>id</span><span class='comma token'>,</span> <span class='rubyid_name identifier id'>name</span><span class='comma token'>,</span> <span class='rubyid_engine_matcher identifier id'>engine_matcher</span><span class='comma token'>,</span> <span class='rubyid_version_matcher identifier id'>version_matcher</span><span class='comma token'>,</span> <span class='pow op'>**</span><span class='rubyid__ identifier id'>_</span><span class='rparen token'>)</span>
520
+ <span class='rubyid_@id ivar id'>@id</span> <span class='assign token'>=</span> <span class='rubyid_id identifier id'>id</span>
521
+ <span class='rubyid_@name ivar id'>@name</span> <span class='assign token'>=</span> <span class='rubyid_name identifier id'>name</span>
522
+ <span class='rubyid_@engine_matcher ivar id'>@engine_matcher</span> <span class='assign token'>=</span> <span class='rubyid_engine_matcher identifier id'>engine_matcher</span>
523
+ <span class='rubyid_@version_matcher ivar id'>@version_matcher</span> <span class='assign token'>=</span> <span class='rubyid_version_matcher identifier id'>version_matcher</span>
524
+ <span class='rubyid_end end kw'>end</span>
525
+
526
+ <span class='comment val'># Matches against an header.</span>
527
+ <span class='comment val'>#</span>
528
+ <span class='comment val'># @param header [String] The header to match</span>
529
+ <span class='comment val'># @return [Array|NilClass] An array with the engine and the version if match succeeded, `false` or `nil` otherwise.</span>
530
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_match identifier id'>match</span><span class='lparen token'>(</span><span class='rubyid_header identifier id'>header</span><span class='rparen token'>)</span>
531
+ <span class='comment val'># First of all, match the engine</span>
532
+ <span class='rubyid_engine identifier id'>engine</span> <span class='assign token'>=</span> <span class='rubyid_perform_match identifier id'>perform_match</span><span class='lparen token'>(</span><span class='rubyid_@engine_matcher ivar id'>@engine_matcher</span><span class='comma token'>,</span> <span class='rubyid_header identifier id'>header</span><span class='rparen token'>)</span> <span class='question op'>?</span> <span class='rubyid_@id ivar id'>@id</span> <span class='colon op'>:</span> <span class='rubyid_nil nil kw'>nil</span>
533
+
534
+ <span class='rubyid_if if kw'>if</span> <span class='rubyid_engine identifier id'>engine</span>
535
+ <span class='rubyid_version identifier id'>version</span> <span class='assign token'>=</span> <span class='rubyid_extract_version identifier id'>extract_version</span><span class='lparen token'>(</span><span class='rubyid_perform_match identifier id'>perform_match</span><span class='lparen token'>(</span><span class='rubyid_@version_matcher ivar id'>@version_matcher</span><span class='comma token'>,</span> <span class='rubyid_header identifier id'>header</span><span class='rparen token'>)</span><span class='rparen token'>)</span>
536
+ <span class='rubyid_platform identifier id'>platform</span> <span class='assign token'>=</span> <span class='rubyid_extract_platform identifier id'>extract_platform</span><span class='lparen token'>(</span><span class='rubyid_header identifier id'>header</span><span class='comma token'>,</span> <span class='rubyid_engine identifier id'>engine</span><span class='rparen token'>)</span>
537
+ <span class='lbrack token'>[</span><span class='rubyid_Brauser constant id'>Brauser</span><span class='colon2 op'>::</span><span class='rubyid_Value constant id'>Value</span><span class='dot token'>.</span><span class='rubyid_new identifier id'>new</span><span class='lparen token'>(</span><span class='rubyid_engine identifier id'>engine</span><span class='rparen token'>)</span><span class='comma token'>,</span> <span class='rubyid_Brauser constant id'>Brauser</span><span class='colon2 op'>::</span><span class='rubyid_Value constant id'>Value</span><span class='dot token'>.</span><span class='rubyid_new identifier id'>new</span><span class='lparen token'>(</span><span class='rubyid_version identifier id'>version</span><span class='rparen token'>)</span><span class='comma token'>,</span> <span class='rubyid_Brauser constant id'>Brauser</span><span class='colon2 op'>::</span><span class='rubyid_Value constant id'>Value</span><span class='dot token'>.</span><span class='rubyid_new identifier id'>new</span><span class='lparen token'>(</span><span class='rubyid_platform identifier id'>platform</span><span class='rparen token'>)</span><span class='rbrack token'>]</span>
538
+ <span class='rubyid_else else kw'>else</span>
539
+ <span class='rubyid_nil nil kw'>nil</span>
540
+ <span class='rubyid_end end kw'>end</span>
541
+ <span class='rubyid_end end kw'>end</span>
542
+
543
+ <span class='rubyid_private identifier id'>private</span>
544
+
545
+ <span class='comment val'># :nodoc:</span>
546
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_perform_match identifier id'>perform_match</span><span class='lparen token'>(</span><span class='rubyid_pattern identifier id'>pattern</span><span class='comma token'>,</span> <span class='rubyid_subject identifier id'>subject</span><span class='rparen token'>)</span>
547
+ <span class='rubyid_method identifier id'>method</span> <span class='assign token'>=</span> <span class='rubyid_pattern identifier id'>pattern</span><span class='dot token'>.</span><span class='rubyid_is_a? fid id'>is_a?</span><span class='lparen token'>(</span><span class='rubyid_Regexp constant id'>Regexp</span><span class='rparen token'>)</span> <span class='question op'>?</span> <span class='symbol val'>:match</span> <span class='colon op'>:</span> <span class='symbol val'>:call</span>
548
+ <span class='rubyid_pattern identifier id'>pattern</span><span class='dot token'>.</span><span class='rubyid_send identifier id'>send</span><span class='lparen token'>(</span><span class='rubyid_method identifier id'>method</span><span class='comma token'>,</span> <span class='rubyid_subject identifier id'>subject</span><span class='rparen token'>)</span>
549
+ <span class='rubyid_end end kw'>end</span>
550
+
551
+ <span class='comment val'># :nodoc:</span>
552
+ <span class='comment val'># @private</span>
553
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_extract_version identifier id'>extract_version</span><span class='lparen token'>(</span><span class='rubyid_version identifier id'>version</span><span class='rparen token'>)</span>
554
+ <span class='comment val'># Adjust version</span>
555
+ <span class='rubyid_version identifier id'>version</span> <span class='assign token'>=</span> <span class='string val'>&quot;0.0&quot;</span> <span class='rubyid_if if_mod kw'>if</span> <span class='rubyid_version identifier id'>version</span><span class='dot token'>.</span><span class='rubyid_blank? fid id'>blank?</span>
556
+ <span class='rubyid_version identifier id'>version</span> <span class='assign token'>=</span> <span class='rubyid_version identifier id'>version</span><span class='dot token'>.</span><span class='rubyid_to_a identifier id'>to_a</span><span class='dot token'>.</span><span class='rubyid_last identifier id'>last</span> <span class='rubyid_if if_mod kw'>if</span> <span class='rubyid_version identifier id'>version</span><span class='dot token'>.</span><span class='rubyid_is_a? fid id'>is_a?</span><span class='lparen token'>(</span><span class='colon3 op'>::</span><span class='rubyid_MatchData constant id'>MatchData</span><span class='rparen token'>)</span>
557
+ <span class='rubyid_Versionomy constant id'>Versionomy</span><span class='dot token'>.</span><span class='rubyid_parse identifier id'>parse</span><span class='lparen token'>(</span><span class='rubyid_version identifier id'>version</span><span class='rparen token'>)</span>
558
+ <span class='rubyid_rescue rescue kw'>rescue</span>
559
+ <span class='rubyid_version identifier id'>version</span>
560
+ <span class='rubyid_end end kw'>end</span>
561
+
562
+ <span class='comment val'># :nodoc:</span>
563
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_extract_platform identifier id'>extract_platform</span><span class='lparen token'>(</span><span class='rubyid_header identifier id'>header</span><span class='comma token'>,</span> <span class='rubyid_engine identifier id'>engine</span><span class='rparen token'>)</span>
564
+ <span class='rubyid_catch identifier id'>catch</span><span class='lparen token'>(</span><span class='symbol val'>:result</span><span class='rparen token'>)</span> <span class='lbrace token'>{</span>
565
+ <span class='rubyid_Brauser constant id'>Brauser</span><span class='colon2 op'>::</span><span class='rubyid_Definitions constant id'>Definitions</span><span class='dot token'>.</span><span class='rubyid_platforms identifier id'>platforms</span><span class='dot token'>.</span><span class='rubyid_each identifier id'>each</span> <span class='rubyid_do do kw'>do</span> <span class='bitor op'>|</span><span class='rubyid_platform identifier id'>platform</span><span class='comma token'>,</span> <span class='rubyid_definition identifier id'>definition</span><span class='bitor op'>|</span>
566
+ <span class='rubyid_throw identifier id'>throw</span><span class='lparen token'>(</span><span class='symbol val'>:result</span><span class='comma token'>,</span> <span class='rubyid_platform identifier id'>platform</span><span class='rparen token'>)</span> <span class='rubyid_if if_mod kw'>if</span> <span class='rubyid_definition identifier id'>definition</span><span class='dot token'>.</span><span class='rubyid_match identifier id'>match</span><span class='lparen token'>(</span><span class='rubyid_header identifier id'>header</span><span class='comma token'>,</span> <span class='rubyid_engine identifier id'>engine</span><span class='rparen token'>)</span>
567
+ <span class='rubyid_end end kw'>end</span>
568
+
569
+ <span class='rubyid_nil nil kw'>nil</span>
570
+ <span class='rbrace token'>}</span>
571
+ <span class='rubyid_end end kw'>end</span>
572
+ <span class='rubyid_end end kw'>end</span>
573
+ </pre>
572
574
  </td>
573
575
  </tr>
574
576
  </table>
@@ -685,69 +687,70 @@
685
687
  <td>
686
688
  <pre class="code"><span class="info file"># File 'lib/brauser/definitions/browser.rb', line 16</span>
687
689
 
688
- <span class='kw'>class</span> <span class='const'>Browser</span> <span class='op'>&lt;</span> <span class='const'>Base</span>
689
- <span class='id identifier rubyid_attr_reader'>attr_reader</span> <span class='symbol'>:name</span><span class='comma'>,</span> <span class='symbol'>:engine_matcher</span><span class='comma'>,</span> <span class='symbol'>:version_matcher</span>
690
-
691
- <span class='comment'># Creates a new definition.
692
- </span> <span class='comment'>#
693
- </span> <span class='comment'># @param id [Symbol] The platform id.
694
- </span> <span class='comment'># @param name [String] The platform name.
695
- </span> <span class='comment'># @param engine_matcher [Regexp|Proc] The pattern or the block to recognize the engine.
696
- </span> <span class='comment'># @param version_matcher [Regexp|Proc] The pattern or the block to recognize the version.
697
- </span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_id'>id</span><span class='comma'>,</span> <span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_engine_matcher'>engine_matcher</span><span class='comma'>,</span> <span class='id identifier rubyid_version_matcher'>version_matcher</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid__'>_</span><span class='rparen'>)</span>
698
- <span class='ivar'>@id</span> <span class='op'>=</span> <span class='id identifier rubyid_id'>id</span>
699
- <span class='ivar'>@name</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span>
700
- <span class='ivar'>@engine_matcher</span> <span class='op'>=</span> <span class='id identifier rubyid_engine_matcher'>engine_matcher</span>
701
- <span class='ivar'>@version_matcher</span> <span class='op'>=</span> <span class='id identifier rubyid_version_matcher'>version_matcher</span>
702
- <span class='kw'>end</span>
703
-
704
- <span class='comment'># Matches against an header.
705
- </span> <span class='comment'>#
706
- </span> <span class='comment'># @param header [String] The header to match
707
- </span> <span class='comment'># @return [Array|NilClass] An array with the engine and the version if match succeeded, `false` or `nil` otherwise.
708
- </span> <span class='kw'>def</span> <span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='id identifier rubyid_header'>header</span><span class='rparen'>)</span>
709
- <span class='comment'># First of all, match the engine
710
- </span> <span class='id identifier rubyid_engine'>engine</span> <span class='op'>=</span> <span class='id identifier rubyid_perform_match'>perform_match</span><span class='lparen'>(</span><span class='ivar'>@engine_matcher</span><span class='comma'>,</span> <span class='id identifier rubyid_header'>header</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='ivar'>@id</span> <span class='op'>:</span> <span class='kw'>nil</span>
711
-
712
- <span class='kw'>if</span> <span class='id identifier rubyid_engine'>engine</span>
713
- <span class='id identifier rubyid_version'>version</span> <span class='op'>=</span> <span class='id identifier rubyid_extract_version'>extract_version</span><span class='lparen'>(</span><span class='id identifier rubyid_perform_match'>perform_match</span><span class='lparen'>(</span><span class='ivar'>@version_matcher</span><span class='comma'>,</span> <span class='id identifier rubyid_header'>header</span><span class='rparen'>)</span><span class='rparen'>)</span>
714
- <span class='id identifier rubyid_platform'>platform</span> <span class='op'>=</span> <span class='id identifier rubyid_extract_platform'>extract_platform</span><span class='lparen'>(</span><span class='id identifier rubyid_header'>header</span><span class='comma'>,</span> <span class='id identifier rubyid_engine'>engine</span><span class='rparen'>)</span>
715
- <span class='lbracket'>[</span><span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Value</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_engine'>engine</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Value</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_version'>version</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Value</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_platform'>platform</span><span class='rparen'>)</span><span class='rbracket'>]</span>
716
- <span class='kw'>else</span>
717
- <span class='kw'>nil</span>
718
- <span class='kw'>end</span>
719
- <span class='kw'>end</span>
720
-
721
- <span class='id identifier rubyid_private'>private</span>
722
-
723
- <span class='comment'># :nodoc:
724
- </span> <span class='kw'>def</span> <span class='id identifier rubyid_perform_match'>perform_match</span><span class='lparen'>(</span><span class='id identifier rubyid_pattern'>pattern</span><span class='comma'>,</span> <span class='id identifier rubyid_subject'>subject</span><span class='rparen'>)</span>
725
- <span class='id identifier rubyid_method'>method</span> <span class='op'>=</span> <span class='id identifier rubyid_pattern'>pattern</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Regexp</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='symbol'>:match</span> <span class='op'>:</span> <span class='symbol'>:call</span>
726
- <span class='id identifier rubyid_pattern'>pattern</span><span class='period'>.</span><span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='id identifier rubyid_method'>method</span><span class='comma'>,</span> <span class='id identifier rubyid_subject'>subject</span><span class='rparen'>)</span>
727
- <span class='kw'>end</span>
728
-
729
- <span class='comment'># :nodoc:
730
- </span> <span class='comment'># @private
731
- </span> <span class='kw'>def</span> <span class='id identifier rubyid_extract_version'>extract_version</span><span class='lparen'>(</span><span class='id identifier rubyid_version'>version</span><span class='rparen'>)</span>
732
- <span class='comment'># Adjust version
733
- </span> <span class='id identifier rubyid_version'>version</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>0.0</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_version'>version</span><span class='period'>.</span><span class='id identifier rubyid_blank?'>blank?</span>
734
- <span class='id identifier rubyid_version'>version</span> <span class='op'>=</span> <span class='id identifier rubyid_version'>version</span><span class='period'>.</span><span class='id identifier rubyid_to_a'>to_a</span><span class='period'>.</span><span class='id identifier rubyid_last'>last</span> <span class='kw'>if</span> <span class='id identifier rubyid_version'>version</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'>MatchData</span><span class='rparen'>)</span>
735
- <span class='const'>Versionomy</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_version'>version</span><span class='rparen'>)</span>
736
- <span class='kw'>rescue</span>
737
- <span class='id identifier rubyid_version'>version</span>
738
- <span class='kw'>end</span>
739
-
740
- <span class='comment'># :nodoc:
741
- </span> <span class='kw'>def</span> <span class='id identifier rubyid_extract_platform'>extract_platform</span><span class='lparen'>(</span><span class='id identifier rubyid_header'>header</span><span class='comma'>,</span> <span class='id identifier rubyid_engine'>engine</span><span class='rparen'>)</span>
742
- <span class='id identifier rubyid_catch'>catch</span><span class='lparen'>(</span><span class='symbol'>:result</span><span class='rparen'>)</span> <span class='lbrace'>{</span>
743
- <span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Definitions</span><span class='period'>.</span><span class='id identifier rubyid_platforms'>platforms</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_platform'>platform</span><span class='comma'>,</span> <span class='id identifier rubyid_definition'>definition</span><span class='op'>|</span>
744
- <span class='id identifier rubyid_throw'>throw</span><span class='lparen'>(</span><span class='symbol'>:result</span><span class='comma'>,</span> <span class='id identifier rubyid_platform'>platform</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_definition'>definition</span><span class='period'>.</span><span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='id identifier rubyid_header'>header</span><span class='comma'>,</span> <span class='id identifier rubyid_engine'>engine</span><span class='rparen'>)</span>
745
- <span class='kw'>end</span>
746
-
747
- <span class='kw'>nil</span>
748
- <span class='rbrace'>}</span>
749
- <span class='kw'>end</span>
750
- <span class='kw'>end</span></pre>
690
+ <span class='rubyid_class class kw'>class</span> <span class='rubyid_Browser constant id'>Browser</span> <span class='lt op'>&lt;</span> <span class='rubyid_Base constant id'>Base</span>
691
+ <span class='rubyid_attr_reader identifier id'>attr_reader</span> <span class='symbol val'>:name</span><span class='comma token'>,</span> <span class='symbol val'>:engine_matcher</span><span class='comma token'>,</span> <span class='symbol val'>:version_matcher</span>
692
+
693
+ <span class='comment val'># Creates a new definition.</span>
694
+ <span class='comment val'>#</span>
695
+ <span class='comment val'># @param id [Symbol] The platform id.</span>
696
+ <span class='comment val'># @param name [String] The platform name.</span>
697
+ <span class='comment val'># @param engine_matcher [Regexp|Proc] The pattern or the block to recognize the engine.</span>
698
+ <span class='comment val'># @param version_matcher [Regexp|Proc] The pattern or the block to recognize the version.</span>
699
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_initialize identifier id'>initialize</span><span class='lparen token'>(</span><span class='rubyid_id identifier id'>id</span><span class='comma token'>,</span> <span class='rubyid_name identifier id'>name</span><span class='comma token'>,</span> <span class='rubyid_engine_matcher identifier id'>engine_matcher</span><span class='comma token'>,</span> <span class='rubyid_version_matcher identifier id'>version_matcher</span><span class='comma token'>,</span> <span class='pow op'>**</span><span class='rubyid__ identifier id'>_</span><span class='rparen token'>)</span>
700
+ <span class='rubyid_@id ivar id'>@id</span> <span class='assign token'>=</span> <span class='rubyid_id identifier id'>id</span>
701
+ <span class='rubyid_@name ivar id'>@name</span> <span class='assign token'>=</span> <span class='rubyid_name identifier id'>name</span>
702
+ <span class='rubyid_@engine_matcher ivar id'>@engine_matcher</span> <span class='assign token'>=</span> <span class='rubyid_engine_matcher identifier id'>engine_matcher</span>
703
+ <span class='rubyid_@version_matcher ivar id'>@version_matcher</span> <span class='assign token'>=</span> <span class='rubyid_version_matcher identifier id'>version_matcher</span>
704
+ <span class='rubyid_end end kw'>end</span>
705
+
706
+ <span class='comment val'># Matches against an header.</span>
707
+ <span class='comment val'>#</span>
708
+ <span class='comment val'># @param header [String] The header to match</span>
709
+ <span class='comment val'># @return [Array|NilClass] An array with the engine and the version if match succeeded, `false` or `nil` otherwise.</span>
710
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_match identifier id'>match</span><span class='lparen token'>(</span><span class='rubyid_header identifier id'>header</span><span class='rparen token'>)</span>
711
+ <span class='comment val'># First of all, match the engine</span>
712
+ <span class='rubyid_engine identifier id'>engine</span> <span class='assign token'>=</span> <span class='rubyid_perform_match identifier id'>perform_match</span><span class='lparen token'>(</span><span class='rubyid_@engine_matcher ivar id'>@engine_matcher</span><span class='comma token'>,</span> <span class='rubyid_header identifier id'>header</span><span class='rparen token'>)</span> <span class='question op'>?</span> <span class='rubyid_@id ivar id'>@id</span> <span class='colon op'>:</span> <span class='rubyid_nil nil kw'>nil</span>
713
+
714
+ <span class='rubyid_if if kw'>if</span> <span class='rubyid_engine identifier id'>engine</span>
715
+ <span class='rubyid_version identifier id'>version</span> <span class='assign token'>=</span> <span class='rubyid_extract_version identifier id'>extract_version</span><span class='lparen token'>(</span><span class='rubyid_perform_match identifier id'>perform_match</span><span class='lparen token'>(</span><span class='rubyid_@version_matcher ivar id'>@version_matcher</span><span class='comma token'>,</span> <span class='rubyid_header identifier id'>header</span><span class='rparen token'>)</span><span class='rparen token'>)</span>
716
+ <span class='rubyid_platform identifier id'>platform</span> <span class='assign token'>=</span> <span class='rubyid_extract_platform identifier id'>extract_platform</span><span class='lparen token'>(</span><span class='rubyid_header identifier id'>header</span><span class='comma token'>,</span> <span class='rubyid_engine identifier id'>engine</span><span class='rparen token'>)</span>
717
+ <span class='lbrack token'>[</span><span class='rubyid_Brauser constant id'>Brauser</span><span class='colon2 op'>::</span><span class='rubyid_Value constant id'>Value</span><span class='dot token'>.</span><span class='rubyid_new identifier id'>new</span><span class='lparen token'>(</span><span class='rubyid_engine identifier id'>engine</span><span class='rparen token'>)</span><span class='comma token'>,</span> <span class='rubyid_Brauser constant id'>Brauser</span><span class='colon2 op'>::</span><span class='rubyid_Value constant id'>Value</span><span class='dot token'>.</span><span class='rubyid_new identifier id'>new</span><span class='lparen token'>(</span><span class='rubyid_version identifier id'>version</span><span class='rparen token'>)</span><span class='comma token'>,</span> <span class='rubyid_Brauser constant id'>Brauser</span><span class='colon2 op'>::</span><span class='rubyid_Value constant id'>Value</span><span class='dot token'>.</span><span class='rubyid_new identifier id'>new</span><span class='lparen token'>(</span><span class='rubyid_platform identifier id'>platform</span><span class='rparen token'>)</span><span class='rbrack token'>]</span>
718
+ <span class='rubyid_else else kw'>else</span>
719
+ <span class='rubyid_nil nil kw'>nil</span>
720
+ <span class='rubyid_end end kw'>end</span>
721
+ <span class='rubyid_end end kw'>end</span>
722
+
723
+ <span class='rubyid_private identifier id'>private</span>
724
+
725
+ <span class='comment val'># :nodoc:</span>
726
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_perform_match identifier id'>perform_match</span><span class='lparen token'>(</span><span class='rubyid_pattern identifier id'>pattern</span><span class='comma token'>,</span> <span class='rubyid_subject identifier id'>subject</span><span class='rparen token'>)</span>
727
+ <span class='rubyid_method identifier id'>method</span> <span class='assign token'>=</span> <span class='rubyid_pattern identifier id'>pattern</span><span class='dot token'>.</span><span class='rubyid_is_a? fid id'>is_a?</span><span class='lparen token'>(</span><span class='rubyid_Regexp constant id'>Regexp</span><span class='rparen token'>)</span> <span class='question op'>?</span> <span class='symbol val'>:match</span> <span class='colon op'>:</span> <span class='symbol val'>:call</span>
728
+ <span class='rubyid_pattern identifier id'>pattern</span><span class='dot token'>.</span><span class='rubyid_send identifier id'>send</span><span class='lparen token'>(</span><span class='rubyid_method identifier id'>method</span><span class='comma token'>,</span> <span class='rubyid_subject identifier id'>subject</span><span class='rparen token'>)</span>
729
+ <span class='rubyid_end end kw'>end</span>
730
+
731
+ <span class='comment val'># :nodoc:</span>
732
+ <span class='comment val'># @private</span>
733
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_extract_version identifier id'>extract_version</span><span class='lparen token'>(</span><span class='rubyid_version identifier id'>version</span><span class='rparen token'>)</span>
734
+ <span class='comment val'># Adjust version</span>
735
+ <span class='rubyid_version identifier id'>version</span> <span class='assign token'>=</span> <span class='string val'>&quot;0.0&quot;</span> <span class='rubyid_if if_mod kw'>if</span> <span class='rubyid_version identifier id'>version</span><span class='dot token'>.</span><span class='rubyid_blank? fid id'>blank?</span>
736
+ <span class='rubyid_version identifier id'>version</span> <span class='assign token'>=</span> <span class='rubyid_version identifier id'>version</span><span class='dot token'>.</span><span class='rubyid_to_a identifier id'>to_a</span><span class='dot token'>.</span><span class='rubyid_last identifier id'>last</span> <span class='rubyid_if if_mod kw'>if</span> <span class='rubyid_version identifier id'>version</span><span class='dot token'>.</span><span class='rubyid_is_a? fid id'>is_a?</span><span class='lparen token'>(</span><span class='colon3 op'>::</span><span class='rubyid_MatchData constant id'>MatchData</span><span class='rparen token'>)</span>
737
+ <span class='rubyid_Versionomy constant id'>Versionomy</span><span class='dot token'>.</span><span class='rubyid_parse identifier id'>parse</span><span class='lparen token'>(</span><span class='rubyid_version identifier id'>version</span><span class='rparen token'>)</span>
738
+ <span class='rubyid_rescue rescue kw'>rescue</span>
739
+ <span class='rubyid_version identifier id'>version</span>
740
+ <span class='rubyid_end end kw'>end</span>
741
+
742
+ <span class='comment val'># :nodoc:</span>
743
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_extract_platform identifier id'>extract_platform</span><span class='lparen token'>(</span><span class='rubyid_header identifier id'>header</span><span class='comma token'>,</span> <span class='rubyid_engine identifier id'>engine</span><span class='rparen token'>)</span>
744
+ <span class='rubyid_catch identifier id'>catch</span><span class='lparen token'>(</span><span class='symbol val'>:result</span><span class='rparen token'>)</span> <span class='lbrace token'>{</span>
745
+ <span class='rubyid_Brauser constant id'>Brauser</span><span class='colon2 op'>::</span><span class='rubyid_Definitions constant id'>Definitions</span><span class='dot token'>.</span><span class='rubyid_platforms identifier id'>platforms</span><span class='dot token'>.</span><span class='rubyid_each identifier id'>each</span> <span class='rubyid_do do kw'>do</span> <span class='bitor op'>|</span><span class='rubyid_platform identifier id'>platform</span><span class='comma token'>,</span> <span class='rubyid_definition identifier id'>definition</span><span class='bitor op'>|</span>
746
+ <span class='rubyid_throw identifier id'>throw</span><span class='lparen token'>(</span><span class='symbol val'>:result</span><span class='comma token'>,</span> <span class='rubyid_platform identifier id'>platform</span><span class='rparen token'>)</span> <span class='rubyid_if if_mod kw'>if</span> <span class='rubyid_definition identifier id'>definition</span><span class='dot token'>.</span><span class='rubyid_match identifier id'>match</span><span class='lparen token'>(</span><span class='rubyid_header identifier id'>header</span><span class='comma token'>,</span> <span class='rubyid_engine identifier id'>engine</span><span class='rparen token'>)</span>
747
+ <span class='rubyid_end end kw'>end</span>
748
+
749
+ <span class='rubyid_nil nil kw'>nil</span>
750
+ <span class='rbrace token'>}</span>
751
+ <span class='rubyid_end end kw'>end</span>
752
+ <span class='rubyid_end end kw'>end</span>
753
+ </pre>
751
754
  </td>
752
755
  </tr>
753
756
  </table>
@@ -864,69 +867,70 @@
864
867
  <td>
865
868
  <pre class="code"><span class="info file"># File 'lib/brauser/definitions/browser.rb', line 16</span>
866
869
 
867
- <span class='kw'>class</span> <span class='const'>Browser</span> <span class='op'>&lt;</span> <span class='const'>Base</span>
868
- <span class='id identifier rubyid_attr_reader'>attr_reader</span> <span class='symbol'>:name</span><span class='comma'>,</span> <span class='symbol'>:engine_matcher</span><span class='comma'>,</span> <span class='symbol'>:version_matcher</span>
869
-
870
- <span class='comment'># Creates a new definition.
871
- </span> <span class='comment'>#
872
- </span> <span class='comment'># @param id [Symbol] The platform id.
873
- </span> <span class='comment'># @param name [String] The platform name.
874
- </span> <span class='comment'># @param engine_matcher [Regexp|Proc] The pattern or the block to recognize the engine.
875
- </span> <span class='comment'># @param version_matcher [Regexp|Proc] The pattern or the block to recognize the version.
876
- </span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_id'>id</span><span class='comma'>,</span> <span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_engine_matcher'>engine_matcher</span><span class='comma'>,</span> <span class='id identifier rubyid_version_matcher'>version_matcher</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid__'>_</span><span class='rparen'>)</span>
877
- <span class='ivar'>@id</span> <span class='op'>=</span> <span class='id identifier rubyid_id'>id</span>
878
- <span class='ivar'>@name</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span>
879
- <span class='ivar'>@engine_matcher</span> <span class='op'>=</span> <span class='id identifier rubyid_engine_matcher'>engine_matcher</span>
880
- <span class='ivar'>@version_matcher</span> <span class='op'>=</span> <span class='id identifier rubyid_version_matcher'>version_matcher</span>
881
- <span class='kw'>end</span>
882
-
883
- <span class='comment'># Matches against an header.
884
- </span> <span class='comment'>#
885
- </span> <span class='comment'># @param header [String] The header to match
886
- </span> <span class='comment'># @return [Array|NilClass] An array with the engine and the version if match succeeded, `false` or `nil` otherwise.
887
- </span> <span class='kw'>def</span> <span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='id identifier rubyid_header'>header</span><span class='rparen'>)</span>
888
- <span class='comment'># First of all, match the engine
889
- </span> <span class='id identifier rubyid_engine'>engine</span> <span class='op'>=</span> <span class='id identifier rubyid_perform_match'>perform_match</span><span class='lparen'>(</span><span class='ivar'>@engine_matcher</span><span class='comma'>,</span> <span class='id identifier rubyid_header'>header</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='ivar'>@id</span> <span class='op'>:</span> <span class='kw'>nil</span>
890
-
891
- <span class='kw'>if</span> <span class='id identifier rubyid_engine'>engine</span>
892
- <span class='id identifier rubyid_version'>version</span> <span class='op'>=</span> <span class='id identifier rubyid_extract_version'>extract_version</span><span class='lparen'>(</span><span class='id identifier rubyid_perform_match'>perform_match</span><span class='lparen'>(</span><span class='ivar'>@version_matcher</span><span class='comma'>,</span> <span class='id identifier rubyid_header'>header</span><span class='rparen'>)</span><span class='rparen'>)</span>
893
- <span class='id identifier rubyid_platform'>platform</span> <span class='op'>=</span> <span class='id identifier rubyid_extract_platform'>extract_platform</span><span class='lparen'>(</span><span class='id identifier rubyid_header'>header</span><span class='comma'>,</span> <span class='id identifier rubyid_engine'>engine</span><span class='rparen'>)</span>
894
- <span class='lbracket'>[</span><span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Value</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_engine'>engine</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Value</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_version'>version</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Value</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_platform'>platform</span><span class='rparen'>)</span><span class='rbracket'>]</span>
895
- <span class='kw'>else</span>
896
- <span class='kw'>nil</span>
897
- <span class='kw'>end</span>
898
- <span class='kw'>end</span>
899
-
900
- <span class='id identifier rubyid_private'>private</span>
901
-
902
- <span class='comment'># :nodoc:
903
- </span> <span class='kw'>def</span> <span class='id identifier rubyid_perform_match'>perform_match</span><span class='lparen'>(</span><span class='id identifier rubyid_pattern'>pattern</span><span class='comma'>,</span> <span class='id identifier rubyid_subject'>subject</span><span class='rparen'>)</span>
904
- <span class='id identifier rubyid_method'>method</span> <span class='op'>=</span> <span class='id identifier rubyid_pattern'>pattern</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Regexp</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='symbol'>:match</span> <span class='op'>:</span> <span class='symbol'>:call</span>
905
- <span class='id identifier rubyid_pattern'>pattern</span><span class='period'>.</span><span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='id identifier rubyid_method'>method</span><span class='comma'>,</span> <span class='id identifier rubyid_subject'>subject</span><span class='rparen'>)</span>
906
- <span class='kw'>end</span>
907
-
908
- <span class='comment'># :nodoc:
909
- </span> <span class='comment'># @private
910
- </span> <span class='kw'>def</span> <span class='id identifier rubyid_extract_version'>extract_version</span><span class='lparen'>(</span><span class='id identifier rubyid_version'>version</span><span class='rparen'>)</span>
911
- <span class='comment'># Adjust version
912
- </span> <span class='id identifier rubyid_version'>version</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>0.0</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_version'>version</span><span class='period'>.</span><span class='id identifier rubyid_blank?'>blank?</span>
913
- <span class='id identifier rubyid_version'>version</span> <span class='op'>=</span> <span class='id identifier rubyid_version'>version</span><span class='period'>.</span><span class='id identifier rubyid_to_a'>to_a</span><span class='period'>.</span><span class='id identifier rubyid_last'>last</span> <span class='kw'>if</span> <span class='id identifier rubyid_version'>version</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'>MatchData</span><span class='rparen'>)</span>
914
- <span class='const'>Versionomy</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_version'>version</span><span class='rparen'>)</span>
915
- <span class='kw'>rescue</span>
916
- <span class='id identifier rubyid_version'>version</span>
917
- <span class='kw'>end</span>
918
-
919
- <span class='comment'># :nodoc:
920
- </span> <span class='kw'>def</span> <span class='id identifier rubyid_extract_platform'>extract_platform</span><span class='lparen'>(</span><span class='id identifier rubyid_header'>header</span><span class='comma'>,</span> <span class='id identifier rubyid_engine'>engine</span><span class='rparen'>)</span>
921
- <span class='id identifier rubyid_catch'>catch</span><span class='lparen'>(</span><span class='symbol'>:result</span><span class='rparen'>)</span> <span class='lbrace'>{</span>
922
- <span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Definitions</span><span class='period'>.</span><span class='id identifier rubyid_platforms'>platforms</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_platform'>platform</span><span class='comma'>,</span> <span class='id identifier rubyid_definition'>definition</span><span class='op'>|</span>
923
- <span class='id identifier rubyid_throw'>throw</span><span class='lparen'>(</span><span class='symbol'>:result</span><span class='comma'>,</span> <span class='id identifier rubyid_platform'>platform</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_definition'>definition</span><span class='period'>.</span><span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='id identifier rubyid_header'>header</span><span class='comma'>,</span> <span class='id identifier rubyid_engine'>engine</span><span class='rparen'>)</span>
924
- <span class='kw'>end</span>
925
-
926
- <span class='kw'>nil</span>
927
- <span class='rbrace'>}</span>
928
- <span class='kw'>end</span>
929
- <span class='kw'>end</span></pre>
870
+ <span class='rubyid_class class kw'>class</span> <span class='rubyid_Browser constant id'>Browser</span> <span class='lt op'>&lt;</span> <span class='rubyid_Base constant id'>Base</span>
871
+ <span class='rubyid_attr_reader identifier id'>attr_reader</span> <span class='symbol val'>:name</span><span class='comma token'>,</span> <span class='symbol val'>:engine_matcher</span><span class='comma token'>,</span> <span class='symbol val'>:version_matcher</span>
872
+
873
+ <span class='comment val'># Creates a new definition.</span>
874
+ <span class='comment val'>#</span>
875
+ <span class='comment val'># @param id [Symbol] The platform id.</span>
876
+ <span class='comment val'># @param name [String] The platform name.</span>
877
+ <span class='comment val'># @param engine_matcher [Regexp|Proc] The pattern or the block to recognize the engine.</span>
878
+ <span class='comment val'># @param version_matcher [Regexp|Proc] The pattern or the block to recognize the version.</span>
879
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_initialize identifier id'>initialize</span><span class='lparen token'>(</span><span class='rubyid_id identifier id'>id</span><span class='comma token'>,</span> <span class='rubyid_name identifier id'>name</span><span class='comma token'>,</span> <span class='rubyid_engine_matcher identifier id'>engine_matcher</span><span class='comma token'>,</span> <span class='rubyid_version_matcher identifier id'>version_matcher</span><span class='comma token'>,</span> <span class='pow op'>**</span><span class='rubyid__ identifier id'>_</span><span class='rparen token'>)</span>
880
+ <span class='rubyid_@id ivar id'>@id</span> <span class='assign token'>=</span> <span class='rubyid_id identifier id'>id</span>
881
+ <span class='rubyid_@name ivar id'>@name</span> <span class='assign token'>=</span> <span class='rubyid_name identifier id'>name</span>
882
+ <span class='rubyid_@engine_matcher ivar id'>@engine_matcher</span> <span class='assign token'>=</span> <span class='rubyid_engine_matcher identifier id'>engine_matcher</span>
883
+ <span class='rubyid_@version_matcher ivar id'>@version_matcher</span> <span class='assign token'>=</span> <span class='rubyid_version_matcher identifier id'>version_matcher</span>
884
+ <span class='rubyid_end end kw'>end</span>
885
+
886
+ <span class='comment val'># Matches against an header.</span>
887
+ <span class='comment val'>#</span>
888
+ <span class='comment val'># @param header [String] The header to match</span>
889
+ <span class='comment val'># @return [Array|NilClass] An array with the engine and the version if match succeeded, `false` or `nil` otherwise.</span>
890
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_match identifier id'>match</span><span class='lparen token'>(</span><span class='rubyid_header identifier id'>header</span><span class='rparen token'>)</span>
891
+ <span class='comment val'># First of all, match the engine</span>
892
+ <span class='rubyid_engine identifier id'>engine</span> <span class='assign token'>=</span> <span class='rubyid_perform_match identifier id'>perform_match</span><span class='lparen token'>(</span><span class='rubyid_@engine_matcher ivar id'>@engine_matcher</span><span class='comma token'>,</span> <span class='rubyid_header identifier id'>header</span><span class='rparen token'>)</span> <span class='question op'>?</span> <span class='rubyid_@id ivar id'>@id</span> <span class='colon op'>:</span> <span class='rubyid_nil nil kw'>nil</span>
893
+
894
+ <span class='rubyid_if if kw'>if</span> <span class='rubyid_engine identifier id'>engine</span>
895
+ <span class='rubyid_version identifier id'>version</span> <span class='assign token'>=</span> <span class='rubyid_extract_version identifier id'>extract_version</span><span class='lparen token'>(</span><span class='rubyid_perform_match identifier id'>perform_match</span><span class='lparen token'>(</span><span class='rubyid_@version_matcher ivar id'>@version_matcher</span><span class='comma token'>,</span> <span class='rubyid_header identifier id'>header</span><span class='rparen token'>)</span><span class='rparen token'>)</span>
896
+ <span class='rubyid_platform identifier id'>platform</span> <span class='assign token'>=</span> <span class='rubyid_extract_platform identifier id'>extract_platform</span><span class='lparen token'>(</span><span class='rubyid_header identifier id'>header</span><span class='comma token'>,</span> <span class='rubyid_engine identifier id'>engine</span><span class='rparen token'>)</span>
897
+ <span class='lbrack token'>[</span><span class='rubyid_Brauser constant id'>Brauser</span><span class='colon2 op'>::</span><span class='rubyid_Value constant id'>Value</span><span class='dot token'>.</span><span class='rubyid_new identifier id'>new</span><span class='lparen token'>(</span><span class='rubyid_engine identifier id'>engine</span><span class='rparen token'>)</span><span class='comma token'>,</span> <span class='rubyid_Brauser constant id'>Brauser</span><span class='colon2 op'>::</span><span class='rubyid_Value constant id'>Value</span><span class='dot token'>.</span><span class='rubyid_new identifier id'>new</span><span class='lparen token'>(</span><span class='rubyid_version identifier id'>version</span><span class='rparen token'>)</span><span class='comma token'>,</span> <span class='rubyid_Brauser constant id'>Brauser</span><span class='colon2 op'>::</span><span class='rubyid_Value constant id'>Value</span><span class='dot token'>.</span><span class='rubyid_new identifier id'>new</span><span class='lparen token'>(</span><span class='rubyid_platform identifier id'>platform</span><span class='rparen token'>)</span><span class='rbrack token'>]</span>
898
+ <span class='rubyid_else else kw'>else</span>
899
+ <span class='rubyid_nil nil kw'>nil</span>
900
+ <span class='rubyid_end end kw'>end</span>
901
+ <span class='rubyid_end end kw'>end</span>
902
+
903
+ <span class='rubyid_private identifier id'>private</span>
904
+
905
+ <span class='comment val'># :nodoc:</span>
906
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_perform_match identifier id'>perform_match</span><span class='lparen token'>(</span><span class='rubyid_pattern identifier id'>pattern</span><span class='comma token'>,</span> <span class='rubyid_subject identifier id'>subject</span><span class='rparen token'>)</span>
907
+ <span class='rubyid_method identifier id'>method</span> <span class='assign token'>=</span> <span class='rubyid_pattern identifier id'>pattern</span><span class='dot token'>.</span><span class='rubyid_is_a? fid id'>is_a?</span><span class='lparen token'>(</span><span class='rubyid_Regexp constant id'>Regexp</span><span class='rparen token'>)</span> <span class='question op'>?</span> <span class='symbol val'>:match</span> <span class='colon op'>:</span> <span class='symbol val'>:call</span>
908
+ <span class='rubyid_pattern identifier id'>pattern</span><span class='dot token'>.</span><span class='rubyid_send identifier id'>send</span><span class='lparen token'>(</span><span class='rubyid_method identifier id'>method</span><span class='comma token'>,</span> <span class='rubyid_subject identifier id'>subject</span><span class='rparen token'>)</span>
909
+ <span class='rubyid_end end kw'>end</span>
910
+
911
+ <span class='comment val'># :nodoc:</span>
912
+ <span class='comment val'># @private</span>
913
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_extract_version identifier id'>extract_version</span><span class='lparen token'>(</span><span class='rubyid_version identifier id'>version</span><span class='rparen token'>)</span>
914
+ <span class='comment val'># Adjust version</span>
915
+ <span class='rubyid_version identifier id'>version</span> <span class='assign token'>=</span> <span class='string val'>&quot;0.0&quot;</span> <span class='rubyid_if if_mod kw'>if</span> <span class='rubyid_version identifier id'>version</span><span class='dot token'>.</span><span class='rubyid_blank? fid id'>blank?</span>
916
+ <span class='rubyid_version identifier id'>version</span> <span class='assign token'>=</span> <span class='rubyid_version identifier id'>version</span><span class='dot token'>.</span><span class='rubyid_to_a identifier id'>to_a</span><span class='dot token'>.</span><span class='rubyid_last identifier id'>last</span> <span class='rubyid_if if_mod kw'>if</span> <span class='rubyid_version identifier id'>version</span><span class='dot token'>.</span><span class='rubyid_is_a? fid id'>is_a?</span><span class='lparen token'>(</span><span class='colon3 op'>::</span><span class='rubyid_MatchData constant id'>MatchData</span><span class='rparen token'>)</span>
917
+ <span class='rubyid_Versionomy constant id'>Versionomy</span><span class='dot token'>.</span><span class='rubyid_parse identifier id'>parse</span><span class='lparen token'>(</span><span class='rubyid_version identifier id'>version</span><span class='rparen token'>)</span>
918
+ <span class='rubyid_rescue rescue kw'>rescue</span>
919
+ <span class='rubyid_version identifier id'>version</span>
920
+ <span class='rubyid_end end kw'>end</span>
921
+
922
+ <span class='comment val'># :nodoc:</span>
923
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_extract_platform identifier id'>extract_platform</span><span class='lparen token'>(</span><span class='rubyid_header identifier id'>header</span><span class='comma token'>,</span> <span class='rubyid_engine identifier id'>engine</span><span class='rparen token'>)</span>
924
+ <span class='rubyid_catch identifier id'>catch</span><span class='lparen token'>(</span><span class='symbol val'>:result</span><span class='rparen token'>)</span> <span class='lbrace token'>{</span>
925
+ <span class='rubyid_Brauser constant id'>Brauser</span><span class='colon2 op'>::</span><span class='rubyid_Definitions constant id'>Definitions</span><span class='dot token'>.</span><span class='rubyid_platforms identifier id'>platforms</span><span class='dot token'>.</span><span class='rubyid_each identifier id'>each</span> <span class='rubyid_do do kw'>do</span> <span class='bitor op'>|</span><span class='rubyid_platform identifier id'>platform</span><span class='comma token'>,</span> <span class='rubyid_definition identifier id'>definition</span><span class='bitor op'>|</span>
926
+ <span class='rubyid_throw identifier id'>throw</span><span class='lparen token'>(</span><span class='symbol val'>:result</span><span class='comma token'>,</span> <span class='rubyid_platform identifier id'>platform</span><span class='rparen token'>)</span> <span class='rubyid_if if_mod kw'>if</span> <span class='rubyid_definition identifier id'>definition</span><span class='dot token'>.</span><span class='rubyid_match identifier id'>match</span><span class='lparen token'>(</span><span class='rubyid_header identifier id'>header</span><span class='comma token'>,</span> <span class='rubyid_engine identifier id'>engine</span><span class='rparen token'>)</span>
927
+ <span class='rubyid_end end kw'>end</span>
928
+
929
+ <span class='rubyid_nil nil kw'>nil</span>
930
+ <span class='rbrace token'>}</span>
931
+ <span class='rubyid_end end kw'>end</span>
932
+ <span class='rubyid_end end kw'>end</span>
933
+ </pre>
930
934
  </td>
931
935
  </tr>
932
936
  </table>
@@ -1016,18 +1020,19 @@
1016
1020
  <td>
1017
1021
  <pre class="code"><span class="info file"># File 'lib/brauser/definitions/browser.rb', line 36</span>
1018
1022
 
1019
- <span class='kw'>def</span> <span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='id identifier rubyid_header'>header</span><span class='rparen'>)</span>
1020
- <span class='comment'># First of all, match the engine
1021
- </span> <span class='id identifier rubyid_engine'>engine</span> <span class='op'>=</span> <span class='id identifier rubyid_perform_match'>perform_match</span><span class='lparen'>(</span><span class='ivar'>@engine_matcher</span><span class='comma'>,</span> <span class='id identifier rubyid_header'>header</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='ivar'>@id</span> <span class='op'>:</span> <span class='kw'>nil</span>
1022
-
1023
- <span class='kw'>if</span> <span class='id identifier rubyid_engine'>engine</span>
1024
- <span class='id identifier rubyid_version'>version</span> <span class='op'>=</span> <span class='id identifier rubyid_extract_version'>extract_version</span><span class='lparen'>(</span><span class='id identifier rubyid_perform_match'>perform_match</span><span class='lparen'>(</span><span class='ivar'>@version_matcher</span><span class='comma'>,</span> <span class='id identifier rubyid_header'>header</span><span class='rparen'>)</span><span class='rparen'>)</span>
1025
- <span class='id identifier rubyid_platform'>platform</span> <span class='op'>=</span> <span class='id identifier rubyid_extract_platform'>extract_platform</span><span class='lparen'>(</span><span class='id identifier rubyid_header'>header</span><span class='comma'>,</span> <span class='id identifier rubyid_engine'>engine</span><span class='rparen'>)</span>
1026
- <span class='lbracket'>[</span><span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Value</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_engine'>engine</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Value</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_version'>version</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='const'>Brauser</span><span class='op'>::</span><span class='const'>Value</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_platform'>platform</span><span class='rparen'>)</span><span class='rbracket'>]</span>
1027
- <span class='kw'>else</span>
1028
- <span class='kw'>nil</span>
1029
- <span class='kw'>end</span>
1030
- <span class='kw'>end</span></pre>
1023
+ <span class='rubyid_def def kw'>def</span> <span class='rubyid_match identifier id'>match</span><span class='lparen token'>(</span><span class='rubyid_header identifier id'>header</span><span class='rparen token'>)</span>
1024
+ <span class='comment val'># First of all, match the engine</span>
1025
+ <span class='rubyid_engine identifier id'>engine</span> <span class='assign token'>=</span> <span class='rubyid_perform_match identifier id'>perform_match</span><span class='lparen token'>(</span><span class='rubyid_@engine_matcher ivar id'>@engine_matcher</span><span class='comma token'>,</span> <span class='rubyid_header identifier id'>header</span><span class='rparen token'>)</span> <span class='question op'>?</span> <span class='rubyid_@id ivar id'>@id</span> <span class='colon op'>:</span> <span class='rubyid_nil nil kw'>nil</span>
1026
+
1027
+ <span class='rubyid_if if kw'>if</span> <span class='rubyid_engine identifier id'>engine</span>
1028
+ <span class='rubyid_version identifier id'>version</span> <span class='assign token'>=</span> <span class='rubyid_extract_version identifier id'>extract_version</span><span class='lparen token'>(</span><span class='rubyid_perform_match identifier id'>perform_match</span><span class='lparen token'>(</span><span class='rubyid_@version_matcher ivar id'>@version_matcher</span><span class='comma token'>,</span> <span class='rubyid_header identifier id'>header</span><span class='rparen token'>)</span><span class='rparen token'>)</span>
1029
+ <span class='rubyid_platform identifier id'>platform</span> <span class='assign token'>=</span> <span class='rubyid_extract_platform identifier id'>extract_platform</span><span class='lparen token'>(</span><span class='rubyid_header identifier id'>header</span><span class='comma token'>,</span> <span class='rubyid_engine identifier id'>engine</span><span class='rparen token'>)</span>
1030
+ <span class='lbrack token'>[</span><span class='rubyid_Brauser constant id'>Brauser</span><span class='colon2 op'>::</span><span class='rubyid_Value constant id'>Value</span><span class='dot token'>.</span><span class='rubyid_new identifier id'>new</span><span class='lparen token'>(</span><span class='rubyid_engine identifier id'>engine</span><span class='rparen token'>)</span><span class='comma token'>,</span> <span class='rubyid_Brauser constant id'>Brauser</span><span class='colon2 op'>::</span><span class='rubyid_Value constant id'>Value</span><span class='dot token'>.</span><span class='rubyid_new identifier id'>new</span><span class='lparen token'>(</span><span class='rubyid_version identifier id'>version</span><span class='rparen token'>)</span><span class='comma token'>,</span> <span class='rubyid_Brauser constant id'>Brauser</span><span class='colon2 op'>::</span><span class='rubyid_Value constant id'>Value</span><span class='dot token'>.</span><span class='rubyid_new identifier id'>new</span><span class='lparen token'>(</span><span class='rubyid_platform identifier id'>platform</span><span class='rparen token'>)</span><span class='rbrack token'>]</span>
1031
+ <span class='rubyid_else else kw'>else</span>
1032
+ <span class='rubyid_nil nil kw'>nil</span>
1033
+ <span class='rubyid_end end kw'>end</span>
1034
+ <span class='rubyid_end end kw'>end</span>
1035
+ </pre>
1031
1036
  </td>
1032
1037
  </tr>
1033
1038
  </table>
@@ -1038,9 +1043,9 @@
1038
1043
  </div>
1039
1044
 
1040
1045
  <div id="footer">
1041
- Generated on Mon Sep 29 16:43:32 2014 by
1046
+ Generated on Mon Mar 2 13:10:31 2015 by
1042
1047
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1043
- 0.8.7.4 (ruby-2.1.3).
1048
+ 0.8.7.6 (ruby-2.2.0).
1044
1049
  </div>
1045
1050
 
1046
1051
  </body>