1 #include "internal.h"
2 
3 static VALUE
bug_big_zero(VALUE self,VALUE length)4 bug_big_zero(VALUE self, VALUE length)
5 {
6     long len = NUM2ULONG(length);
7     VALUE z = rb_big_new(len, 1);
8     MEMZERO(BIGNUM_DIGITS(z), BDIGIT, len);
9     return z;
10 }
11 
12 static VALUE
bug_big_negzero(VALUE self,VALUE length)13 bug_big_negzero(VALUE self, VALUE length)
14 {
15     long len = NUM2ULONG(length);
16     VALUE z = rb_big_new(len, 0);
17     MEMZERO(BIGNUM_DIGITS(z), BDIGIT, len);
18     return z;
19 }
20 
21 void
Init_bigzero(VALUE klass)22 Init_bigzero(VALUE klass)
23 {
24     rb_define_singleton_method(klass, "zero", bug_big_zero, 1);
25     rb_define_singleton_method(klass, "negzero", bug_big_negzero, 1);
26 }
27