lib/arrow/field-containable.rb in red-arrow-0.14.1 vs lib/arrow/field-containable.rb in red-arrow-0.15.0
- old
+ new
@@ -22,9 +22,12 @@
when String, Symbol
name = name_or_index
get_field_by_name(name)
when Integer
index = name_or_index
+ raise if index < 0
+ index += n_fields if index < 0
+ return nil if index < 0 or index >= n_fields
get_field(index)
else
message = "field name or index must be String, Symbol or Integer"
message << ": <#{name_or_index.inspect}>"
raise ArgumentError, message