Sha256: 885c4407ae44a3ed1f747a4fe66d293108249fb3a618a242dd168e92f0f51b51

Contents?: true

Size: 582 Bytes

Versions: 9

Compression:

Stored size: 582 Bytes

Contents

class Boolean; end unless defined?(Boolean)

begin
  require 'uuidtools'
rescue LoadError
  nil
else
  module ActiveData
    class UUID < UUIDTools::UUID
      def as_json(*_)
        to_s
      end

      def to_param
        to_s
      end

      def self.parse_string(value)
        return nil if value.length.zero?
        if value.length == 36
          parse value
        elsif value.length == 32
          parse_hexdigest value
        else
          parse_raw value
        end
      end

      def inspect
        "#<ActiveData::UUID:#{self}>"
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
active_data-1.2.0 lib/active_data/extensions.rb
active_data-1.1.7 lib/active_data/extensions.rb
active_data-1.1.6 lib/active_data/extensions.rb
active_data-1.1.5 lib/active_data/extensions.rb
active_data-1.1.4 lib/active_data/extensions.rb
active_data-1.1.3 lib/active_data/extensions.rb
active_data-1.1.2 lib/active_data/extensions.rb
active_data-1.1.1 lib/active_data/extensions.rb
active_data-1.1.0 lib/active_data/extensions.rb