brauser 4.0.0 → 4.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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>