ruby-mpfr 0.0.10 → 0.0.11
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.
- data/.gemtest +0 -0
- data/ext/gmp/mpfr/extconf.rb +14 -0
- data/ext/mpfr/extconf.rb +14 -0
- data/ext/mpfr/ruby_mpfr.c +38 -18
- data/ext/mpfr/ruby_mpfr.h +3 -0
- data/ext/mpfr_matrix/mpfr/extconf.rb +14 -0
- data/ext/mpfr_matrix/mpfr/ruby_mpfr.h +4 -0
- data/ext/mpfr_matrix/mpfr/ruby_mpfr_matrix.c +11 -67
- data/lib/mpfr/version.rb +1 -1
- data/spec/mpfr/allocate_spec.rb +19 -9
- metadata +7 -33
data/.gemtest
ADDED
File without changes
|
data/ext/gmp/mpfr/extconf.rb
CHANGED
@@ -1,5 +1,19 @@
|
|
1
1
|
require 'mkmf'
|
2
2
|
|
3
|
+
i = 0
|
4
|
+
while i < ARGV.size
|
5
|
+
case ARGV[i]
|
6
|
+
when '--ldflags'
|
7
|
+
if args = ARGV[i+1]
|
8
|
+
i += 1
|
9
|
+
$LDFLAGS += " #{args}"
|
10
|
+
end
|
11
|
+
else
|
12
|
+
raise "Invalid option: #{ARGV[i]}"
|
13
|
+
end
|
14
|
+
i += 1
|
15
|
+
end
|
16
|
+
|
3
17
|
$CFLAGS += " -Wall"
|
4
18
|
|
5
19
|
REQUIRE_VERSION = 3
|
data/ext/mpfr/extconf.rb
CHANGED
@@ -1,5 +1,19 @@
|
|
1
1
|
require 'mkmf'
|
2
2
|
|
3
|
+
i = 0
|
4
|
+
while i < ARGV.size
|
5
|
+
case ARGV[i]
|
6
|
+
when '--ldflags'
|
7
|
+
if args = ARGV[i+1]
|
8
|
+
i += 1
|
9
|
+
$LDFLAGS += " #{args}"
|
10
|
+
end
|
11
|
+
else
|
12
|
+
raise "Invalid option: #{ARGV[i]}"
|
13
|
+
end
|
14
|
+
i += 1
|
15
|
+
end
|
16
|
+
|
3
17
|
$CFLAGS += " -Wall"
|
4
18
|
|
5
19
|
REQUIRE_VERSION = 3
|
data/ext/mpfr/ruby_mpfr.c
CHANGED
@@ -34,8 +34,7 @@ mp_rnd_t r_mpfr_rnd_from_value(VALUE rnd)
|
|
34
34
|
} else if (rnd_id == id_rnda) {
|
35
35
|
return MPFR_RNDA;
|
36
36
|
}
|
37
|
-
rb_raise(rb_eArgError, "Argument must be
|
38
|
-
/* rb_raise(rb_eArgError, "Argument must be Rounding Mode: %s", rb_class2name(rnd)); */
|
37
|
+
rb_raise(rb_eArgError, "Argument must be a constant meaning rounding mode, but the objects is %s.", rb_obj_classname(rnd));
|
39
38
|
}
|
40
39
|
|
41
40
|
/* If argc equals max, convert last argument to rounding mode number. */
|
@@ -407,7 +406,7 @@ void r_mpfr_set_robj(MPFR *ptr, VALUE obj, mp_rnd_t rnd)
|
|
407
406
|
r_mpfr_get_struct(ptr_obj, tmp);
|
408
407
|
mpfr_set(ptr, ptr_obj, rnd);
|
409
408
|
} else {
|
410
|
-
rb_raise(rb_eArgError, "Invalid class %s for making MPFR.",
|
409
|
+
rb_raise(rb_eArgError, "Invalid class %s for making MPFR.", rb_obj_classname(obj));
|
411
410
|
}
|
412
411
|
break;
|
413
412
|
}
|
@@ -419,7 +418,7 @@ VALUE r_mpfr_robj_to_mpfr(VALUE obj, int argc, VALUE *argv)
|
|
419
418
|
if (rb_respond_to(obj, to_fr)) {
|
420
419
|
return rb_funcall2(obj, to_fr, argc, argv);
|
421
420
|
}
|
422
|
-
rb_raise(rb_eArgError, "The object of %s can not been converted to MPFR.",
|
421
|
+
rb_raise(rb_eArgError, "The object of %s can not been converted to MPFR.", rb_obj_classname(obj));
|
423
422
|
}
|
424
423
|
|
425
424
|
/* If obj is MPFR instance, then this method returns obj. */
|
@@ -721,7 +720,9 @@ static VALUE r_mpfr_to_strf(VALUE self, VALUE format_str)
|
|
721
720
|
r_mpfr_get_struct(ptr_self, self);
|
722
721
|
char *format = StringValuePtr(format_str);
|
723
722
|
char *ret_str;
|
724
|
-
mpfr_asprintf(&ret_str, format, ptr_self)
|
723
|
+
if (!mpfr_asprintf(&ret_str, format, ptr_self)) {
|
724
|
+
rb_raise(rb_eFatal, "Can not allocate a string by mpfr_asprintf.");
|
725
|
+
}
|
725
726
|
VALUE ret_val = rb_str_new2(ret_str);
|
726
727
|
mpfr_free_str(ret_str);
|
727
728
|
return ret_val;
|
@@ -733,7 +734,9 @@ static VALUE r_mpfr_to_s(VALUE self)
|
|
733
734
|
MPFR *ptr_self;
|
734
735
|
r_mpfr_get_struct(ptr_self, self);
|
735
736
|
char *ret_str;
|
736
|
-
mpfr_asprintf(&ret_str, "%.Re", ptr_self)
|
737
|
+
if (!mpfr_asprintf(&ret_str, "%.Re", ptr_self)) {
|
738
|
+
rb_raise(rb_eFatal, "Can not allocate a string by mpfr_asprintf.");
|
739
|
+
}
|
737
740
|
VALUE ret_val = rb_str_new2(ret_str);
|
738
741
|
mpfr_free_str(ret_str);
|
739
742
|
return ret_val;
|
@@ -745,7 +748,10 @@ static VALUE r_mpfr_inspect(VALUE self)
|
|
745
748
|
MPFR *ptr_s;
|
746
749
|
r_mpfr_get_struct(ptr_s, self);
|
747
750
|
char *ret_str;
|
748
|
-
mpfr_asprintf(&ret_str, "#<MPFR:%lx,'%0.Re',%d>", NUM2LONG(rb_funcall(self, object_id, 0)),
|
751
|
+
if (!mpfr_asprintf(&ret_str, "#<MPFR:%lx,'%0.Re',%d>", NUM2LONG(rb_funcall(self, object_id, 0)),
|
752
|
+
ptr_s, mpfr_get_prec(ptr_s))) {
|
753
|
+
rb_raise(rb_eFatal, "Can not allocate a string by mpfr_asprintf.");
|
754
|
+
}
|
749
755
|
VALUE ret_val = rb_str_new2(ret_str);
|
750
756
|
mpfr_free_str(ret_str);
|
751
757
|
return ret_val;
|
@@ -2761,17 +2767,17 @@ static VALUE r_mpfr_buildopt_decimal_p(VALUE self)
|
|
2761
2767
|
return mpfr_buildopt_decimal_p() == 0 ? Qnil : Qtrue;
|
2762
2768
|
}
|
2763
2769
|
|
2764
|
-
|
2770
|
+
char *r_mpfr_dump_to_string(MPFR *ptr_s)
|
2765
2771
|
{
|
2766
|
-
MPFR *ptr_s;
|
2767
|
-
r_mpfr_get_struct(ptr_s, self);
|
2768
2772
|
char *ret_str;
|
2769
2773
|
if (mpfr_regular_p(ptr_s)) {
|
2770
2774
|
mpz_t m;
|
2771
2775
|
mp_exp_t e;
|
2772
2776
|
mpz_init(m);
|
2773
2777
|
e = mpfr_get_z_2exp(m, ptr_s);
|
2774
|
-
mpfr_asprintf(&ret_str, "%c%ld\t%ld\t%Zd", MPFR_DUMP_NUMBER, mpfr_get_prec(ptr_s), (long int)e, m)
|
2778
|
+
if (!mpfr_asprintf(&ret_str, "%c%ld\t%ld\t%Zd", MPFR_DUMP_NUMBER, mpfr_get_prec(ptr_s), (long int)e, m)) {
|
2779
|
+
rb_raise(rb_eFatal, "Can not allocate a string by mpfr_asprintf.");
|
2780
|
+
}
|
2775
2781
|
mpz_clear(m);
|
2776
2782
|
} else {
|
2777
2783
|
char type;
|
@@ -2788,21 +2794,27 @@ static VALUE r_mpfr_marshal_dump(VALUE self)
|
|
2788
2794
|
} else {
|
2789
2795
|
type = MPFR_DUMP_MINF;
|
2790
2796
|
}
|
2791
|
-
mpfr_asprintf(&ret_str, "%c%ld", type, mpfr_get_prec(ptr_s))
|
2797
|
+
if (!mpfr_asprintf(&ret_str, "%c%ld", type, mpfr_get_prec(ptr_s))) {
|
2798
|
+
rb_raise(rb_eFatal, "Can not allocate a string by mpfr_asprintf.");
|
2799
|
+
}
|
2792
2800
|
}
|
2801
|
+
return ret_str;
|
2802
|
+
}
|
2803
|
+
|
2804
|
+
static VALUE r_mpfr_marshal_dump(VALUE self)
|
2805
|
+
{
|
2806
|
+
MPFR *ptr_s;
|
2807
|
+
r_mpfr_get_struct(ptr_s, self);
|
2808
|
+
char *ret_str = r_mpfr_dump_to_string(ptr_s);
|
2793
2809
|
VALUE ret_val = rb_str_new2(ret_str);
|
2794
2810
|
mpfr_free_str(ret_str);
|
2795
2811
|
return ret_val;
|
2796
2812
|
}
|
2797
2813
|
|
2798
|
-
|
2814
|
+
void r_mpfr_load_string(MPFR *ptr_s, const char *dump)
|
2799
2815
|
{
|
2800
2816
|
long int prec;
|
2801
|
-
|
2802
|
-
r_mpfr_get_struct(ptr_s, self);
|
2803
|
-
Check_Type(dump_string, T_STRING);
|
2804
|
-
char *dump, type;
|
2805
|
-
dump = RSTRING_PTR(dump_string);
|
2817
|
+
char type;
|
2806
2818
|
type = dump[0];
|
2807
2819
|
dump++;
|
2808
2820
|
if (type == MPFR_DUMP_NUMBER) {
|
@@ -2839,6 +2851,14 @@ static VALUE r_mpfr_marshal_load(VALUE self, VALUE dump_string)
|
|
2839
2851
|
rb_raise(rb_eArgError, "Invalid dumped data for marshal_load.");
|
2840
2852
|
}
|
2841
2853
|
}
|
2854
|
+
}
|
2855
|
+
|
2856
|
+
static VALUE r_mpfr_marshal_load(VALUE self, VALUE dump_string)
|
2857
|
+
{
|
2858
|
+
MPFR *ptr_s;
|
2859
|
+
r_mpfr_get_struct(ptr_s, self);
|
2860
|
+
Check_Type(dump_string, T_STRING);
|
2861
|
+
r_mpfr_load_string(ptr_s, RSTRING_PTR(dump_string));
|
2842
2862
|
return self;
|
2843
2863
|
}
|
2844
2864
|
|
data/ext/mpfr/ruby_mpfr.h
CHANGED
@@ -37,5 +37,8 @@ mp_rnd_t r_mpfr_rnd_from_optional_argument(int min, int max, int argc, VALUE *ar
|
|
37
37
|
mp_rnd_t r_mpfr_prec_from_optional_argument(int min, int max, int argc, VALUE *argv);
|
38
38
|
void r_mpfr_get_rnd_prec_from_optional_arguments(mp_rnd_t *rnd, mp_prec_t *prec, int min, int max, int argc, VALUE *argv);
|
39
39
|
|
40
|
+
char *r_mpfr_dump_to_string(MPFR *ptr_s);
|
41
|
+
void r_mpfr_load_string(MPFR *ptr_s, const char *dump);
|
42
|
+
|
40
43
|
#endif /* _RUBY_MPFR_H_ */
|
41
44
|
|
@@ -1,5 +1,19 @@
|
|
1
1
|
require 'mkmf'
|
2
2
|
|
3
|
+
i = 0
|
4
|
+
while i < ARGV.size
|
5
|
+
case ARGV[i]
|
6
|
+
when '--ldflags'
|
7
|
+
if args = ARGV[i+1]
|
8
|
+
i += 1
|
9
|
+
$LDFLAGS += " #{args}"
|
10
|
+
end
|
11
|
+
else
|
12
|
+
raise "Invalid option: #{ARGV[i]}"
|
13
|
+
end
|
14
|
+
i += 1
|
15
|
+
end
|
16
|
+
|
3
17
|
$CFLAGS += " -Wall"
|
4
18
|
|
5
19
|
REQUIRE_VERSION = 3
|
@@ -30,11 +30,15 @@ VALUE r_mpfr_make_new_fr_obj(MPFR *ptr);
|
|
30
30
|
VALUE r_mpfr_make_new_fr_obj2(MPFR *ptr, int prec);
|
31
31
|
VALUE r_mpfr_new_fr_obj(VALUE obj);
|
32
32
|
void r_mpfr_set_robj(MPFR *ptr, VALUE obj, mp_rnd_t rnd);
|
33
|
+
VALUE r_mpfr_robj_to_mpfr(VALUE obj, int argc, VALUE *argv);
|
33
34
|
|
34
35
|
mp_rnd_t r_mpfr_rnd_from_value(VALUE rnd);
|
35
36
|
mp_rnd_t r_mpfr_rnd_from_optional_argument(int min, int max, int argc, VALUE *argv);
|
36
37
|
mp_rnd_t r_mpfr_prec_from_optional_argument(int min, int max, int argc, VALUE *argv);
|
37
38
|
void r_mpfr_get_rnd_prec_from_optional_arguments(mp_rnd_t *rnd, mp_prec_t *prec, int min, int max, int argc, VALUE *argv);
|
38
39
|
|
40
|
+
char *r_mpfr_dump_to_string(MPFR *ptr_s);
|
41
|
+
void r_mpfr_load_string(MPFR *ptr_s, const char *dump);
|
42
|
+
|
39
43
|
#endif /* _RUBY_MPFR_H_ */
|
40
44
|
|
@@ -196,43 +196,19 @@ static VALUE r_mpfr_matrix_marshal_dump(VALUE self)
|
|
196
196
|
{
|
197
197
|
MPFRMatrix *ptr;
|
198
198
|
r_mpfr_get_matrix_struct(ptr, self);
|
199
|
-
mpz_t m;
|
200
|
-
mp_exp_t e;
|
201
|
-
mpz_init(m);
|
202
199
|
int i;
|
203
|
-
|
204
|
-
char *tmp_str, type;
|
200
|
+
char *tmp_str;
|
205
201
|
VALUE ret_ary;
|
206
202
|
ret_ary = rb_ary_new();
|
207
203
|
rb_ary_push(ret_ary, INT2FIX(ptr->row));
|
208
204
|
rb_ary_push(ret_ary, INT2FIX(ptr->column));
|
209
205
|
|
210
206
|
for (i = 0; i < ptr->size; i++) {
|
211
|
-
|
212
|
-
if (mpfr_regular_p(ptr_el)) {
|
213
|
-
e = mpfr_get_z_2exp(m, ptr_el);
|
214
|
-
mpfr_asprintf(&tmp_str, "%c%ld\t%ld\t%Zd", MPFR_DUMP_NUMBER, mpfr_get_prec(ptr_el), (long int)e, m);
|
215
|
-
} else {
|
216
|
-
if (mpfr_zero_p(ptr_el)) {
|
217
|
-
if (mpfr_sgn(ptr_el) >= 0) {
|
218
|
-
type = MPFR_DUMP_PZERO;
|
219
|
-
} else {
|
220
|
-
type = MPFR_DUMP_MZERO;
|
221
|
-
}
|
222
|
-
} else if (mpfr_nan_p(ptr_el)) {
|
223
|
-
type = MPFR_DUMP_NAN;
|
224
|
-
} else if (mpfr_sgn(ptr_el) >= 0) {
|
225
|
-
type = MPFR_DUMP_PINF;
|
226
|
-
} else {
|
227
|
-
type = MPFR_DUMP_MINF;
|
228
|
-
}
|
229
|
-
mpfr_asprintf(&tmp_str, "%c%ld", type, mpfr_get_prec(ptr_el));
|
230
|
-
}
|
207
|
+
tmp_str = r_mpfr_dump_to_string(ptr->data + i);
|
231
208
|
rb_ary_push(ret_ary, rb_str_new2(tmp_str));
|
232
209
|
mpfr_free_str(tmp_str);
|
233
210
|
}
|
234
211
|
|
235
|
-
mpz_clear(m);
|
236
212
|
return ret_ary;
|
237
213
|
}
|
238
214
|
|
@@ -245,51 +221,15 @@ static VALUE r_mpfr_matrix_marshal_load(VALUE self, VALUE dump_ary)
|
|
245
221
|
ptr->column = NUM2INT(rb_ary_entry(dump_ary, 1));
|
246
222
|
ptr->size = ptr->row * ptr->column;
|
247
223
|
ptr->data = ALLOC_N(MPFR, ptr->size);
|
248
|
-
int i
|
249
|
-
|
250
|
-
MPFR *ptr_el;
|
251
|
-
char *dump, type;
|
224
|
+
int i;
|
225
|
+
char *dump;
|
252
226
|
VALUE dump_element;
|
253
|
-
mpz_t m;
|
254
227
|
|
255
228
|
for(i = 0; i < ptr->size; i++){
|
256
229
|
dump_element = rb_ary_entry(dump_ary, i + 2);
|
257
|
-
ptr_el = ptr->data + i;
|
258
230
|
Check_Type(dump_element, T_STRING);
|
259
231
|
dump = RSTRING_PTR(dump_element);
|
260
|
-
|
261
|
-
dump++;
|
262
|
-
if (type == MPFR_DUMP_NUMBER) {
|
263
|
-
mpz_init(m);
|
264
|
-
sscanf(dump, "%ld\t%ld\t", &prec, &e);
|
265
|
-
j = 0;
|
266
|
-
while (j < 2) {
|
267
|
-
if (dump[0] == '\t') {
|
268
|
-
j++;
|
269
|
-
}
|
270
|
-
dump++;
|
271
|
-
}
|
272
|
-
mpz_set_str(m, dump, 10);
|
273
|
-
mpfr_init2(ptr_el, prec);
|
274
|
-
mpfr_set_z_2exp(ptr_el, m, e, MPFR_RNDN);
|
275
|
-
mpz_clear(m);
|
276
|
-
} else {
|
277
|
-
sscanf(dump, "%ld", &prec);
|
278
|
-
mpfr_init2(ptr_el, prec);
|
279
|
-
if (type == MPFR_DUMP_PZERO) {
|
280
|
-
mpfr_set_zero(ptr_el, +1);
|
281
|
-
} else if (type == MPFR_DUMP_MZERO){
|
282
|
-
mpfr_set_zero(ptr_el, -1);
|
283
|
-
} else if (type == MPFR_DUMP_NAN) {
|
284
|
-
mpfr_set_nan(ptr_el);
|
285
|
-
} else if (type == MPFR_DUMP_PINF) {
|
286
|
-
mpfr_set_inf(ptr_el, +1);
|
287
|
-
} else if (type == MPFR_DUMP_MINF) {
|
288
|
-
mpfr_set_inf(ptr_el, -1);
|
289
|
-
} else {
|
290
|
-
rb_raise(rb_eArgError, "Invalid dumped data for marshal_load.");
|
291
|
-
}
|
292
|
-
}
|
232
|
+
r_mpfr_load_string(ptr->data + i, dump);
|
293
233
|
}
|
294
234
|
return self;
|
295
235
|
}
|
@@ -521,7 +461,9 @@ static VALUE r_mpfr_matrix_str_ary(VALUE self, VALUE format_str)
|
|
521
461
|
VALUE ret_val[ptr_self->size];
|
522
462
|
int i;
|
523
463
|
for (i = 0; i < ptr_self->size; i++) {
|
524
|
-
mpfr_asprintf(&tmp_str, format, ptr_self->data + i)
|
464
|
+
if (!mpfr_asprintf(&tmp_str, format, ptr_self->data + i)) {
|
465
|
+
rb_raise(rb_eFatal, "Can not allocate a string by mpfr_asprintf.");
|
466
|
+
}
|
525
467
|
ret_val[i] = rb_str_new2(tmp_str);
|
526
468
|
mpfr_free_str(tmp_str);
|
527
469
|
}
|
@@ -541,7 +483,9 @@ static VALUE r_mpfr_matrix_str_ary2(VALUE self, VALUE format_str)
|
|
541
483
|
}
|
542
484
|
for (i = 0; i < ptr_self->size; i += ptr_self->row) {
|
543
485
|
for (j = 0; j < ptr_self->row; j++) {
|
544
|
-
mpfr_asprintf(&tmp_str, format, ptr_self->data + i + j)
|
486
|
+
if (!mpfr_asprintf(&tmp_str, format, ptr_self->data + i + j)) {
|
487
|
+
rb_raise(rb_eFatal, "Can not allocate a string by mpfr_asprintf.");
|
488
|
+
}
|
545
489
|
rb_ary_push(ary[j], rb_str_new2(tmp_str));
|
546
490
|
mpfr_free_str(tmp_str);
|
547
491
|
}
|
data/lib/mpfr/version.rb
CHANGED
@@ -1 +1 @@
|
|
1
|
-
RUBY_MPFR_VERSION = '0.0.
|
1
|
+
RUBY_MPFR_VERSION = '0.0.11'
|
data/spec/mpfr/allocate_spec.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__)) + '/spec_helper.rb'
|
2
2
|
|
3
|
-
describe MPFR, 'when allocating objects from
|
3
|
+
describe MPFR, 'when allocating objects from numbers' do
|
4
4
|
it "should equal bignum" do
|
5
5
|
MPFR.set_default_prec(100)
|
6
6
|
num = 1
|
@@ -23,6 +23,17 @@ describe MPFR, 'when allocating objects from integer' do
|
|
23
23
|
|
24
24
|
end
|
25
25
|
|
26
|
+
it "should equal float" do
|
27
|
+
MPFR.set_default_prec(256)
|
28
|
+
error = MPFR.new('1.0e-10')
|
29
|
+
GenerateNumber.float(100) do |f|
|
30
|
+
MPFR.new(f).should == f
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
end
|
35
|
+
|
36
|
+
describe MPFR, 'when allocating from objects that is not numbers' do
|
26
37
|
it "should allocate from string" do
|
27
38
|
MPFR.set_default_prec(53)
|
28
39
|
for i in 0..1000
|
@@ -30,14 +41,15 @@ describe MPFR, 'when allocating objects from integer' do
|
|
30
41
|
end
|
31
42
|
end
|
32
43
|
|
33
|
-
it "should
|
34
|
-
MPFR.
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
end
|
44
|
+
it "should raise error" do
|
45
|
+
lambda { MPFR.new(nil) }.should raise_error
|
46
|
+
lambda { MPFR.new(false) }.should raise_error
|
47
|
+
lambda { MPFR.new([]) }.should raise_error
|
48
|
+
lambda { MPFR.new(:sym) }.should raise_error
|
39
49
|
end
|
50
|
+
end
|
40
51
|
|
52
|
+
describe MPFR, 'when creating new objects' do
|
41
53
|
it "should duplicate" do
|
42
54
|
MPFR.set_default_prec(141)
|
43
55
|
for i in 0..1000
|
@@ -68,6 +80,4 @@ describe MPFR, 'when allocating objects from integer' do
|
|
68
80
|
b.should == c
|
69
81
|
end
|
70
82
|
end
|
71
|
-
|
72
83
|
end
|
73
|
-
|
metadata
CHANGED
@@ -1,12 +1,8 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby-mpfr
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
prerelease:
|
5
|
-
|
6
|
-
- 0
|
7
|
-
- 0
|
8
|
-
- 10
|
9
|
-
version: 0.0.10
|
4
|
+
prerelease:
|
5
|
+
version: 0.0.11
|
10
6
|
platform: ruby
|
11
7
|
authors:
|
12
8
|
- Takayuki YAMAGUCHI
|
@@ -14,39 +10,20 @@ autorequire:
|
|
14
10
|
bindir: bin
|
15
11
|
cert_chain: []
|
16
12
|
|
17
|
-
date:
|
13
|
+
date: 2011-02-26 00:00:00 +09:00
|
18
14
|
default_executable:
|
19
15
|
dependencies:
|
20
16
|
- !ruby/object:Gem::Dependency
|
21
|
-
name:
|
17
|
+
name: hoe
|
22
18
|
prerelease: false
|
23
19
|
requirement: &id001 !ruby/object:Gem::Requirement
|
24
20
|
none: false
|
25
21
|
requirements:
|
26
22
|
- - ">="
|
27
23
|
- !ruby/object:Gem::Version
|
28
|
-
|
29
|
-
- 2
|
30
|
-
- 0
|
31
|
-
- 4
|
32
|
-
version: 2.0.4
|
24
|
+
version: 2.9.1
|
33
25
|
type: :development
|
34
26
|
version_requirements: *id001
|
35
|
-
- !ruby/object:Gem::Dependency
|
36
|
-
name: hoe
|
37
|
-
prerelease: false
|
38
|
-
requirement: &id002 !ruby/object:Gem::Requirement
|
39
|
-
none: false
|
40
|
-
requirements:
|
41
|
-
- - ">="
|
42
|
-
- !ruby/object:Gem::Version
|
43
|
-
segments:
|
44
|
-
- 2
|
45
|
-
- 7
|
46
|
-
- 0
|
47
|
-
version: 2.7.0
|
48
|
-
type: :development
|
49
|
-
version_requirements: *id002
|
50
27
|
description: |-
|
51
28
|
ruby-mpfr is a library to use MPFR[http://www.mpfr.org/] which is a C library for
|
52
29
|
multiple-precision floating-point computations.
|
@@ -127,6 +104,7 @@ files:
|
|
127
104
|
- spec/mpfr_matrix/mpfr_square_matrix_spec.rb
|
128
105
|
- spec/mpfr_matrix/spec_helper.rb
|
129
106
|
- tasks/extconf.rake
|
107
|
+
- .gemtest
|
130
108
|
has_rdoc: true
|
131
109
|
homepage: http://rubyforge.org/projects/ruby-mpfr/
|
132
110
|
licenses: []
|
@@ -142,21 +120,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
142
120
|
requirements:
|
143
121
|
- - ">="
|
144
122
|
- !ruby/object:Gem::Version
|
145
|
-
segments:
|
146
|
-
- 0
|
147
123
|
version: "0"
|
148
124
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
149
125
|
none: false
|
150
126
|
requirements:
|
151
127
|
- - ">="
|
152
128
|
- !ruby/object:Gem::Version
|
153
|
-
segments:
|
154
|
-
- 0
|
155
129
|
version: "0"
|
156
130
|
requirements: []
|
157
131
|
|
158
132
|
rubyforge_project: ruby-mpfr
|
159
|
-
rubygems_version: 1.
|
133
|
+
rubygems_version: 1.5.2
|
160
134
|
signing_key:
|
161
135
|
specification_version: 3
|
162
136
|
summary: ruby-mpfr is a library to use MPFR[http://www.mpfr.org/] which is a C library for multiple-precision floating-point computations
|