workbook 0.3.1 → 0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. data/.yardoc/checksums +21 -18
  2. data/.yardoc/object_types +0 -0
  3. data/.yardoc/objects/root.dat +0 -0
  4. data/Gemfile.lock +4 -4
  5. data/README.md +8 -5
  6. data/doc/RubyXL/Cell.html +18 -19
  7. data/doc/RubyXL/Workbook.html +116 -114
  8. data/doc/RubyXL.html +3 -3
  9. data/doc/Workbook/Book.html +513 -145
  10. data/doc/Workbook/Cell.html +181 -170
  11. data/doc/Workbook/Format.html +591 -77
  12. data/doc/Workbook/Modules/RawObjectsStorage.html +39 -45
  13. data/doc/Workbook/Modules/TableDiffSort.html +225 -87
  14. data/doc/Workbook/Modules/TypeParser.html +182 -131
  15. data/doc/Workbook/Modules.html +3 -3
  16. data/doc/Workbook/Readers/CsvReader.html +101 -39
  17. data/doc/Workbook/Readers/OdsReader.html +564 -0
  18. data/doc/Workbook/Readers/TxtReader.html +12 -14
  19. data/doc/Workbook/Readers/XlsReader.html +154 -138
  20. data/doc/Workbook/Readers/XlsShared.html +71 -72
  21. data/doc/Workbook/Readers/XlsxReader.html +89 -82
  22. data/doc/Workbook/Readers.html +6 -6
  23. data/doc/Workbook/Row.html +421 -206
  24. data/doc/Workbook/Sheet.html +379 -32
  25. data/doc/Workbook/Table.html +328 -90
  26. data/doc/Workbook/Template.html +55 -60
  27. data/doc/Workbook/Writers/CsvTableWriter.html +33 -8
  28. data/doc/Workbook/Writers/HtmlWriter.html +393 -0
  29. data/doc/Workbook/Writers/XlsWriter.html +132 -92
  30. data/doc/Workbook/Writers.html +5 -5
  31. data/doc/Workbook.html +16 -4
  32. data/doc/_index.html +45 -15
  33. data/doc/class_list.html +1 -1
  34. data/doc/css/style.css +10 -0
  35. data/doc/file.README.html +53 -48
  36. data/doc/frames.html +1 -1
  37. data/doc/index.html +53 -48
  38. data/doc/method_list.html +232 -56
  39. data/doc/top-level-namespace.html +3 -3
  40. data/lib/workbook/book.rb +27 -1
  41. data/lib/workbook/format.rb +46 -7
  42. data/lib/workbook/modules/type_parser.rb +8 -1
  43. data/lib/workbook/readers/ods_reader.rb +93 -0
  44. data/lib/workbook/row.rb +7 -0
  45. data/lib/workbook/sheet.rb +10 -0
  46. data/lib/workbook/version.rb +1 -1
  47. data/lib/workbook/writers/html_writer.rb +56 -0
  48. data/test/artifacts/book_with_tabs_and_colours.ods +0 -0
  49. data/test/artifacts/complex_types.ods +0 -0
  50. data/test/artifacts/excel_different_types.ods +0 -0
  51. data/test/artifacts/simple_sheet.ods +0 -0
  52. data/test/test_book.rb +6 -0
  53. data/test/test_format.rb +39 -0
  54. data/test/test_modules_type_parser.rb +2 -0
  55. data/test/test_readers_csv_reader.rb +44 -0
  56. data/test/test_readers_ods_reader.rb +51 -0
  57. data/test/test_readers_txt_reader.rb +53 -0
  58. data/test/test_row.rb +12 -0
  59. data/test/test_sheet.rb +12 -0
  60. data/test/test_writers_html_writer.rb +37 -0
  61. data/workbook.gemspec +2 -2
  62. metadata +21 -4
@@ -6,7 +6,7 @@
6
6
  <title>
7
7
  Module: Workbook::Modules::TypeParser
8
8
 
9
- &mdash; Documentation by YARD 0.8.3
9
+ &mdash; Documentation by YARD 0.8.5.2
10
10
 
11
11
  </title>
12
12
 
@@ -199,7 +199,10 @@
199
199
 
200
200
 
201
201
 
202
- <span class="summary_desc"><div class='inline'></div></span>
202
+ <span class="summary_desc"><div class='inline'>
203
+ <p>converts 'true' or 'false' strings in `true` or `false` values return
204
+ [Proc] that returns a boolean value if it is considered as such.</p>
205
+ </div></span>
203
206
 
204
207
  </li>
205
208
 
@@ -413,13 +416,16 @@ lines.</p>
413
416
  <pre class="lines">
414
417
 
415
418
 
416
- 49</pre>
419
+ 50
420
+ 51
421
+ 52</pre>
417
422
  </td>
418
423
  <td>
419
- <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 49</span>
424
+ <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 50</span>
420
425
 
421
- <span class='rubyid_def def kw'>def</span> <span class='rubyid_clean! fid id'>clean!</span> <span class='rubyid_options identifier id'>options</span><span class='assign token'>=</span><span class='lbrace token'>{</span><span class='rbrace token'>}</span>
422
- </pre>
426
+ <span class='kw'>def</span> <span class='id identifier rubyid_clean!'>clean!</span> <span class='id identifier rubyid_options'>options</span><span class='op'>=</span><span class='lbrace'>{</span><span class='rbrace'>}</span>
427
+ <span class='id identifier rubyid_parse!'>parse!</span> <span class='id identifier rubyid_options'>options</span>
428
+ <span class='kw'>end</span></pre>
423
429
  </td>
424
430
  </tr>
425
431
  </table>
@@ -469,13 +475,32 @@ lines.</p>
469
475
  <pre class="lines">
470
476
 
471
477
 
472
- 33</pre>
478
+ 34
479
+ 35
480
+ 36
481
+ 37
482
+ 38
483
+ 39
484
+ 40
485
+ 41
486
+ 42
487
+ 43
488
+ 44</pre>
473
489
  </td>
474
490
  <td>
475
- <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 33</span>
476
-
477
- <span class='rubyid_def def kw'>def</span> <span class='rubyid_parse identifier id'>parse</span> <span class='rubyid_options identifier id'>options</span><span class='assign token'>=</span><span class='lbrace token'>{</span><span class='rbrace token'>}</span>
478
- </pre>
491
+ <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 34</span>
492
+
493
+ <span class='kw'>def</span> <span class='id identifier rubyid_parse'>parse</span> <span class='id identifier rubyid_options'>options</span><span class='op'>=</span><span class='lbrace'>{</span><span class='rbrace'>}</span>
494
+ <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='symbol'>:detect_date</span><span class='op'>=&gt;</span><span class='kw'>false</span><span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
495
+ <span class='id identifier rubyid_string_parsers'>string_parsers</span><span class='period'>.</span><span class='id identifier rubyid_push'>push</span> <span class='symbol'>:string_optimistic_date_converter</span> <span class='kw'>if</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:detect_date</span><span class='rbracket'>]</span>
496
+ <span class='id identifier rubyid_v'>v</span> <span class='op'>=</span> <span class='id identifier rubyid_value'>value</span>
497
+ <span class='id identifier rubyid_string_parsers_as_procs'>string_parsers_as_procs</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_p'>p</span><span class='op'>|</span>
498
+ <span class='kw'>if</span> <span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span> <span class='const'>String</span>
499
+ <span class='id identifier rubyid_v'>v</span> <span class='op'>=</span> <span class='id identifier rubyid_p'>p</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='id identifier rubyid_v'>v</span><span class='rparen'>)</span>
500
+ <span class='kw'>end</span>
501
+ <span class='kw'>end</span>
502
+ <span class='id identifier rubyid_v'>v</span>
503
+ <span class='kw'>end</span></pre>
479
504
  </td>
480
505
  </tr>
481
506
  </table>
@@ -496,13 +521,16 @@ lines.</p>
496
521
  <pre class="lines">
497
522
 
498
523
 
499
- 45</pre>
524
+ 46
525
+ 47
526
+ 48</pre>
500
527
  </td>
501
528
  <td>
502
- <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 45</span>
529
+ <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 46</span>
503
530
 
504
- <span class='rubyid_def def kw'>def</span> <span class='rubyid_parse! fid id'>parse!</span> <span class='rubyid_options identifier id'>options</span><span class='assign token'>=</span><span class='lbrace token'>{</span><span class='rbrace token'>}</span>
505
- </pre>
531
+ <span class='kw'>def</span> <span class='id identifier rubyid_parse!'>parse!</span> <span class='id identifier rubyid_options'>options</span><span class='op'>=</span><span class='lbrace'>{</span><span class='rbrace'>}</span>
532
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_value'>value</span> <span class='op'>=</span> <span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
533
+ <span class='kw'>end</span></pre>
506
534
  </td>
507
535
  </tr>
508
536
  </table>
@@ -517,39 +545,50 @@ lines.</p>
517
545
 
518
546
 
519
547
 
520
- </h3><table class="source_code">
548
+ </h3><div class="docstring">
549
+ <div class="discussion">
550
+
551
+ <p>converts 'true' or 'false' strings in `true` or `false` values return
552
+ [Proc] that returns a boolean value if it is considered as such</p>
553
+
554
+
555
+ </div>
556
+ </div>
557
+ <div class="tags">
558
+
559
+
560
+ </div><table class="source_code">
521
561
  <tr>
522
562
  <td>
523
563
  <pre class="lines">
524
564
 
525
565
 
526
- 97
527
- 98
528
- 99
529
- 100
530
- 101
531
- 102
532
- 103
533
- 104
534
- 105
535
- 106
536
- 107</pre>
566
+ 110
567
+ 111
568
+ 112
569
+ 113
570
+ 114
571
+ 115
572
+ 116
573
+ 117
574
+ 118
575
+ 119
576
+ 120</pre>
537
577
  </td>
538
578
  <td>
539
- <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 97</span>
540
-
541
- <span class='rubyid_def def kw'>def</span> <span class='rubyid_string_boolean_converter identifier id'>string_boolean_converter</span>
542
- <span class='rubyid_proc identifier id'>proc</span> <span class='rubyid_do do kw'>do</span> <span class='bitor op'>|</span><span class='rubyid_v identifier id'>v</span><span class='bitor op'>|</span>
543
- <span class='rubyid_dv identifier id'>dv</span> <span class='assign token'>=</span> <span class='rubyid_v identifier id'>v</span><span class='dot token'>.</span><span class='rubyid_downcase identifier id'>downcase</span>
544
- <span class='rubyid_if if kw'>if</span> <span class='rubyid_dv identifier id'>dv</span> <span class='eq op'>==</span> <span class='string val'>&quot;true&quot;</span>
545
- <span class='rubyid_return return kw'>return</span> <span class='rubyid_true true kw'>true</span>
546
- <span class='rubyid_elsif elsif kw'>elsif</span> <span class='rubyid_dv identifier id'>dv</span> <span class='eq op'>==</span> <span class='string val'>&quot;false&quot;</span>
547
- <span class='rubyid_return return kw'>return</span> <span class='rubyid_false false kw'>false</span>
548
- <span class='rubyid_end end kw'>end</span>
549
- <span class='rubyid_v identifier id'>v</span>
550
- <span class='rubyid_end end kw'>end</span>
551
- <span class='rubyid_end end kw'>end</span>
552
- </pre>
579
+ <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 110</span>
580
+
581
+ <span class='kw'>def</span> <span class='id identifier rubyid_string_boolean_converter'>string_boolean_converter</span>
582
+ <span class='id identifier rubyid_proc'>proc</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_v'>v</span><span class='op'>|</span>
583
+ <span class='id identifier rubyid_dv'>dv</span> <span class='op'>=</span> <span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_downcase'>downcase</span>
584
+ <span class='kw'>if</span> <span class='id identifier rubyid_dv'>dv</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>true</span><span class='tstring_end'>&quot;</span></span>
585
+ <span class='id identifier rubyid_v'>v</span> <span class='op'>=</span> <span class='kw'>true</span>
586
+ <span class='kw'>elsif</span> <span class='id identifier rubyid_dv'>dv</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>false</span><span class='tstring_end'>&quot;</span></span>
587
+ <span class='id identifier rubyid_v'>v</span> <span class='op'>=</span> <span class='kw'>false</span>
588
+ <span class='kw'>end</span>
589
+ <span class='id identifier rubyid_v'>v</span>
590
+ <span class='kw'>end</span>
591
+ <span class='kw'>end</span></pre>
553
592
  </td>
554
593
  </tr>
555
594
  </table>
@@ -570,23 +609,22 @@ lines.</p>
570
609
  <pre class="lines">
571
610
 
572
611
 
573
- 53
574
612
  54
575
613
  55
576
614
  56
577
615
  57
578
- 58</pre>
616
+ 58
617
+ 59</pre>
579
618
  </td>
580
619
  <td>
581
- <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 53</span>
582
-
583
- <span class='rubyid_def def kw'>def</span> <span class='rubyid_string_cleaner identifier id'>string_cleaner</span>
584
- <span class='rubyid_proc identifier id'>proc</span> <span class='rubyid_do do kw'>do</span> <span class='bitor op'>|</span><span class='rubyid_v identifier id'>v</span><span class='bitor op'>|</span>
585
- <span class='rubyid_v identifier id'>v</span> <span class='assign token'>=</span> <span class='rubyid_v identifier id'>v</span><span class='dot token'>.</span><span class='rubyid_strip identifier id'>strip</span>
586
- <span class='rubyid_v identifier id'>v</span><span class='dot token'>.</span><span class='rubyid_gsub identifier id'>gsub</span><span class='lparen token'>(</span><span class='string val'>'mailto:'</span><span class='comma token'>,</span><span class='string val'>''</span><span class='rparen token'>)</span>
587
- <span class='rubyid_end end kw'>end</span>
588
- <span class='rubyid_end end kw'>end</span>
589
- </pre>
620
+ <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 54</span>
621
+
622
+ <span class='kw'>def</span> <span class='id identifier rubyid_string_cleaner'>string_cleaner</span>
623
+ <span class='id identifier rubyid_proc'>proc</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_v'>v</span><span class='op'>|</span>
624
+ <span class='id identifier rubyid_v'>v</span> <span class='op'>=</span> <span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_strip'>strip</span>
625
+ <span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>mailto:</span><span class='tstring_end'>'</span></span><span class='comma'>,</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
626
+ <span class='kw'>end</span>
627
+ <span class='kw'>end</span></pre>
590
628
  </td>
591
629
  </tr>
592
630
  </table>
@@ -607,7 +645,6 @@ lines.</p>
607
645
  <pre class="lines">
608
646
 
609
647
 
610
- 66
611
648
  67
612
649
  68
613
650
  69
@@ -615,21 +652,21 @@ lines.</p>
615
652
  71
616
653
  72
617
654
  73
618
- 74</pre>
655
+ 74
656
+ 75</pre>
619
657
  </td>
620
658
  <td>
621
- <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 66</span>
622
-
623
- <span class='rubyid_def def kw'>def</span> <span class='rubyid_string_integer_converter identifier id'>string_integer_converter</span>
624
- <span class='rubyid_proc identifier id'>proc</span> <span class='rubyid_do do kw'>do</span> <span class='bitor op'>|</span><span class='rubyid_v identifier id'>v</span><span class='bitor op'>|</span>
625
- <span class='rubyid_if if kw'>if</span> <span class='rubyid_v identifier id'>v</span><span class='dot token'>.</span><span class='rubyid_to_i identifier id'>to_i</span><span class='dot token'>.</span><span class='rubyid_to_s identifier id'>to_s</span> <span class='eq op'>==</span> <span class='rubyid_v identifier id'>v</span>
626
- <span class='rubyid_return return kw'>return</span> <span class='rubyid_v identifier id'>v</span><span class='dot token'>.</span><span class='rubyid_to_i identifier id'>to_i</span>
627
- <span class='rubyid_else else kw'>else</span>
628
- <span class='rubyid_v identifier id'>v</span>
629
- <span class='rubyid_end end kw'>end</span>
630
- <span class='rubyid_end end kw'>end</span>
631
- <span class='rubyid_end end kw'>end</span>
632
- </pre>
659
+ <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 67</span>
660
+
661
+ <span class='kw'>def</span> <span class='id identifier rubyid_string_integer_converter'>string_integer_converter</span>
662
+ <span class='id identifier rubyid_proc'>proc</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_v'>v</span><span class='op'>|</span>
663
+ <span class='kw'>if</span> <span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span> <span class='op'>==</span> <span class='id identifier rubyid_v'>v</span>
664
+ <span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span>
665
+ <span class='kw'>else</span>
666
+ <span class='id identifier rubyid_v'>v</span>
667
+ <span class='kw'>end</span>
668
+ <span class='kw'>end</span>
669
+ <span class='kw'>end</span></pre>
633
670
  </td>
634
671
  </tr>
635
672
  </table>
@@ -650,21 +687,20 @@ lines.</p>
650
687
  <pre class="lines">
651
688
 
652
689
 
653
- 60
654
690
  61
655
691
  62
656
692
  63
657
- 64</pre>
693
+ 64
694
+ 65</pre>
658
695
  </td>
659
696
  <td>
660
- <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 60</span>
661
-
662
- <span class='rubyid_def def kw'>def</span> <span class='rubyid_string_nil_converter identifier id'>string_nil_converter</span>
663
- <span class='rubyid_proc identifier id'>proc</span> <span class='rubyid_do do kw'>do</span> <span class='bitor op'>|</span><span class='rubyid_v identifier id'>v</span><span class='bitor op'>|</span>
664
- <span class='rubyid_return return kw'>return</span> <span class='rubyid_v identifier id'>v</span> <span class='eq op'>==</span> <span class='string val'>&quot;&quot;</span> <span class='question op'>?</span> <span class='rubyid_nil nil kw'>nil</span> <span class='colon op'>:</span> <span class='rubyid_v identifier id'>v</span>
665
- <span class='rubyid_end end kw'>end</span>
666
- <span class='rubyid_end end kw'>end</span>
667
- </pre>
697
+ <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 61</span>
698
+
699
+ <span class='kw'>def</span> <span class='id identifier rubyid_string_nil_converter'>string_nil_converter</span>
700
+ <span class='id identifier rubyid_proc'>proc</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_v'>v</span><span class='op'>|</span>
701
+ <span class='lparen'>(</span><span class='id identifier rubyid_v'>v</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_end'>&quot;</span></span> <span class='op'>?</span> <span class='kw'>nil</span> <span class='op'>:</span> <span class='id identifier rubyid_v'>v</span><span class='rparen'>)</span>
702
+ <span class='kw'>end</span>
703
+ <span class='kw'>end</span></pre>
668
704
  </td>
669
705
  </tr>
670
706
  </table>
@@ -685,7 +721,6 @@ lines.</p>
685
721
  <pre class="lines">
686
722
 
687
723
 
688
- 76
689
724
  77
690
725
  78
691
726
  79
@@ -704,32 +739,52 @@ lines.</p>
704
739
  92
705
740
  93
706
741
  94
707
- 95</pre>
742
+ 95
743
+ 96
744
+ 97
745
+ 98
746
+ 99
747
+ 100
748
+ 101
749
+ 102
750
+ 103
751
+ 104
752
+ 105
753
+ 106</pre>
708
754
  </td>
709
755
  <td>
710
- <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 76</span>
711
-
712
- <span class='rubyid_def def kw'>def</span> <span class='rubyid_string_optimistic_date_converter identifier id'>string_optimistic_date_converter</span>
713
- <span class='rubyid_proc identifier id'>proc</span> <span class='rubyid_do do kw'>do</span> <span class='bitor op'>|</span><span class='rubyid_v identifier id'>v</span><span class='bitor op'>|</span>
714
- <span class='rubyid_rv identifier id'>rv</span> <span class='assign token'>=</span> <span class='rubyid_v identifier id'>v</span>
715
- <span class='rubyid_starts_with_nr identifier id'>starts_with_nr</span> <span class='assign token'>=</span> <span class='rubyid_v identifier id'>v</span><span class='dot token'>.</span><span class='rubyid_chars identifier id'>chars</span><span class='dot token'>.</span><span class='rubyid_first identifier id'>first</span><span class='dot token'>.</span><span class='rubyid_to_i identifier id'>to_i</span><span class='dot token'>.</span><span class='rubyid_to_s identifier id'>to_s</span> <span class='eq op'>==</span> <span class='rubyid_v identifier id'>v</span><span class='dot token'>.</span><span class='rubyid_chars identifier id'>chars</span><span class='dot token'>.</span><span class='rubyid_first identifier id'>first</span> <span class='comment val'>#it should at least start with a number...</span>
716
- <span class='rubyid_no_spaced_dash identifier id'>no_spaced_dash</span> <span class='assign token'>=</span> <span class='rubyid_v identifier id'>v</span><span class='dot token'>.</span><span class='rubyid_to_s identifier id'>to_s</span><span class='dot token'>.</span><span class='rubyid_match identifier id'>match</span><span class='lparen token'>(</span><span class='string val'>&quot; - &quot;</span><span class='rparen token'>)</span> <span class='question op'>?</span> <span class='rubyid_false false kw'>false</span> <span class='colon op'>:</span> <span class='rubyid_true true kw'>true</span>
717
- <span class='rubyid_normal_date_length identifier id'>normal_date_length</span> <span class='assign token'>=</span> <span class='rubyid_v identifier id'>v</span><span class='dot token'>.</span><span class='rubyid_to_s identifier id'>to_s</span><span class='dot token'>.</span><span class='rubyid_length identifier id'>length</span> <span class='leq op'>&lt;=</span> <span class='integer val'>25</span>
718
- <span class='rubyid_if if kw'>if</span> <span class='rubyid_no_spaced_dash identifier id'>no_spaced_dash</span> <span class='rubyid_and and kw'>and</span> <span class='rubyid_starts_with_nr identifier id'>starts_with_nr</span> <span class='rubyid_and and kw'>and</span> <span class='rubyid_normal_date_length identifier id'>normal_date_length</span>
719
- <span class='rubyid_begin begin kw'>begin</span>
720
- <span class='rubyid_rv identifier id'>rv</span> <span class='assign token'>=</span> <span class='lparen token'>(</span><span class='rubyid_v identifier id'>v</span><span class='dot token'>.</span><span class='rubyid_length identifier id'>length</span> <span class='gt op'>&gt;</span> <span class='integer val'>10</span><span class='rparen token'>)</span> <span class='question op'>?</span> <span class='rubyid_DateTime constant id'>DateTime</span><span class='dot token'>.</span><span class='rubyid_parse identifier id'>parse</span><span class='lparen token'>(</span><span class='rubyid_v identifier id'>v</span><span class='rparen token'>)</span> <span class='colon op'>:</span> <span class='rubyid_Date constant id'>Date</span><span class='dot token'>.</span><span class='rubyid_parse identifier id'>parse</span><span class='lparen token'>(</span><span class='rubyid_v identifier id'>v</span><span class='rparen token'>)</span>
721
- <span class='rubyid_rescue rescue kw'>rescue</span> <span class='rubyid_ArgumentError constant id'>ArgumentError</span>
722
- <span class='rubyid_rv identifier id'>rv</span> <span class='assign token'>=</span> <span class='rubyid_v identifier id'>v</span>
723
- <span class='rubyid_end end kw'>end</span>
724
- <span class='rubyid_begin begin kw'>begin</span>
725
- <span class='rubyid_rv identifier id'>rv</span> <span class='assign token'>=</span> <span class='rubyid_Date constant id'>Date</span><span class='dot token'>.</span><span class='rubyid_parse identifier id'>parse</span><span class='lparen token'>(</span><span class='rubyid_v identifier id'>v</span><span class='dot token'>.</span><span class='rubyid_to_i identifier id'>to_i</span><span class='dot token'>.</span><span class='rubyid_to_s identifier id'>to_s</span><span class='rparen token'>)</span> <span class='eq op'>==</span> <span class='rubyid_rv identifier id'>rv</span> <span class='integer val'>? </span><span class='rubyid_v identifier id'>v</span> <span class='colon op'>:</span> <span class='rubyid_rv identifier id'>rv</span> <span class='comment val'># disqualify is it is only based on the first number</span>
726
- <span class='rubyid_rescue rescue kw'>rescue</span> <span class='rubyid_ArgumentError constant id'>ArgumentError</span>
727
- <span class='rubyid_end end kw'>end</span>
728
- <span class='rubyid_end end kw'>end</span>
729
- <span class='rubyid_rv identifier id'>rv</span>
730
- <span class='rubyid_end end kw'>end</span>
731
- <span class='rubyid_end end kw'>end</span>
732
- </pre>
756
+ <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 77</span>
757
+
758
+ <span class='kw'>def</span> <span class='id identifier rubyid_string_optimistic_date_converter'>string_optimistic_date_converter</span>
759
+ <span class='id identifier rubyid_proc'>proc</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_v'>v</span><span class='op'>|</span>
760
+ <span class='id identifier rubyid_rv'>rv</span> <span class='op'>=</span> <span class='id identifier rubyid_v'>v</span>
761
+ <span class='id identifier rubyid_starts_with_nr'>starts_with_nr</span> <span class='op'>=</span> <span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_chars'>chars</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span> <span class='op'>==</span> <span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_chars'>chars</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span> <span class='comment'>#it should at least start with a number...
762
+ </span> <span class='id identifier rubyid_no_spaced_dash'>no_spaced_dash</span> <span class='op'>=</span> <span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='period'>.</span><span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'> - </span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span> <span class='op'>?</span> <span class='kw'>false</span> <span class='op'>:</span> <span class='kw'>true</span>
763
+ <span class='id identifier rubyid_min_two_dashes'>min_two_dashes</span> <span class='op'>=</span> <span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='period'>.</span><span class='id identifier rubyid_scan'>scan</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>-</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_count'>count</span> <span class='op'>&gt;</span> <span class='int'>1</span> <span class='op'>?</span> <span class='kw'>true</span> <span class='op'>:</span> <span class='kw'>false</span>
764
+ <span class='id identifier rubyid_min_two_dashes'>min_two_dashes</span> <span class='op'>=</span> <span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='period'>.</span><span class='id identifier rubyid_scan'>scan</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>/</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_count'>count</span> <span class='op'>&gt;</span> <span class='int'>1</span> <span class='op'>?</span> <span class='kw'>true</span> <span class='op'>:</span> <span class='kw'>false</span> <span class='kw'>if</span> <span class='id identifier rubyid_min_two_dashes'>min_two_dashes</span> <span class='op'>==</span> <span class='kw'>false</span>
765
+
766
+ <span class='id identifier rubyid_normal_date_length'>normal_date_length</span> <span class='op'>=</span> <span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='period'>.</span><span class='id identifier rubyid_length'>length</span> <span class='op'>&lt;=</span> <span class='int'>25</span>
767
+ <span class='kw'>if</span> <span class='id identifier rubyid_no_spaced_dash'>no_spaced_dash</span> <span class='kw'>and</span> <span class='id identifier rubyid_starts_with_nr'>starts_with_nr</span> <span class='kw'>and</span> <span class='id identifier rubyid_normal_date_length'>normal_date_length</span> <span class='kw'>and</span> <span class='id identifier rubyid_min_two_dashes'>min_two_dashes</span>
768
+ <span class='kw'>begin</span>
769
+ <span class='id identifier rubyid_rv'>rv</span> <span class='op'>=</span> <span class='lparen'>(</span><span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_length'>length</span> <span class='op'>&gt;</span> <span class='int'>10</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='const'>DateTime</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_v'>v</span><span class='rparen'>)</span> <span class='op'>:</span> <span class='const'>Date</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_v'>v</span><span class='rparen'>)</span>
770
+ <span class='kw'>rescue</span> <span class='const'>ArgumentError</span>
771
+ <span class='id identifier rubyid_rv'>rv</span> <span class='op'>=</span> <span class='id identifier rubyid_v'>v</span>
772
+ <span class='kw'>end</span>
773
+ <span class='kw'>begin</span>
774
+ <span class='id identifier rubyid_rv'>rv</span> <span class='op'>=</span> <span class='const'>Date</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='rparen'>)</span> <span class='op'>==</span> <span class='id identifier rubyid_rv'>rv</span> <span class='op'>?</span> <span class='id identifier rubyid_v'>v</span> <span class='op'>:</span> <span class='id identifier rubyid_rv'>rv</span> <span class='comment'># disqualify if it is only based on the first number
775
+ </span> <span class='kw'>rescue</span> <span class='const'>ArgumentError</span>
776
+ <span class='kw'>end</span>
777
+ <span class='comment'># try strptime with format 'mm/dd/yyyy'
778
+ </span> <span class='kw'>if</span> <span class='id identifier rubyid_rv'>rv</span> <span class='op'>==</span> <span class='id identifier rubyid_v'>v</span> <span class='op'>&amp;&amp;</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^\d{1,2}[\/-]\d{1,2}[\/-]\d{4}</span><span class='regexp_end'>/</span></span> <span class='op'>=~</span> <span class='id identifier rubyid_v'>v</span>
779
+ <span class='kw'>begin</span>
780
+ <span class='id identifier rubyid_rv'>rv</span> <span class='op'>=</span> <span class='const'>Date</span><span class='period'>.</span><span class='id identifier rubyid_strptime'>strptime</span><span class='lparen'>(</span><span class='id identifier rubyid_v'>v</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>%m/%d/%Y</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
781
+ <span class='kw'>rescue</span> <span class='const'>ArgumentError</span>
782
+ <span class='kw'>end</span>
783
+ <span class='kw'>end</span>
784
+ <span class='kw'>end</span>
785
+ <span class='id identifier rubyid_rv'>rv</span>
786
+ <span class='kw'>end</span>
787
+ <span class='kw'>end</span></pre>
733
788
  </td>
734
789
  </tr>
735
790
  </table>
@@ -779,17 +834,16 @@ lines.</p>
779
834
  <pre class="lines">
780
835
 
781
836
 
782
- 14
783
837
  15
784
- 16</pre>
838
+ 16
839
+ 17</pre>
785
840
  </td>
786
841
  <td>
787
- <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 14</span>
842
+ <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 15</span>
788
843
 
789
- <span class='rubyid_def def kw'>def</span> <span class='rubyid_string_parsers identifier id'>string_parsers</span>
790
- <span class='rubyid_@string_parsers ivar id'>@string_parsers</span> <span class='opasgn op'>||=</span> <span class='lbrack token'>[</span><span class='symbol val'>:string_cleaner</span><span class='comma token'>,</span><span class='symbol val'>:string_nil_converter</span><span class='comma token'>,</span><span class='symbol val'>:string_integer_converter</span><span class='comma token'>,</span><span class='symbol val'>:string_boolean_converter</span><span class='rbrack token'>]</span>
791
- <span class='rubyid_end end kw'>end</span>
792
- </pre>
844
+ <span class='kw'>def</span> <span class='id identifier rubyid_string_parsers'>string_parsers</span>
845
+ <span class='ivar'>@string_parsers</span> <span class='op'>||=</span> <span class='lbracket'>[</span><span class='symbol'>:string_cleaner</span><span class='comma'>,</span><span class='symbol'>:string_nil_converter</span><span class='comma'>,</span><span class='symbol'>:string_integer_converter</span><span class='comma'>,</span><span class='symbol'>:string_boolean_converter</span><span class='rbracket'>]</span>
846
+ <span class='kw'>end</span></pre>
793
847
  </td>
794
848
  </tr>
795
849
  </table>
@@ -859,17 +913,16 @@ lines.</p>
859
913
  <pre class="lines">
860
914
 
861
915
 
862
- 21
863
916
  22
864
- 23</pre>
917
+ 23
918
+ 24</pre>
865
919
  </td>
866
920
  <td>
867
- <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 21</span>
921
+ <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 22</span>
868
922
 
869
- <span class='rubyid_def def kw'>def</span> <span class='rubyid_string_parsers= identifier id'>string_parsers=</span> <span class='rubyid_parsers identifier id'>parsers</span>
870
- <span class='rubyid_@string_parsers ivar id'>@string_parsers</span> <span class='assign token'>=</span> <span class='rubyid_parsers identifier id'>parsers</span>
871
- <span class='rubyid_end end kw'>end</span>
872
- </pre>
923
+ <span class='kw'>def</span> <span class='id identifier rubyid_string_parsers='>string_parsers=</span> <span class='id identifier rubyid_parsers'>parsers</span>
924
+ <span class='ivar'>@string_parsers</span> <span class='op'>=</span> <span class='id identifier rubyid_parsers'>parsers</span>
925
+ <span class='kw'>end</span></pre>
873
926
  </td>
874
927
  </tr>
875
928
  </table>
@@ -919,17 +972,16 @@ lines.</p>
919
972
  <pre class="lines">
920
973
 
921
974
 
922
- 27
923
975
  28
924
- 29</pre>
976
+ 29
977
+ 30</pre>
925
978
  </td>
926
979
  <td>
927
- <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 27</span>
980
+ <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 28</span>
928
981
 
929
- <span class='rubyid_def def kw'>def</span> <span class='rubyid_string_parsers_as_procs identifier id'>string_parsers_as_procs</span>
930
- <span class='rubyid_string_parsers identifier id'>string_parsers</span><span class='dot token'>.</span><span class='rubyid_collect identifier id'>collect</span><span class='lbrace token'>{</span><span class='bitor op'>|</span><span class='rubyid_c identifier id'>c</span><span class='bitor op'>|</span> <span class='rubyid_c identifier id'>c</span><span class='dot token'>.</span><span class='rubyid_is_a? fid id'>is_a?</span><span class='lparen token'>(</span><span class='rubyid_Proc constant id'>Proc</span><span class='rparen token'>)</span> <span class='question op'>?</span> <span class='rubyid_c identifier id'>c</span> <span class='colon op'>:</span> <span class='rubyid_self self kw'>self</span><span class='dot token'>.</span><span class='rubyid_send identifier id'>send</span><span class='lparen token'>(</span><span class='rubyid_c identifier id'>c</span><span class='rparen token'>)</span><span class='rbrace token'>}</span>
931
- <span class='rubyid_end end kw'>end</span>
932
- </pre>
982
+ <span class='kw'>def</span> <span class='id identifier rubyid_string_parsers_as_procs'>string_parsers_as_procs</span>
983
+ <span class='id identifier rubyid_string_parsers'>string_parsers</span><span class='period'>.</span><span class='id identifier rubyid_collect'>collect</span><span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_c'>c</span><span class='op'>|</span> <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Proc</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_c'>c</span> <span class='op'>:</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='id identifier rubyid_c'>c</span><span class='rparen'>)</span><span class='rbrace'>}</span>
984
+ <span class='kw'>end</span></pre>
933
985
  </td>
934
986
  </tr>
935
987
  </table>
@@ -982,17 +1034,16 @@ lines</p>
982
1034
  <pre class="lines">
983
1035
 
984
1036
 
985
- 8
986
1037
  9
987
- 10</pre>
1038
+ 10
1039
+ 11</pre>
988
1040
  </td>
989
1041
  <td>
990
- <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 8</span>
1042
+ <pre class="code"><span class="info file"># File 'lib/workbook/modules/type_parser.rb', line 9</span>
991
1043
 
992
- <span class='rubyid_def def kw'>def</span> <span class='rubyid_strip_win_chars identifier id'>strip_win_chars</span> <span class='rubyid_csv_raw identifier id'>csv_raw</span>
993
- <span class='rubyid_csv_raw identifier id'>csv_raw</span><span class='dot token'>.</span><span class='rubyid_gsub identifier id'>gsub</span><span class='lparen token'>(</span><span class='regexp val'>/(\n\r|\r\n|\r)/</span><span class='comma token'>,</span><span class='string val'>&quot;\n&quot;</span><span class='rparen token'>)</span>
994
- <span class='rubyid_end end kw'>end</span>
995
- </pre>
1044
+ <span class='kw'>def</span> <span class='id identifier rubyid_strip_win_chars'>strip_win_chars</span> <span class='id identifier rubyid_csv_raw'>csv_raw</span>
1045
+ <span class='id identifier rubyid_csv_raw'>csv_raw</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>(\n\r|\r\n|\r)</span><span class='regexp_end'>/</span></span><span class='comma'>,</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
1046
+ <span class='kw'>end</span></pre>
996
1047
  </td>
997
1048
  </tr>
998
1049
  </table>
@@ -1003,9 +1054,9 @@ lines</p>
1003
1054
  </div>
1004
1055
 
1005
1056
  <div id="footer">
1006
- Generated on Thu Jan 17 13:15:58 2013 by
1057
+ Generated on Sun May 5 14:58:05 2013 by
1007
1058
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1008
- 0.8.3 (ruby-1.8.7).
1059
+ 0.8.5.2 (ruby-1.9.3).
1009
1060
  </div>
1010
1061
 
1011
1062
  </body>
@@ -6,7 +6,7 @@
6
6
  <title>
7
7
  Module: Workbook::Modules
8
8
 
9
- &mdash; Documentation by YARD 0.8.3
9
+ &mdash; Documentation by YARD 0.8.5.2
10
10
 
11
11
  </title>
12
12
 
@@ -108,9 +108,9 @@
108
108
  </div>
109
109
 
110
110
  <div id="footer">
111
- Generated on Thu Jan 17 13:15:57 2013 by
111
+ Generated on Sun May 5 14:58:05 2013 by
112
112
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
113
- 0.8.3 (ruby-1.8.7).
113
+ 0.8.5.2 (ruby-1.9.3).
114
114
  </div>
115
115
 
116
116
  </body>