ruby-mpc 0.0.2 → 0.0.3
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/History.txt +6 -0
- data/README.rdoc +21 -25
- data/Rakefile +2 -1
- data/ext/mpc/ruby_mpc.c +87 -16
- data/lib/mpc/version.rb +1 -3
- data/ruby-mpc.gemspec +7 -4
- metadata +14 -3
data/History.txt
CHANGED
data/README.rdoc
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
= ruby-mpc
|
2
2
|
|
3
|
-
* http://
|
3
|
+
* http://rubyforge.org/projects/ruby-mpfr/
|
4
|
+
* http://gemcutter.org/gems/ruby-mpc/
|
4
5
|
|
5
6
|
== DESCRIPTION:
|
6
7
|
|
@@ -14,35 +15,30 @@ FIX (describe your package)
|
|
14
15
|
|
15
16
|
FIX (code sample of usage)
|
16
17
|
|
17
|
-
==
|
18
|
+
== Requirements:
|
18
19
|
|
19
|
-
*
|
20
|
+
* MPFR
|
21
|
+
* MPC
|
22
|
+
* ruby-mpfr
|
20
23
|
|
21
|
-
==
|
24
|
+
== Install:
|
22
25
|
|
23
|
-
|
26
|
+
$ sudo gem install ruby-mpc
|
24
27
|
|
25
|
-
==
|
28
|
+
== License:
|
26
29
|
|
27
|
-
|
30
|
+
ruby-mpc
|
31
|
+
Copyright (C) 2009 Takayuki YAMAGUCHI
|
28
32
|
|
29
|
-
|
33
|
+
This program is free software; you can redistribute it and/or modify it under
|
34
|
+
the terms of the GNU Lesser General Public License as published by the Free
|
35
|
+
Software Foundation; either version 3 of the License, or (at your option) any
|
36
|
+
later version.
|
30
37
|
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
36
|
-
permit persons to whom the Software is furnished to do so, subject to
|
37
|
-
the following conditions:
|
38
|
+
This program is distributed in the hope that it will be useful, but WITHOUT
|
39
|
+
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
40
|
+
FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
|
41
|
+
details.
|
38
42
|
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
43
|
-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
44
|
-
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
45
|
-
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
46
|
-
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
47
|
-
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
48
|
-
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
43
|
+
You should have received a copy of the GNU General Public License along with
|
44
|
+
this program. If not, see <http://www.gnu.org/licenses/>.
|
data/Rakefile
CHANGED
@@ -14,8 +14,9 @@ $hoe = Hoe.spec 'ruby-mpc' do
|
|
14
14
|
self.developer 'Takayuki YAMAGUCHI', 'd@ytak.info'
|
15
15
|
self.post_install_message = 'PostInstall.txt' # TODO remove if post-install message not required
|
16
16
|
self.rubyforge_name = self.name # TODO this is default value
|
17
|
-
|
17
|
+
self.extra_deps = [['ruby-mpfr','>= 0.0.4']]
|
18
18
|
self.spec_extras[:extensions] = "ext/mpc/extconf.rb"
|
19
|
+
self.extra_rdoc_files << 'README.rdoc'
|
19
20
|
end
|
20
21
|
|
21
22
|
require 'newgem/tasks'
|
data/ext/mpc/ruby_mpc.c
CHANGED
@@ -120,6 +120,7 @@ void r_mpc_free(void *ptr){
|
|
120
120
|
free(ptr);
|
121
121
|
}
|
122
122
|
|
123
|
+
/* Allocation function. */
|
123
124
|
static VALUE r_mpc_alloc(VALUE self)
|
124
125
|
{
|
125
126
|
MPC *ptr;
|
@@ -169,16 +170,8 @@ static void r_mpc_set_from_one_object(MPC *ptr, VALUE obj, mpc_rnd_t rnd)
|
|
169
170
|
}
|
170
171
|
}
|
171
172
|
|
172
|
-
|
173
|
-
/* 0. none */
|
174
|
-
/* 1. MPC or array having two elements */
|
175
|
-
/* 2. real part and imaginary part*/
|
176
|
-
/* 3. real part, imaginary part, and rounding mode */
|
177
|
-
/* 4. real part, imaginary part, rounding mode and precision */
|
178
|
-
static VALUE r_mpc_initialize(int argc, VALUE *argv, VALUE self)
|
173
|
+
static void r_mpc_set_initial_value(MPC *ptr, int argc, VALUE *argv)
|
179
174
|
{
|
180
|
-
MPC *ptr;
|
181
|
-
r_mpc_get_struct(ptr, self);
|
182
175
|
switch(argc){
|
183
176
|
case 0:
|
184
177
|
mpc_init2(ptr, mpfr_get_default_prec());
|
@@ -202,10 +195,37 @@ static VALUE r_mpc_initialize(int argc, VALUE *argv, VALUE self)
|
|
202
195
|
default:
|
203
196
|
rb_raise(rb_eArgError, "Invalid number of arguments.");
|
204
197
|
break;
|
205
|
-
}
|
198
|
+
}
|
199
|
+
}
|
200
|
+
|
201
|
+
/* Return new MPC instance. The same arguments as MPC.new is acceptable. */
|
202
|
+
static VALUE r_mpc_global_new(int argc, VALUE *argv, VALUE self)
|
203
|
+
{
|
204
|
+
MPC *ptr;
|
205
|
+
VALUE val;
|
206
|
+
r_mpc_make_struct(val, ptr);
|
207
|
+
r_mpc_set_initial_value(ptr, argc, argv);
|
208
|
+
return val;
|
209
|
+
}
|
210
|
+
|
211
|
+
|
212
|
+
/*
|
213
|
+
Arguments may be the following types by number.
|
214
|
+
0. none
|
215
|
+
1. MPC or array having two elements
|
216
|
+
2. real part and imaginary part
|
217
|
+
3. real part, imaginary part, and rounding mode
|
218
|
+
4. real part, imaginary part, rounding mode and precision
|
219
|
+
*/
|
220
|
+
static VALUE r_mpc_initialize(int argc, VALUE *argv, VALUE self)
|
221
|
+
{
|
222
|
+
MPC *ptr;
|
223
|
+
r_mpc_get_struct(ptr, self);
|
224
|
+
r_mpc_set_initial_value(ptr, argc, argv);
|
206
225
|
return Qtrue;
|
207
226
|
}
|
208
227
|
|
228
|
+
/* initialize_copy */
|
209
229
|
static VALUE r_mpc_initialize_copy(VALUE self, VALUE other)
|
210
230
|
{
|
211
231
|
MPC *ptr_self, *ptr_other;
|
@@ -229,6 +249,7 @@ static VALUE r_mpc_coerce(VALUE self, VALUE other)
|
|
229
249
|
|
230
250
|
/* String */
|
231
251
|
|
252
|
+
/* inspect */
|
232
253
|
static VALUE r_mpc_inspect(VALUE self)
|
233
254
|
{
|
234
255
|
MPC *ptr_s;
|
@@ -300,6 +321,8 @@ static VALUE r_mpc_proj (int argc, VALUE *argv, VALUE self)
|
|
300
321
|
}
|
301
322
|
|
302
323
|
/* Basic Arithmetic Functions */
|
324
|
+
|
325
|
+
/* Return self + p1. */
|
303
326
|
static VALUE r_mpc_add(VALUE self, VALUE other)
|
304
327
|
{
|
305
328
|
MPC *ptr_self, *ptr_return;
|
@@ -322,6 +345,7 @@ static VALUE r_mpc_add(VALUE self, VALUE other)
|
|
322
345
|
return val_ret;
|
323
346
|
}
|
324
347
|
|
348
|
+
/* Return self / p1. */
|
325
349
|
static VALUE r_mpc_sub(VALUE self, VALUE other)
|
326
350
|
{
|
327
351
|
MPC *ptr_self, *ptr_return;
|
@@ -345,6 +369,7 @@ static VALUE r_mpc_sub(VALUE self, VALUE other)
|
|
345
369
|
return val_ret;
|
346
370
|
}
|
347
371
|
|
372
|
+
/* Return self * p1. */
|
348
373
|
static VALUE r_mpc_mul(VALUE self, VALUE other)
|
349
374
|
{
|
350
375
|
MPC *ptr_self, *ptr_return;
|
@@ -368,7 +393,7 @@ static VALUE r_mpc_mul(VALUE self, VALUE other)
|
|
368
393
|
return val_ret;
|
369
394
|
}
|
370
395
|
|
371
|
-
|
396
|
+
/* Return self / p1. */
|
372
397
|
static VALUE r_mpc_div(VALUE self, VALUE other)
|
373
398
|
{
|
374
399
|
MPC *ptr_self, *ptr_return;
|
@@ -392,6 +417,7 @@ static VALUE r_mpc_div(VALUE self, VALUE other)
|
|
392
417
|
return val_ret;
|
393
418
|
}
|
394
419
|
|
420
|
+
/* Multiply self by _i_. */
|
395
421
|
static VALUE r_mpc_mul_i (int argc, VALUE *argv, VALUE self)
|
396
422
|
{
|
397
423
|
mpc_rnd_t rnd;
|
@@ -405,6 +431,7 @@ static VALUE r_mpc_mul_i (int argc, VALUE *argv, VALUE self)
|
|
405
431
|
return val_ret;
|
406
432
|
}
|
407
433
|
|
434
|
+
/* Multiply self by -1. */
|
408
435
|
static VALUE r_mpc_neg (int argc, VALUE *argv, VALUE self)
|
409
436
|
{
|
410
437
|
mpc_rnd_t rnd;
|
@@ -418,6 +445,7 @@ static VALUE r_mpc_neg (int argc, VALUE *argv, VALUE self)
|
|
418
445
|
return val_ret;
|
419
446
|
}
|
420
447
|
|
448
|
+
/* Return conjugate of self. */
|
421
449
|
static VALUE r_mpc_conj (int argc, VALUE *argv, VALUE self)
|
422
450
|
{
|
423
451
|
mpc_rnd_t rnd;
|
@@ -431,6 +459,7 @@ static VALUE r_mpc_conj (int argc, VALUE *argv, VALUE self)
|
|
431
459
|
return val_ret;
|
432
460
|
}
|
433
461
|
|
462
|
+
/* Return absolute value. */
|
434
463
|
static VALUE r_mpc_abs (int argc, VALUE *argv, VALUE self)
|
435
464
|
{
|
436
465
|
mpc_rnd_t rnd;
|
@@ -445,6 +474,7 @@ static VALUE r_mpc_abs (int argc, VALUE *argv, VALUE self)
|
|
445
474
|
return val_ret;
|
446
475
|
}
|
447
476
|
|
477
|
+
/* Return the norm (the square of absolute value). */
|
448
478
|
static VALUE r_mpc_norm (int argc, VALUE *argv, VALUE self)
|
449
479
|
{
|
450
480
|
mpc_rnd_t rnd;
|
@@ -460,6 +490,8 @@ static VALUE r_mpc_norm (int argc, VALUE *argv, VALUE self)
|
|
460
490
|
}
|
461
491
|
|
462
492
|
/* module function */
|
493
|
+
|
494
|
+
/* Return self + p1. */
|
463
495
|
static VALUE r_mpc_math_add(int argc, VALUE *argv, VALUE self)
|
464
496
|
{
|
465
497
|
mp_rnd_t rnd;
|
@@ -489,6 +521,7 @@ static VALUE r_mpc_math_add(int argc, VALUE *argv, VALUE self)
|
|
489
521
|
return val_ret;
|
490
522
|
}
|
491
523
|
|
524
|
+
/* Return self - p1. */
|
492
525
|
static VALUE r_mpc_math_sub(int argc, VALUE *argv, VALUE self)
|
493
526
|
{
|
494
527
|
mp_rnd_t rnd;
|
@@ -523,6 +556,7 @@ static VALUE r_mpc_math_sub(int argc, VALUE *argv, VALUE self)
|
|
523
556
|
return val_ret;
|
524
557
|
}
|
525
558
|
|
559
|
+
/* Return self * p1. */
|
526
560
|
static VALUE r_mpc_math_mul(int argc, VALUE *argv, VALUE self)
|
527
561
|
{
|
528
562
|
mp_rnd_t rnd;
|
@@ -552,6 +586,7 @@ static VALUE r_mpc_math_mul(int argc, VALUE *argv, VALUE self)
|
|
552
586
|
return val_ret;
|
553
587
|
}
|
554
588
|
|
589
|
+
/* Return self / p1. */
|
555
590
|
static VALUE r_mpc_math_div(int argc, VALUE *argv, VALUE self)
|
556
591
|
{
|
557
592
|
mp_rnd_t rnd;
|
@@ -579,6 +614,8 @@ static VALUE r_mpc_math_div(int argc, VALUE *argv, VALUE self)
|
|
579
614
|
return val_ret;
|
580
615
|
}
|
581
616
|
|
617
|
+
|
618
|
+
/* mpc_mul_2exp(ret, p1, p2, rnd) */
|
582
619
|
static VALUE r_mpc_math_mul_2exp (int argc, VALUE *argv, VALUE self)
|
583
620
|
{
|
584
621
|
mpc_rnd_t rnd;
|
@@ -593,6 +630,7 @@ static VALUE r_mpc_math_mul_2exp (int argc, VALUE *argv, VALUE self)
|
|
593
630
|
return val_ret;
|
594
631
|
}
|
595
632
|
|
633
|
+
/* mpc_div_2exp(ret, p1, p2, rnd) */
|
596
634
|
static VALUE r_mpc_math_div_2exp (int argc, VALUE *argv, VALUE self)
|
597
635
|
{
|
598
636
|
mpc_rnd_t rnd;
|
@@ -608,6 +646,7 @@ static VALUE r_mpc_math_div_2exp (int argc, VALUE *argv, VALUE self)
|
|
608
646
|
}
|
609
647
|
|
610
648
|
|
649
|
+
/* mpc_sqr(ret, p1, rnd) */
|
611
650
|
static VALUE r_mpc_math_sqr (int argc, VALUE *argv, VALUE self)
|
612
651
|
{
|
613
652
|
mpc_rnd_t rnd;
|
@@ -622,6 +661,7 @@ static VALUE r_mpc_math_sqr (int argc, VALUE *argv, VALUE self)
|
|
622
661
|
return val_ret;
|
623
662
|
}
|
624
663
|
|
664
|
+
/* mpc_sqrt(ret, p1, rnd) */
|
625
665
|
static VALUE r_mpc_math_sqrt (int argc, VALUE *argv, VALUE self)
|
626
666
|
{
|
627
667
|
mpc_rnd_t rnd;
|
@@ -636,6 +676,7 @@ static VALUE r_mpc_math_sqrt (int argc, VALUE *argv, VALUE self)
|
|
636
676
|
return val_ret;
|
637
677
|
}
|
638
678
|
|
679
|
+
/* mpc_pow(ret, p1, p2, rnd), mpc_pow_fr(ret, p1, p2, rnd) etc. */
|
639
680
|
static VALUE r_mpc_math_pow(int argc, VALUE *argv, VALUE self)
|
640
681
|
{
|
641
682
|
mp_rnd_t rnd;
|
@@ -668,7 +709,7 @@ static VALUE r_mpc_math_pow(int argc, VALUE *argv, VALUE self)
|
|
668
709
|
}
|
669
710
|
|
670
711
|
|
671
|
-
|
712
|
+
/* mpc_exp(ret, p1, rnd) */
|
672
713
|
static VALUE r_mpc_math_exp (int argc, VALUE *argv, VALUE self)
|
673
714
|
{
|
674
715
|
mpc_rnd_t rnd;
|
@@ -683,6 +724,7 @@ static VALUE r_mpc_math_exp (int argc, VALUE *argv, VALUE self)
|
|
683
724
|
return val_ret;
|
684
725
|
}
|
685
726
|
|
727
|
+
/* mpc_log(ret, p1, rnd) */
|
686
728
|
static VALUE r_mpc_math_log (int argc, VALUE *argv, VALUE self)
|
687
729
|
{
|
688
730
|
mpc_rnd_t rnd;
|
@@ -697,6 +739,7 @@ static VALUE r_mpc_math_log (int argc, VALUE *argv, VALUE self)
|
|
697
739
|
return val_ret;
|
698
740
|
}
|
699
741
|
|
742
|
+
/* mpc_sin(ret, p1, rnd) */
|
700
743
|
static VALUE r_mpc_math_sin (int argc, VALUE *argv, VALUE self)
|
701
744
|
{
|
702
745
|
mpc_rnd_t rnd;
|
@@ -711,6 +754,7 @@ static VALUE r_mpc_math_sin (int argc, VALUE *argv, VALUE self)
|
|
711
754
|
return val_ret;
|
712
755
|
}
|
713
756
|
|
757
|
+
/* mpc_cos(ret, p1, rnd) */
|
714
758
|
static VALUE r_mpc_math_cos (int argc, VALUE *argv, VALUE self)
|
715
759
|
{
|
716
760
|
mpc_rnd_t rnd;
|
@@ -725,6 +769,7 @@ static VALUE r_mpc_math_cos (int argc, VALUE *argv, VALUE self)
|
|
725
769
|
return val_ret;
|
726
770
|
}
|
727
771
|
|
772
|
+
/* mpc_tan(ret, p1, rnd) */
|
728
773
|
static VALUE r_mpc_math_tan (int argc, VALUE *argv, VALUE self)
|
729
774
|
{
|
730
775
|
mpc_rnd_t rnd;
|
@@ -739,6 +784,7 @@ static VALUE r_mpc_math_tan (int argc, VALUE *argv, VALUE self)
|
|
739
784
|
return val_ret;
|
740
785
|
}
|
741
786
|
|
787
|
+
/* mpc_sinh(ret, p1, rnd) */
|
742
788
|
static VALUE r_mpc_math_sinh (int argc, VALUE *argv, VALUE self)
|
743
789
|
{
|
744
790
|
mpc_rnd_t rnd;
|
@@ -753,6 +799,7 @@ static VALUE r_mpc_math_sinh (int argc, VALUE *argv, VALUE self)
|
|
753
799
|
return val_ret;
|
754
800
|
}
|
755
801
|
|
802
|
+
/* mpc_cosh(ret, p1, rnd) */
|
756
803
|
static VALUE r_mpc_math_cosh (int argc, VALUE *argv, VALUE self)
|
757
804
|
{
|
758
805
|
mpc_rnd_t rnd;
|
@@ -767,6 +814,7 @@ static VALUE r_mpc_math_cosh (int argc, VALUE *argv, VALUE self)
|
|
767
814
|
return val_ret;
|
768
815
|
}
|
769
816
|
|
817
|
+
/* mpc_tanh(ret, p1, rnd) */
|
770
818
|
static VALUE r_mpc_math_tanh (int argc, VALUE *argv, VALUE self)
|
771
819
|
{
|
772
820
|
mpc_rnd_t rnd;
|
@@ -781,6 +829,7 @@ static VALUE r_mpc_math_tanh (int argc, VALUE *argv, VALUE self)
|
|
781
829
|
return val_ret;
|
782
830
|
}
|
783
831
|
|
832
|
+
/* mpc_asin(ret, p1, rnd) */
|
784
833
|
static VALUE r_mpc_math_asin (int argc, VALUE *argv, VALUE self)
|
785
834
|
{
|
786
835
|
mpc_rnd_t rnd;
|
@@ -795,6 +844,7 @@ static VALUE r_mpc_math_asin (int argc, VALUE *argv, VALUE self)
|
|
795
844
|
return val_ret;
|
796
845
|
}
|
797
846
|
|
847
|
+
/* mpc_acos(ret, p1, rnd) */
|
798
848
|
static VALUE r_mpc_math_acos (int argc, VALUE *argv, VALUE self)
|
799
849
|
{
|
800
850
|
mpc_rnd_t rnd;
|
@@ -809,6 +859,7 @@ static VALUE r_mpc_math_acos (int argc, VALUE *argv, VALUE self)
|
|
809
859
|
return val_ret;
|
810
860
|
}
|
811
861
|
|
862
|
+
/* mpc_atan(ret, p1, rnd) */
|
812
863
|
static VALUE r_mpc_math_atan (int argc, VALUE *argv, VALUE self)
|
813
864
|
{
|
814
865
|
mpc_rnd_t rnd;
|
@@ -823,6 +874,7 @@ static VALUE r_mpc_math_atan (int argc, VALUE *argv, VALUE self)
|
|
823
874
|
return val_ret;
|
824
875
|
}
|
825
876
|
|
877
|
+
/* mpc_asinh(ret, p1, rnd) */
|
826
878
|
static VALUE r_mpc_math_asinh (int argc, VALUE *argv, VALUE self)
|
827
879
|
{
|
828
880
|
mpc_rnd_t rnd;
|
@@ -837,6 +889,7 @@ static VALUE r_mpc_math_asinh (int argc, VALUE *argv, VALUE self)
|
|
837
889
|
return val_ret;
|
838
890
|
}
|
839
891
|
|
892
|
+
/* mpc_acosh(ret, p1, rnd) */
|
840
893
|
static VALUE r_mpc_math_acosh (int argc, VALUE *argv, VALUE self)
|
841
894
|
{
|
842
895
|
mpc_rnd_t rnd;
|
@@ -851,6 +904,7 @@ static VALUE r_mpc_math_acosh (int argc, VALUE *argv, VALUE self)
|
|
851
904
|
return val_ret;
|
852
905
|
}
|
853
906
|
|
907
|
+
/* mpc_atanh(ret, p1, rnd) */
|
854
908
|
static VALUE r_mpc_math_atanh (int argc, VALUE *argv, VALUE self)
|
855
909
|
{
|
856
910
|
mpc_rnd_t rnd;
|
@@ -872,35 +926,53 @@ void Init_mpc(){
|
|
872
926
|
rb_define_singleton_method(r_mpc_class, "set_default_rounding_mode", r_mpc_set_default_rounding_mode, 1);
|
873
927
|
rb_define_singleton_method(r_mpc_class, "get_default_rounding_mode", r_mpc_get_default_rounding_mode, 0);
|
874
928
|
|
929
|
+
/* Integer which is macro MPC_RNDNN. */
|
875
930
|
rb_define_const(r_mpc_class, "RNDNN", INT2NUM(MPC_RNDNN));
|
931
|
+
/* Integer which is macro MPC_RNDNZ. */
|
876
932
|
rb_define_const(r_mpc_class, "RNDNZ", INT2NUM(MPC_RNDNZ));
|
933
|
+
/* Integer which is macro MPC_RNDNU. */
|
877
934
|
rb_define_const(r_mpc_class, "RNDNU", INT2NUM(MPC_RNDNU));
|
935
|
+
/* Integer which is macro MPC_RNDND. */
|
878
936
|
rb_define_const(r_mpc_class, "RNDND", INT2NUM(MPC_RNDND));
|
937
|
+
/* Integer which is macro MPC_RNDZN. */
|
879
938
|
rb_define_const(r_mpc_class, "RNDZN", INT2NUM(MPC_RNDZN));
|
939
|
+
/* Integer which is macro MPC_RNDZZ. */
|
880
940
|
rb_define_const(r_mpc_class, "RNDZZ", INT2NUM(MPC_RNDZZ));
|
941
|
+
/* Integer which is macro MPC_RNDZU. */
|
881
942
|
rb_define_const(r_mpc_class, "RNDZU", INT2NUM(MPC_RNDZU));
|
943
|
+
/* Integer which is macro MPC_RNDZD. */
|
882
944
|
rb_define_const(r_mpc_class, "RNDZD", INT2NUM(MPC_RNDZD));
|
945
|
+
/* Integer which is macro MPC_RNDUN */
|
883
946
|
rb_define_const(r_mpc_class, "RNDUN", INT2NUM(MPC_RNDUN));
|
947
|
+
/* Integer which is macro MPC_RNDUZ. */
|
884
948
|
rb_define_const(r_mpc_class, "RNDUZ", INT2NUM(MPC_RNDUZ));
|
949
|
+
/* Integer which is macro MPC_RNDUU. */
|
885
950
|
rb_define_const(r_mpc_class, "RNDUU", INT2NUM(MPC_RNDUU));
|
951
|
+
/* Integer which is macro MPC_RNDUD. */
|
886
952
|
rb_define_const(r_mpc_class, "RNDUD", INT2NUM(MPC_RNDUD));
|
953
|
+
/* Integer which is macro MPC_RNDDN. */
|
887
954
|
rb_define_const(r_mpc_class, "RNDDN", INT2NUM(MPC_RNDDN));
|
955
|
+
/* Integer which is macro MPC_RNDDZ. */
|
888
956
|
rb_define_const(r_mpc_class, "RNDDZ", INT2NUM(MPC_RNDDZ));
|
957
|
+
/* Integer which is macro MPC_RNDDU. */
|
889
958
|
rb_define_const(r_mpc_class, "RNDDU", INT2NUM(MPC_RNDDU));
|
959
|
+
/* Integer which is macro MPC_RNDDD. */
|
890
960
|
rb_define_const(r_mpc_class, "RNDDD", INT2NUM(MPC_RNDDD));
|
891
961
|
|
962
|
+
/* Integer which is macro MPC_VERSION_MAJOR. */
|
892
963
|
rb_define_const(r_mpc_class, "VERSION_MAJOR", INT2NUM(MPC_VERSION_MAJOR));
|
964
|
+
/* Integer which is macro MPC_VERSION_MINOR. */
|
893
965
|
rb_define_const(r_mpc_class, "VERSION_MINOR", INT2NUM(MPC_VERSION_MINOR));
|
966
|
+
/* Integer which is macro MPC_VERSION_PATCHLEVEL. */
|
894
967
|
rb_define_const(r_mpc_class, "VERSION_PATCHLEVEL", INT2NUM(MPC_VERSION_PATCHLEVEL));
|
968
|
+
/* Stirng which is macro MPC_VERSION_STRING. */
|
895
969
|
rb_define_const(r_mpc_class, "VERSION_STRING", rb_str_new2(MPC_VERSION_STRING));
|
896
970
|
|
897
971
|
|
898
|
-
|
899
972
|
rb_define_singleton_method(r_mpc_class, "get_function_state", r_mpc_get_function_state, 0);
|
900
973
|
|
901
|
-
|
974
|
+
rb_define_global_function("MPC", r_mpc_global_new, -1);
|
902
975
|
rb_define_alloc_func(r_mpc_class, r_mpc_alloc);
|
903
|
-
|
904
976
|
rb_define_private_method(r_mpc_class, "initialize", r_mpc_initialize, -1);
|
905
977
|
rb_define_private_method(r_mpc_class, "initialize_copy", r_mpc_initialize_copy, 1);
|
906
978
|
|
@@ -963,6 +1035,5 @@ void Init_mpc(){
|
|
963
1035
|
__mpc_class__ = rb_eval_string("MPC");
|
964
1036
|
__mpfr_class__ = rb_eval_string("MPFR");
|
965
1037
|
|
966
|
-
|
967
1038
|
}
|
968
1039
|
|
data/lib/mpc/version.rb
CHANGED
data/ruby-mpc.gemspec
CHANGED
@@ -2,17 +2,17 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{ruby-mpc}
|
5
|
-
s.version = "0.0.
|
5
|
+
s.version = "0.0.3"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["Takayuki YAMAGUCHI"]
|
9
|
-
s.date = %q{2009-12-
|
9
|
+
s.date = %q{2009-12-19}
|
10
10
|
s.description = %q{FIX (describe your package)}
|
11
11
|
s.email = ["d@ytak.info"]
|
12
12
|
s.extensions = ["ext/mpc/extconf.rb"]
|
13
|
-
s.extra_rdoc_files = ["History.txt", "Manifest.txt", "PostInstall.txt"]
|
13
|
+
s.extra_rdoc_files = ["History.txt", "Manifest.txt", "PostInstall.txt", "README.rdoc"]
|
14
14
|
s.files = ["History.txt", "Manifest.txt", "PostInstall.txt", "README.rdoc", "Rakefile", "ext/mpc/extconf.rb", "ext/mpc/ruby_mpc.c", "ext/mpc/ruby_mpc.h", "ext/mpc/ruby_mpfr.h", "lib/mpc/version.rb", "ruby-mpc.gemspec", "script/console", "script/destroy", "script/generate", "spec/mpc/arithmetic_op_spec.rb", "spec/mpc/const_spec.rb", "spec/mpc/functions_spec.rb", "spec/mpc/generate_complex_number.rb", "spec/mpc/spec_helper.rb", "spec/spec.opts", "tasks/extconf.rake"]
|
15
|
-
s.homepage = %q{http://
|
15
|
+
s.homepage = %q{http://rubyforge.org/projects/ruby-mpfr/}
|
16
16
|
s.post_install_message = %q{PostInstall.txt}
|
17
17
|
s.rdoc_options = ["--main", "README.rdoc"]
|
18
18
|
s.require_paths = ["lib", "ext"]
|
@@ -25,11 +25,14 @@ Gem::Specification.new do |s|
|
|
25
25
|
s.specification_version = 3
|
26
26
|
|
27
27
|
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
28
|
+
s.add_runtime_dependency(%q<ruby-mpfr>, [">= 0.0.4"])
|
28
29
|
s.add_development_dependency(%q<hoe>, [">= 2.4.0"])
|
29
30
|
else
|
31
|
+
s.add_dependency(%q<ruby-mpfr>, [">= 0.0.4"])
|
30
32
|
s.add_dependency(%q<hoe>, [">= 2.4.0"])
|
31
33
|
end
|
32
34
|
else
|
35
|
+
s.add_dependency(%q<ruby-mpfr>, [">= 0.0.4"])
|
33
36
|
s.add_dependency(%q<hoe>, [">= 2.4.0"])
|
34
37
|
end
|
35
38
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby-mpc
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Takayuki YAMAGUCHI
|
@@ -9,9 +9,19 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-12-
|
12
|
+
date: 2009-12-19 00:00:00 +09:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: ruby-mpfr
|
17
|
+
type: :runtime
|
18
|
+
version_requirement:
|
19
|
+
version_requirements: !ruby/object:Gem::Requirement
|
20
|
+
requirements:
|
21
|
+
- - ">="
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 0.0.4
|
24
|
+
version:
|
15
25
|
- !ruby/object:Gem::Dependency
|
16
26
|
name: hoe
|
17
27
|
type: :development
|
@@ -33,6 +43,7 @@ extra_rdoc_files:
|
|
33
43
|
- History.txt
|
34
44
|
- Manifest.txt
|
35
45
|
- PostInstall.txt
|
46
|
+
- README.rdoc
|
36
47
|
files:
|
37
48
|
- History.txt
|
38
49
|
- Manifest.txt
|
@@ -56,7 +67,7 @@ files:
|
|
56
67
|
- spec/spec.opts
|
57
68
|
- tasks/extconf.rake
|
58
69
|
has_rdoc: true
|
59
|
-
homepage: http://
|
70
|
+
homepage: http://rubyforge.org/projects/ruby-mpfr/
|
60
71
|
licenses: []
|
61
72
|
|
62
73
|
post_install_message: PostInstall.txt
|