struct CSV::Row

Overview

A Row of a CSV::WithHeaders instance.

Defined in:

csv.cr

Instance Method Summary

Instance Method Detail

def [](header : String) : StringSource

Returns the current row's value corresponding to the given header name. Raises KeyError if no such header exists. Raises CSV::Error if headers were not requested.

def [](column : Int) : StringSource

Returns this row's value at the given column index. A negative index counts from the end. Raises IndexError if no such column exists.

def [](header_pattern : Regex) : StringSource

Returns this row's value corresponding to the given header_pattern. Raises KeyError if no such header exists. Raises CSV::Error if headers were not requested.

def []?(header : String) : String?Source

Returns this row's value corresponding to the given header name. Returns nil if no such header exists. Raises CSV::Error if headers were not requested.

def []?(column : Int) : String?Source

Returns this row's value at the given column index. A negative index counts from the end. Returns nil if no such column exists.

def []?(header_pattern : Regex) : String?Source

Returns this row's value corresponding to the given header_pattern. Returns nil if no such header exists. Raises CSV::Error if headers were not requested.

def size : Int32Source

Returns the number of columns in this row, regardless of the number of headers (if requested).

def to_a : Array(String)Source

Converts this row to an Array.

def to_h : Hash(String, String)Source

Converts this row to a Hash.

def values_at(*columns : Int)Source

Returns a tuple of this row's values at given indices A negative index counts from the end. Raises IndexError if any column doesn't exist The behavior of returning a tuple is similar to Hash#values_at

def values_at(*headers : String)Source

Returns a tuple of this row's values corresponding to the given headers Raises KeyError if any header doesn't exist. Raises CSV::Error if headers were not requested The behavior of returning a tuple is similar to Hash#values_at

© 2012–2021 Manas Technology Solutions.
Licensed under the Apache License, Version 2.0.
https://crystal-lang.org/api/1.2.1/CSV/Row.html