diff --git a/ChangeLog b/ChangeLog index 3ff46b2b8c..deda156ebc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Thu Sep 20 07:05:00 2012 Zachary Scott + + * lib/csv.rb (Object#CSV, Array#to_csv, String#parse_csv): + Examples and documentation for CSV. + [Bug #6880] [ruby-core:47218] + Thu Sep 20 00:42:20 2012 Nobuyoshi Nakada * array.c (take_items), enum.c (enum_zip): raise TypeError at diff --git a/lib/csv.rb b/lib/csv.rb index bd83a6de68..ede7c3b0d8 100644 --- a/lib/csv.rb +++ b/lib/csv.rb @@ -2359,20 +2359,41 @@ class CSV end end -# Another name for CSV::instance(). +# Passes +args+ to CSV::instance. +# +# CSV("CSV,data").read +# #=> [["CSV", "data"]] +# +# If a block is given, the instance is passed the block and the return value +# becomes the return value of the block. +# +# CSV("CSV,data") { |c| +# c.read.any? { |a| a.include?("data") } +# } #=> true +# +# CSV("CSV,data") { |c| +# c.read.any? { |a| a.include?("zombies") } +# } #=> false +# def CSV(*args, &block) CSV.instance(*args, &block) end -class Array - # Equivalent to CSV::generate_line(self, options). +class Array # :nodoc: + # Equivalent to CSV::generate_line(self, options) + # + # ["CSV", "data"].to_csv + # #=> "CSV,data\n" def to_csv(options = Hash.new) CSV.generate_line(self, options) end end -class String - # Equivalent to CSV::parse_line(self, options). +class String # :nodoc: + # Equivalent to CSV::parse_line(self, options) + # + # "CSV,data".parse_csv + # #=> ["CSV", "data"] def parse_csv(options = Hash.new) CSV.parse_line(self, options) end