Sha256: 1bf769fece23461722fcb11dd7a65e3ae5b7d28dc8001fd988bc0a05cf318252

Contents?: true

Size: 1.01 KB

Versions: 4

Compression:

Stored size: 1.01 KB

Contents

module ActiveRecord
  module Type
    module Bigquery
      class BigqueryActiveRecordConverter
        def self.convert_active_model_type_to_bigquery(type)
          case type
          when NilClass then nil
          when ActiveModel::Type::Integer, ActiveModel::Type::BigInteger then :INT64
          when ActiveModel::Type::Boolean then :BOOL
          when ActiveModel::Type::String, ActiveModel::Type::ImmutableString then :STRING
          when ActiveModel::Type::Binary, ActiveRecord::Type::Bigquery::Bytes then :BYTES
          when ActiveModel::Type::Float then :FLOAT64
          when ActiveModel::Type::Decimal then :NUMERIC
          when ActiveModel::Type::DateTime, ActiveModel::Type::Time, ActiveRecord::Type::Bigquery::Timestamp then :TIMESTAMP
          when ActiveModel::Type::Date then :DATE
          when ActiveRecord::Type::Json then :JSON
          when ActiveRecord::Type::Bigquery::Array then [convert_active_model_type_to_bigquery(type.element_type)]
          end
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
activerecord-bigquery-adapter-1.0.3 lib/active_record/type/bigquery/bigquery_active_record_converter.rb
activerecord-bigquery-adapter-1.0.2 lib/active_record/type/bigquery/bigquery_active_record_converter.rb
activerecord-bigquery-adapter-1.0.1 lib/active_record/type/bigquery/bigquery_active_record_converter.rb
activerecord-bigquery-adapter-1.0.0 lib/active_record/type/bigquery/bigquery_active_record_converter.rb