class Aws::Rest::Response::Headers
def cast_value(ref, value)
def cast_value(ref, value) value = extract_json_trait(value) if ref['jsonvalue'] case ref.shape when StringShape then value.to_s when IntegerShape then value.to_i when FloatShape then Util.deserialize_number(value) when BooleanShape then value == 'true' when ListShape then case ref.shape.member.shape when StringShape then HeaderListParser.parse_string_list(value) when TimestampShape then HeaderListParser.parse_timestamp_list(value, ref.shape.member) else value.split(', ').map { |v| cast_value(ref.shape.member, v) } end when TimestampShape if value =~ /^\d+(\.\d*)/ Time.at(value.to_f) elsif value =~ /^\d+$/ Time.at(value.to_i) else begin Time.parse(value) rescue nil end end else raise "unsupported shape #{ref.shape.class}" end end