diff options
Diffstat (limited to 'doc/csv/options/generating/write_converters.rdoc')
-rw-r--r-- | doc/csv/options/generating/write_converters.rdoc | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/doc/csv/options/generating/write_converters.rdoc b/doc/csv/options/generating/write_converters.rdoc index c7367b96fd..6e5fae5fda 100644 --- a/doc/csv/options/generating/write_converters.rdoc +++ b/doc/csv/options/generating/write_converters.rdoc @@ -1,7 +1,7 @@ ====== Option +write_converters+ -Specifies the \Proc or \Array of Procs that are to be called -for converting each output field. +Specifies converters to be used in generating fields. +See {Write Converters}[#class-CSV-label-Write+Converters] Default value: CSV::DEFAULT_OPTIONS.fetch(:write_converters) # => nil @@ -11,21 +11,23 @@ With no write converter: str # => "\"\na\n\",\tb\t, c \n" With a write converter: - strip_converter = lambda {|field| field.strip } + strip_converter = proc {|field| field.strip } str = CSV.generate_line(["\na\n", "\tb\t", " c "], write_converters: strip_converter) str # => "a,b,c\n" With two write converters (called in order): - upcase_converter = lambda {|field| field.upcase } - downcase_converter = lambda {|field| field.downcase } + upcase_converter = proc {|field| field.upcase } + downcase_converter = proc {|field| field.downcase } write_converters = [upcase_converter, downcase_converter] str = CSV.generate_line(['a', 'b', 'c'], write_converters: write_converters) str # => "a,b,c\n" +See also {Write Converters}[#class-CSV-label-Write+Converters] + --- Raises an exception if the converter returns a value that is neither +nil+ nor \String-convertible: - bad_converter = lambda {|field| BasicObject.new } + bad_converter = proc {|field| BasicObject.new } # Raises NoMethodError (undefined method `is_a?' for #<BasicObject:>) CSV.generate_line(['a', 'b', 'c'], write_converters: bad_converter)
\ No newline at end of file |