Sha256: 1d8f5667adec88683444bfd92cc9dbf456c3f6effade4113471370b71525cdc1

Contents?: true

Size: 623 Bytes

Versions: 23

Compression:

Stored size: 623 Bytes

Contents

require 'protobuf/field/base_field'

module Protobuf
  module Field
    class FloatField < BaseField
      def self.default; 0.0; end
      def self.max;  1.0/0; end
      def self.min; -1.0/0; end
      def max;  1.0/0; end
      def min; -1.0/0; end

      def wire_type
        WireType::FIXED32
      end

      def decode(bytes)
        bytes.unpack('e').first
      end

      def encode(value)
        [value].pack('e')
      end

      def acceptable?(val)
        raise TypeError, val.class.name unless val.is_a?(Numeric)
        raise RangeError if val < min || max < val
        true
      end
    end
  end
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
protobuf-2.3.2-java lib/protobuf/field/float_field.rb
protobuf-2.3.2 lib/protobuf/field/float_field.rb
protobuf-2.3.1-java lib/protobuf/field/float_field.rb
protobuf-2.3.1 lib/protobuf/field/float_field.rb
protobuf-2.3.0-java lib/protobuf/field/float_field.rb
protobuf-2.3.0 lib/protobuf/field/float_field.rb
protobuf-2.2.7-java lib/protobuf/field/float_field.rb
protobuf-2.2.7 lib/protobuf/field/float_field.rb
protobuf-2.2.6-java lib/protobuf/field/float_field.rb
protobuf-2.2.6 lib/protobuf/field/float_field.rb
protobuf-2.2.5-java lib/protobuf/field/float_field.rb
protobuf-2.2.5 lib/protobuf/field/float_field.rb
protobuf-2.2.4 lib/protobuf/field/float_field.rb
protobuf-2.2.3 lib/protobuf/field/float_field.rb
protobuf-2.2.2 lib/protobuf/field/float_field.rb
protobuf-2.2.1 lib/protobuf/field/float_field.rb
protobuf-2.2.0 lib/protobuf/field/float_field.rb
protobuf-2.1.3 lib/protobuf/field/float_field.rb
protobuf-2.1.2 lib/protobuf/field/float_field.rb
protobuf-2.1.1 lib/protobuf/field/float_field.rb