Sha256: d43e4cbff1a497aa3ac01bb6c321b2e5ad1df1da062029baa767200320e7ca27

Contents?: true

Size: 697 Bytes

Versions: 23

Compression:

Stored size: 697 Bytes

Contents

module ActiveRecord
  module ConnectionAdapters
    module SQLServer
      module Type
        class Uuid < String

          ACCEPTABLE_UUID = %r{\A\{?([a-fA-F0-9]{4}-?){8}\}?\z}x

          alias_method :serialize, :deserialize

          def type
            :uuid
          end

          def sqlserver_type
            'uniqueidentifier'.freeze
          end

          def serialize(value)
            return unless value
            Data.new super, self
          end

          def cast(value)
            value.to_s[ACCEPTABLE_UUID, 0]
          end

          def quoted(value)
            Utils.quote_string_single(value) if value
          end

        end
      end
    end
  end
end

Version data entries

23 entries across 23 versions & 2 rubygems

Version Path
activerecord-jdbcsqlserver-adapter-52.0.0 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-jdbcsqlserver-adapter-51.1.0 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-jdbcsqlserver-adapter-50.1.0 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-sqlserver-adapter-5.2.1 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-jdbcsqlserver-adapter-51.0.1 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-jdbcsqlserver-adapter-51.0.0 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-jdbcsqlserver-adapter-50.0.0 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-sqlserver-adapter-5.2.0 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-sqlserver-adapter-5.2.0.rc2 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-sqlserver-adapter-5.2.0.rc1 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-sqlserver-adapter-5.1.6 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-sqlserver-adapter-5.0.8 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-sqlserver-adapter-5.1.5 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-sqlserver-adapter-5.1.2 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-sqlserver-adapter-5.1.1 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-sqlserver-adapter-5.1.0 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-sqlserver-adapter-5.0.7 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-sqlserver-adapter-5.0.6 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-sqlserver-adapter-5.0.5 lib/active_record/connection_adapters/sqlserver/type/uuid.rb
activerecord-sqlserver-adapter-5.0.4 lib/active_record/connection_adapters/sqlserver/type/uuid.rb