float-formats 0.2.0 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +22 -0
- data/Gemfile +3 -0
- data/History.txt +4 -0
- data/LICENSE +21 -0
- data/README.md +331 -0
- data/Rakefile +15 -34
- data/TODO.txt +18 -0
- data/expand.rb +175 -0
- data/float-formats.gemspec +26 -0
- data/lib/float-formats/bytes.rb +5 -2
- data/lib/float-formats/classes.rb +12 -13
- data/lib/float-formats/version.rb +2 -6
- data/test/test_arithmetic.rb +8 -2
- data/test/test_bytes.rb +1 -1
- data/test/test_float_formats.rb +1 -1
- data/test/test_helper.rb +1 -0
- data/test/test_native-float.rb +1 -1
- metadata +84 -103
- data/License.txt +0 -20
- data/Manifest.txt +0 -20
- data/README.txt +0 -330
- data/setup.rb +0 -1585
- data/tasks/ann.rake +0 -80
- data/tasks/bones.rake +0 -20
- data/tasks/gem.rake +0 -192
- data/tasks/git.rake +0 -40
- data/tasks/manifest.rake +0 -48
- data/tasks/notes.rake +0 -27
- data/tasks/post_load.rake +0 -39
- data/tasks/rdoc.rake +0 -50
- data/tasks/rubyforge.rake +0 -55
- data/tasks/setup.rb +0 -279
- data/tasks/spec.rake +0 -54
- data/tasks/svn.rake +0 -47
- data/tasks/test.rake +0 -40
data/TODO.txt
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
* replace Nio by Numerals
|
2
|
+
* next_after method
|
3
|
+
* research if the double rounding that's happening in nio_read_neutral may be a real problem
|
4
|
+
(the neutral is first rounded to decimal_digits_necessary, then to a FP datum)
|
5
|
+
* define small DSL to define formats
|
6
|
+
* Consider unifying the Format / Num nomenclature:
|
7
|
+
denormal vs. subnormal
|
8
|
+
min_normalized_value vs. minimum_normal
|
9
|
+
max_value vs. maximum_finite
|
10
|
+
min_value vs. minimum_nonzero
|
11
|
+
radix_min_exp(:scientific_significand) vs. emin
|
12
|
+
radix_max_exp(:scientific_significand) vs. emax
|
13
|
+
radix_min_exp(:integral_significand) vs. etiny
|
14
|
+
radix_max_exp(:integral_significand) vs. etop
|
15
|
+
significand vs. coefficient
|
16
|
+
minimum_normalized_integral_significand vs. minimum_normalized_coefficient
|
17
|
+
maximum_integral_significand vs. maximum_coefficient
|
18
|
+
radix_power -- int_radix_power
|
data/expand.rb
ADDED
@@ -0,0 +1,175 @@
|
|
1
|
+
require 'irb/ruby-lex'
|
2
|
+
require 'stringio'
|
3
|
+
|
4
|
+
class MimickIRB < RubyLex
|
5
|
+
attr_accessor :started
|
6
|
+
|
7
|
+
class Continue < StandardError; end
|
8
|
+
class Empty < StandardError; end
|
9
|
+
|
10
|
+
def initialize
|
11
|
+
super
|
12
|
+
set_input(StringIO.new)
|
13
|
+
end
|
14
|
+
|
15
|
+
def run(str,line_no=nil)
|
16
|
+
obj = nil
|
17
|
+
@io << str
|
18
|
+
@io.rewind
|
19
|
+
unless l = lex
|
20
|
+
raise Empty if @line == ''
|
21
|
+
else
|
22
|
+
case l.strip
|
23
|
+
when "reset"
|
24
|
+
@line = ""
|
25
|
+
when "time"
|
26
|
+
@line = "puts %{You started \#{IRBalike.started.since} ago.}"
|
27
|
+
else
|
28
|
+
@line << l << "\n"
|
29
|
+
if @ltype or @continue or @indent > 0
|
30
|
+
raise Continue
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
unless @line.empty?
|
35
|
+
obj = eval @line, TOPLEVEL_BINDING
|
36
|
+
end
|
37
|
+
@line = ''
|
38
|
+
#@line_no = line_no if line_no
|
39
|
+
@exp_line_no = line_no || @line_no
|
40
|
+
|
41
|
+
@indent = 0
|
42
|
+
@indent_stack = []
|
43
|
+
|
44
|
+
$stdout.rewind
|
45
|
+
output = $stdout.read
|
46
|
+
$stdout.truncate(0)
|
47
|
+
$stdout.rewind
|
48
|
+
[output, obj]
|
49
|
+
rescue Object => e
|
50
|
+
case e when Empty, Continue
|
51
|
+
else @line = ""
|
52
|
+
end
|
53
|
+
raise e
|
54
|
+
ensure
|
55
|
+
set_input(StringIO.new)
|
56
|
+
end
|
57
|
+
|
58
|
+
end
|
59
|
+
|
60
|
+
# TO DO: output of blocks is gathered and shown at the end of the block
|
61
|
+
# when lines in a block have ->, they should be rememberd, and when
|
62
|
+
# output is generated when closing the block, each output line should
|
63
|
+
# be appended to the in-block -> lines before showing lines after the block.
|
64
|
+
|
65
|
+
|
66
|
+
class ExampleExpander
|
67
|
+
def initialize(sep="# -> ", align=51)
|
68
|
+
@sep = sep
|
69
|
+
@align = align
|
70
|
+
@irb = MimickIRB.new
|
71
|
+
@output = ""
|
72
|
+
end
|
73
|
+
def add_line(line,line_num=nil)
|
74
|
+
line = line.chomp
|
75
|
+
line = $1 if /(.+)#{@sep}.*/.match line
|
76
|
+
$stdout = StringIO.new
|
77
|
+
begin
|
78
|
+
out,obj = @irb.run(line, line_num)
|
79
|
+
@output << line_output(line,out)
|
80
|
+
rescue MimickIRB::Empty
|
81
|
+
@output << line_output(line)
|
82
|
+
rescue MimickIRB::Continue
|
83
|
+
@output << line_output(line)
|
84
|
+
rescue Object => e
|
85
|
+
#msg = "Exception : #{e.message}"
|
86
|
+
msg = "Exception : #{e.class}"
|
87
|
+
# msg = "#{e.class}: #{e.message}"
|
88
|
+
@output << line_output(line,msg)
|
89
|
+
STDERR.puts "#{msg}\n"
|
90
|
+
end
|
91
|
+
$stdout = STDOUT
|
92
|
+
end
|
93
|
+
def output
|
94
|
+
@output
|
95
|
+
end
|
96
|
+
def clear
|
97
|
+
@output = ""
|
98
|
+
end
|
99
|
+
protected
|
100
|
+
def line_output(line,output=nil)
|
101
|
+
if output
|
102
|
+
output = output.chomp
|
103
|
+
output = nil if output.strip.empty?
|
104
|
+
end
|
105
|
+
out = line.dup
|
106
|
+
if output
|
107
|
+
line_size = line.size
|
108
|
+
output.split("\n").each do |out_line|
|
109
|
+
out << " "*[0,(@align-line_size)].max + @sep + out_line
|
110
|
+
out << "\n"
|
111
|
+
line_size = 0
|
112
|
+
end
|
113
|
+
end
|
114
|
+
out
|
115
|
+
end
|
116
|
+
end
|
117
|
+
|
118
|
+
|
119
|
+
def expand_text(txt,non_code_block_prefix=nil) # text with indented blocks of code
|
120
|
+
exex = ExampleExpander.new
|
121
|
+
indent = nil
|
122
|
+
|
123
|
+
txt_out = ""
|
124
|
+
|
125
|
+
line_num = 0
|
126
|
+
accum = ""
|
127
|
+
skip_until_blank = false
|
128
|
+
disabled = false
|
129
|
+
txt.split("\n").each do |line|
|
130
|
+
line_num += 1
|
131
|
+
code = false
|
132
|
+
line.chomp!
|
133
|
+
|
134
|
+
if skip_until_blank
|
135
|
+
if line.strip.empty?
|
136
|
+
skip_until_blank = false
|
137
|
+
end
|
138
|
+
else
|
139
|
+
|
140
|
+
unless line.strip.empty? || disabled
|
141
|
+
line_indent = /^\s*/.match(line)[0]
|
142
|
+
indent ||= line_indent
|
143
|
+
indent = line_indent if line_indent.size < indent.size
|
144
|
+
if line[line_indent.size,1]=='*'
|
145
|
+
inner_indent = /^\s*/.match(line[line_indent.size+1..-1])[0]
|
146
|
+
indent += '*'+inner_indent
|
147
|
+
else
|
148
|
+
if line_indent.size > indent.size
|
149
|
+
code = true
|
150
|
+
end
|
151
|
+
end
|
152
|
+
end
|
153
|
+
if code
|
154
|
+
exex.add_line line, line_num
|
155
|
+
line = exex.output.chomp
|
156
|
+
exex.clear
|
157
|
+
else
|
158
|
+
disabled = true if line[0,7]=="EXPAND-"
|
159
|
+
disabled = false if line[0,7]=="EXPAND+"
|
160
|
+
skip_until_blank = true if line[0,1]==non_code_block_prefix
|
161
|
+
end
|
162
|
+
end
|
163
|
+
txt_out << line + "\n"
|
164
|
+
end
|
165
|
+
txt_out
|
166
|
+
|
167
|
+
end
|
168
|
+
|
169
|
+
require 'rubygems'
|
170
|
+
|
171
|
+
require File.dirname(__FILE__) + '/lib/float-formats'
|
172
|
+
require File.dirname(__FILE__) + '/lib/float-formats/native.rb'
|
173
|
+
include Flt
|
174
|
+
|
175
|
+
puts expand_text(File.read(ARGV.shift),"[")
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'float-formats/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "float-formats"
|
8
|
+
spec.version = Flt::Frmts::VERSION
|
9
|
+
spec.authors = ["Javier Goizueta"]
|
10
|
+
spec.email = ["jgoizueta@gmail.com"]
|
11
|
+
spec.summary = %q{Floating-Point Formats}
|
12
|
+
spec.description = %q{Floating-Point Formats}
|
13
|
+
spec.homepage = "https://github.com/jgoizueta/float-formats"
|
14
|
+
spec.license = "MIT"
|
15
|
+
|
16
|
+
spec.files = `git ls-files -z`.split("\x0")
|
17
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
|
+
spec.require_paths = ["lib"]
|
20
|
+
|
21
|
+
spec.add_dependency 'flt', ">= 1.1.2"
|
22
|
+
spec.add_dependency 'nio', ">= 0.2.4"
|
23
|
+
|
24
|
+
spec.add_development_dependency "bundler", "~> 1.6"
|
25
|
+
spec.add_development_dependency "rake"
|
26
|
+
end
|
data/lib/float-formats/bytes.rb
CHANGED
@@ -112,6 +112,7 @@ class Bytes < DelegateClass(String)
|
|
112
112
|
@bytes = bytes.pack("C*")
|
113
113
|
else
|
114
114
|
@bytes = bytes.to_str
|
115
|
+
@bytes.force_encoding("BINARY") if @bytes.respond_to?(:force_encoding)
|
115
116
|
end
|
116
117
|
@bytes.force_encoding(Encoding::BINARY) if RUBY_VERSION>="1.9.0"
|
117
118
|
super @bytes
|
@@ -178,7 +179,7 @@ class Bytes < DelegateClass(String)
|
|
178
179
|
__setobj__ @bytes
|
179
180
|
self
|
180
181
|
end
|
181
|
-
|
182
|
+
|
182
183
|
def reverse_byte_bits
|
183
184
|
dup.reverse_byte_bits!
|
184
185
|
end
|
@@ -186,6 +187,7 @@ class Bytes < DelegateClass(String)
|
|
186
187
|
# Reverse the order of the nibbles in each byte.
|
187
188
|
def reverse_byte_nibbles!
|
188
189
|
w = ""
|
190
|
+
w.force_encoding("BINARY") if w.respond_to?(:force_encoding)
|
189
191
|
@bytes.each_byte do |b|
|
190
192
|
w << ((b >> 4)|((b&0xF)<<4))
|
191
193
|
end
|
@@ -200,6 +202,7 @@ class Bytes < DelegateClass(String)
|
|
200
202
|
# reverse the order of bytes in 16-bit words
|
201
203
|
def reverse_byte_pairs!
|
202
204
|
w = ""
|
205
|
+
w.force_encoding("BINARY") if w.respond_to?(:force_encoding)
|
203
206
|
(0...@bytes.size).step(2) do |i|
|
204
207
|
w << @bytes[i+1]
|
205
208
|
w << @bytes[i]
|
@@ -461,4 +464,4 @@ end
|
|
461
464
|
|
462
465
|
|
463
466
|
|
464
|
-
end
|
467
|
+
end
|
@@ -53,13 +53,13 @@ class FormatBase
|
|
53
53
|
(args.first.kind_of?(Integer) && args[1].kind_of?(Integer))
|
54
54
|
sign,significand,exponent,normalize = args
|
55
55
|
if normalize.nil?
|
56
|
-
if [nil,true,false].include?(exponent)
|
56
|
+
if [nil,true,false].include?(exponent)
|
57
57
|
normalize = exponent
|
58
58
|
exponent = significand
|
59
59
|
significand = sign.abs
|
60
|
-
sign = sign<0 ? -1 : +1
|
60
|
+
sign = sign<0 ? -1 : +1
|
61
61
|
end
|
62
|
-
end
|
62
|
+
end
|
63
63
|
@sign,@significand,@exponent = self.class.canonicalized(sign,significand,exponent,normalize)
|
64
64
|
else
|
65
65
|
v = form_class.nan
|
@@ -84,7 +84,7 @@ class FormatBase
|
|
84
84
|
raise "Too many arguments for FormatBase constructor" if args.size>1
|
85
85
|
when Symbol
|
86
86
|
if args.first.to_s[0..3]!='from'
|
87
|
-
args = ["from_#{args.first}".to_sym] + args[1..-1]
|
87
|
+
args = ["from_#{args.first}".to_sym] + args[1..-1]
|
88
88
|
end
|
89
89
|
v = form_class.send(*args)
|
90
90
|
end
|
@@ -826,19 +826,19 @@ class FormatBase
|
|
826
826
|
return_value s,f,e
|
827
827
|
|
828
828
|
end
|
829
|
-
|
829
|
+
|
830
830
|
def self.from(*args)
|
831
831
|
new(*args)
|
832
832
|
end
|
833
|
-
|
833
|
+
|
834
834
|
def self.from_bytes(b)
|
835
835
|
return_value(*unpack(b))
|
836
836
|
end
|
837
|
-
|
837
|
+
|
838
838
|
def self.from_hex(hex)
|
839
839
|
from_bytes Bytes.from_hex(hex)
|
840
840
|
end
|
841
|
-
|
841
|
+
|
842
842
|
def self.from_number(v, mode=:approx)
|
843
843
|
if v.is_a?(Flt::Num) && v.num_class.radix==self.radix
|
844
844
|
self.num(v)
|
@@ -847,11 +847,11 @@ class FormatBase
|
|
847
847
|
nio_read(v.nio_write(fmt),fmt)
|
848
848
|
end
|
849
849
|
end
|
850
|
-
|
850
|
+
|
851
851
|
def self.from_text(txt, fmt=Nio::Fmt.default) # ?
|
852
852
|
nio_read(txt,fmt)
|
853
853
|
end
|
854
|
-
|
854
|
+
|
855
855
|
def self.join(sign,significand,exponent)
|
856
856
|
self.new sign,significand,exponent
|
857
857
|
end
|
@@ -871,7 +871,7 @@ class FormatBase
|
|
871
871
|
end
|
872
872
|
from_bytes v
|
873
873
|
end
|
874
|
-
|
874
|
+
|
875
875
|
# Defines a floating-point number from a text representation of the
|
876
876
|
# encoded integral value in a given base.
|
877
877
|
# Returns a Value.
|
@@ -909,7 +909,7 @@ class FormatBase
|
|
909
909
|
end
|
910
910
|
h
|
911
911
|
end
|
912
|
-
|
912
|
+
|
913
913
|
# Produce an encoded floating point value using hash of the internal field values.
|
914
914
|
# Returns a Value.
|
915
915
|
def self.pack_fields_hash(h)
|
@@ -1947,4 +1947,3 @@ end
|
|
1947
1947
|
|
1948
1948
|
|
1949
1949
|
end
|
1950
|
-
|
data/test/test_arithmetic.rb
CHANGED
@@ -1,11 +1,17 @@
|
|
1
|
-
require File.dirname(__FILE__)
|
1
|
+
require File.expand_path(File.join(File.dirname(__FILE__),'test_helper.rb'))
|
2
2
|
|
3
3
|
include Flt
|
4
4
|
|
5
5
|
class TestArithmetic < Test::Unit::TestCase
|
6
6
|
|
7
7
|
def setup
|
8
|
-
@all_types = Flt.constants.map{
|
8
|
+
@all_types = Flt.constants.map { |constant|
|
9
|
+
Flt.const_get(constant)
|
10
|
+
}.select{ |cls|
|
11
|
+
cls.class == Class &&
|
12
|
+
cls < Flt::FormatBase &&
|
13
|
+
!cls.to_s.downcase.include?('format')
|
14
|
+
}
|
9
15
|
end
|
10
16
|
|
11
17
|
def test_precision
|
data/test/test_bytes.rb
CHANGED
data/test/test_float_formats.rb
CHANGED
data/test/test_helper.rb
CHANGED
data/test/test_native-float.rb
CHANGED
metadata
CHANGED
@@ -1,103 +1,95 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: float-formats
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
|
-
authors:
|
6
|
+
authors:
|
7
7
|
- Javier Goizueta
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
dependencies:
|
15
|
-
- !ruby/object:Gem::Dependency
|
11
|
+
date: 2015-03-31 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
16
14
|
name: flt
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 1.1.2
|
17
20
|
type: :runtime
|
18
|
-
|
19
|
-
version_requirements: !ruby/object:Gem::Requirement
|
20
|
-
requirements:
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
21
24
|
- - ">="
|
22
|
-
- !ruby/object:Gem::Version
|
23
|
-
version: 1.
|
24
|
-
|
25
|
-
- !ruby/object:Gem::Dependency
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 1.1.2
|
27
|
+
- !ruby/object:Gem::Dependency
|
26
28
|
name: nio
|
27
|
-
|
28
|
-
|
29
|
-
version_requirements: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
31
|
- - ">="
|
32
|
-
- !ruby/object:Gem::Version
|
32
|
+
- !ruby/object:Gem::Version
|
33
33
|
version: 0.2.4
|
34
|
-
version:
|
35
|
-
- !ruby/object:Gem::Dependency
|
36
|
-
name: nio
|
37
34
|
type: :runtime
|
38
|
-
|
39
|
-
version_requirements: !ruby/object:Gem::Requirement
|
40
|
-
requirements:
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
41
38
|
- - ">="
|
42
|
-
- !ruby/object:Gem::Version
|
43
|
-
version: 0.2.
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 0.2.4
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: bundler
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '1.6'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '1.6'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rake
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
51
59
|
- - ">="
|
52
|
-
- !ruby/object:Gem::Version
|
53
|
-
version:
|
54
|
-
version:
|
55
|
-
- !ruby/object:Gem::Dependency
|
56
|
-
name: bones
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
57
62
|
type: :development
|
58
|
-
|
59
|
-
version_requirements: !ruby/object:Gem::Requirement
|
60
|
-
requirements:
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
61
66
|
- - ">="
|
62
|
-
- !ruby/object:Gem::Version
|
63
|
-
version:
|
64
|
-
version:
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
65
69
|
description: Floating-Point Formats
|
66
|
-
email:
|
70
|
+
email:
|
71
|
+
- jgoizueta@gmail.com
|
67
72
|
executables: []
|
68
|
-
|
69
73
|
extensions: []
|
70
|
-
|
71
|
-
|
72
|
-
-
|
73
|
-
-
|
74
|
-
-
|
75
|
-
files:
|
74
|
+
extra_rdoc_files: []
|
75
|
+
files:
|
76
|
+
- ".gitignore"
|
77
|
+
- Gemfile
|
78
|
+
- Gemfile.lock
|
76
79
|
- History.txt
|
77
|
-
-
|
78
|
-
-
|
79
|
-
- README.txt
|
80
|
+
- LICENSE
|
81
|
+
- README.md
|
80
82
|
- Rakefile
|
83
|
+
- TODO.txt
|
84
|
+
- expand.rb
|
85
|
+
- float-formats.gemspec
|
81
86
|
- lib/float-formats.rb
|
82
87
|
- lib/float-formats/bytes.rb
|
83
88
|
- lib/float-formats/classes.rb
|
84
89
|
- lib/float-formats/formats.rb
|
85
90
|
- lib/float-formats/native.rb
|
86
91
|
- lib/float-formats/version.rb
|
87
|
-
-
|
88
|
-
- tasks/ann.rake
|
89
|
-
- tasks/bones.rake
|
90
|
-
- tasks/gem.rake
|
91
|
-
- tasks/git.rake
|
92
|
-
- tasks/manifest.rake
|
93
|
-
- tasks/notes.rake
|
94
|
-
- tasks/post_load.rake
|
95
|
-
- tasks/rdoc.rake
|
96
|
-
- tasks/rubyforge.rake
|
97
|
-
- tasks/setup.rb
|
98
|
-
- tasks/spec.rake
|
99
|
-
- tasks/svn.rake
|
100
|
-
- tasks/test.rake
|
92
|
+
- rdoc/Flt.html
|
101
93
|
- test/gen_test_data.rb
|
102
94
|
- test/test_arithmetic.rb
|
103
95
|
- test/test_bytes.rb
|
@@ -105,46 +97,35 @@ files:
|
|
105
97
|
- test/test_float_formats.rb
|
106
98
|
- test/test_helper.rb
|
107
99
|
- test/test_native-float.rb
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
100
|
+
homepage: https://github.com/jgoizueta/float-formats
|
101
|
+
licenses:
|
102
|
+
- MIT
|
103
|
+
metadata: {}
|
112
104
|
post_install_message:
|
113
|
-
rdoc_options:
|
114
|
-
|
115
|
-
- README.txt
|
116
|
-
- --title
|
117
|
-
- Float-Formats Documentation
|
118
|
-
- --opname
|
119
|
-
- index.html
|
120
|
-
- --line-numbers
|
121
|
-
- --inline-source
|
122
|
-
- --main
|
123
|
-
- README.txt
|
124
|
-
require_paths:
|
105
|
+
rdoc_options: []
|
106
|
+
require_paths:
|
125
107
|
- lib
|
126
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
127
|
-
requirements:
|
108
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
109
|
+
requirements:
|
128
110
|
- - ">="
|
129
|
-
- !ruby/object:Gem::Version
|
130
|
-
version:
|
131
|
-
|
132
|
-
|
133
|
-
requirements:
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
version: '0'
|
113
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
134
115
|
- - ">="
|
135
|
-
- !ruby/object:Gem::Version
|
136
|
-
version:
|
137
|
-
version:
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
138
118
|
requirements: []
|
139
|
-
|
140
|
-
|
141
|
-
rubygems_version: 1.3.3
|
119
|
+
rubyforge_project:
|
120
|
+
rubygems_version: 2.2.2
|
142
121
|
signing_key:
|
143
|
-
specification_version:
|
122
|
+
specification_version: 4
|
144
123
|
summary: Floating-Point Formats
|
145
|
-
test_files:
|
124
|
+
test_files:
|
125
|
+
- test/gen_test_data.rb
|
146
126
|
- test/test_arithmetic.rb
|
147
127
|
- test/test_bytes.rb
|
128
|
+
- test/test_data.yaml
|
148
129
|
- test/test_float_formats.rb
|
149
130
|
- test/test_helper.rb
|
150
131
|
- test/test_native-float.rb
|