narray 0.6.0.4 → 0.6.0.5
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/src/ChangeLog +8 -0
- data/src/na_linalg.c +1 -1
- data/src/na_random.c +11 -8
- data/src/narray.c +5 -7
- data/src/narray.h +2 -2
- metadata +19 -26
data/src/ChangeLog
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
2013-01-30 Masahiro TANAKA <masa16.tanaka@gmail.com>
|
2
|
+
|
3
|
+
* narray.c (na_check_class_narray):
|
4
|
+
use Module#<= instead of rb_mod_ancestors
|
5
|
+
* na_random.c, na_linalg.c:
|
6
|
+
avoid warnings of signed <=> unsigned comparison
|
7
|
+
* ver 0.6.0.5
|
8
|
+
|
1
9
|
2012-12-07 geoffyoungs
|
2
10
|
|
3
11
|
* narray.c (na_check_class_narray):
|
data/src/na_linalg.c
CHANGED
@@ -575,7 +575,7 @@ void Init_na_linalg()
|
|
575
575
|
|
576
576
|
for (i=1;i<NA_NTYPES;++i) {
|
577
577
|
sz = na_funcset[i].elmsz = na_sizeof[i];
|
578
|
-
sz = (sz>sizeof(int)) ? sz : sizeof(int);
|
578
|
+
sz = (sz>((int)sizeof(int))) ? sz : (int)sizeof(int);
|
579
579
|
SetFuncs[i][NA_LINT](1, a,0, &one, 0);
|
580
580
|
na_funcset[i].one = a;
|
581
581
|
a += sz;
|
data/src/na_random.c
CHANGED
@@ -217,19 +217,22 @@ static int n_bits(int32_t a)
|
|
217
217
|
return xl;
|
218
218
|
}
|
219
219
|
|
220
|
-
|
220
|
+
// max&limit must be integer
|
221
|
+
static u_int32_t size_check(double rmax, double limit)
|
221
222
|
{
|
223
|
+
u_int32_t max;
|
224
|
+
|
222
225
|
if ( rmax == 0 ) {
|
223
|
-
return (
|
226
|
+
return (u_int32_t)(limit-1);
|
224
227
|
}
|
225
228
|
if ( rmax < 0 ) {
|
226
229
|
rmax = -rmax;
|
227
230
|
}
|
228
|
-
rmax
|
229
|
-
if (
|
230
|
-
rb_raise(rb_eArgError, "rand-max(%.0f) must be <= %.0f", rmax
|
231
|
+
max = (u_int32_t)(rmax - 1);
|
232
|
+
if ( max >= limit ) {
|
233
|
+
rb_raise(rb_eArgError, "rand-max(%.0f) must be <= %.0f", rmax, limit);
|
231
234
|
}
|
232
|
-
return
|
235
|
+
return max;
|
233
236
|
}
|
234
237
|
|
235
238
|
static void TpErr(void) {
|
@@ -268,7 +271,7 @@ static void RndB(int n, char *p1, int i1, double rmax)
|
|
268
271
|
static void RndI(int n, char *p1, int i1, double rmax)
|
269
272
|
{
|
270
273
|
u_int32_t y;
|
271
|
-
|
274
|
+
u_int16_t max;
|
272
275
|
int shift, sign=1;
|
273
276
|
|
274
277
|
if ( rmax < 0 ) { rmax = -rmax; sign = -1; }
|
@@ -295,7 +298,7 @@ static void RndI(int n, char *p1, int i1, double rmax)
|
|
295
298
|
static void RndL(int n, char *p1, int i1, double rmax)
|
296
299
|
{
|
297
300
|
u_int32_t y;
|
298
|
-
|
301
|
+
u_int32_t max;
|
299
302
|
int shift, sign=1;
|
300
303
|
|
301
304
|
if ( rmax < 0 ) { rmax = -rmax; sign = -1; }
|
data/src/narray.c
CHANGED
@@ -182,7 +182,9 @@ static void
|
|
182
182
|
rb_raise(rb_eRuntimeError, "class required");
|
183
183
|
}
|
184
184
|
|
185
|
-
if(
|
185
|
+
if (v == cNArray)
|
186
|
+
return;
|
187
|
+
if (RTEST(rb_funcall(v, rb_intern("<="), 1, cNArray)))
|
186
188
|
return;
|
187
189
|
|
188
190
|
rb_raise(rb_eRuntimeError, "need NArray or its subclass");
|
@@ -741,10 +743,6 @@ static VALUE
|
|
741
743
|
static VALUE
|
742
744
|
na_s_to_na(int argc, VALUE *argv, VALUE klass)
|
743
745
|
{
|
744
|
-
static int shape=1;
|
745
|
-
VALUE v;
|
746
|
-
struct NARRAY *ary;
|
747
|
-
|
748
746
|
if (argc < 1) {
|
749
747
|
rb_raise(rb_eArgError, "Argument is required");
|
750
748
|
}
|
@@ -795,8 +793,8 @@ static VALUE
|
|
795
793
|
int i;
|
796
794
|
char buf[256];
|
797
795
|
const char *classname;
|
798
|
-
char *ref = "%s(ref).%s(%i";
|
799
|
-
char *org = "%s.%s(%i";
|
796
|
+
const char *ref = "%s(ref).%s(%i";
|
797
|
+
const char *org = "%s.%s(%i";
|
800
798
|
|
801
799
|
GetNArray(self,ary);
|
802
800
|
classname = rb_class2name(CLASS_OF(self));
|
data/src/narray.h
CHANGED
metadata
CHANGED
@@ -1,27 +1,23 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: narray
|
3
|
-
version: !ruby/object:Gem::Version
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.6.0.5
|
4
5
|
prerelease:
|
5
|
-
version: 0.6.0.4
|
6
6
|
platform: ruby
|
7
|
-
authors:
|
7
|
+
authors:
|
8
8
|
- Masahiro Tanaka
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
|
13
|
-
date: 2012-12-29 00:00:00 Z
|
12
|
+
date: 2013-01-30 00:00:00.000000000 Z
|
14
13
|
dependencies: []
|
15
|
-
|
16
14
|
description: Numerical N-dimensional Array class
|
17
15
|
email: masa16.tanaka@gmail.com
|
18
16
|
executables: []
|
19
|
-
|
20
|
-
extensions:
|
17
|
+
extensions:
|
21
18
|
- src/extconf.rb
|
22
19
|
extra_rdoc_files: []
|
23
|
-
|
24
|
-
files:
|
20
|
+
files:
|
25
21
|
- src/ChangeLog
|
26
22
|
- src/MANIFEST
|
27
23
|
- src/README.en
|
@@ -45,31 +41,28 @@ files:
|
|
45
41
|
- src/lib/narray_ext.rb
|
46
42
|
- src/lib/nmatrix.rb
|
47
43
|
homepage: http://narray.rubyforge.org/
|
48
|
-
licenses:
|
44
|
+
licenses:
|
49
45
|
- Ruby
|
50
46
|
post_install_message:
|
51
47
|
rdoc_options: []
|
52
|
-
|
53
|
-
require_paths:
|
48
|
+
require_paths:
|
54
49
|
- .
|
55
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
50
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
56
51
|
none: false
|
57
|
-
requirements:
|
58
|
-
- -
|
59
|
-
- !ruby/object:Gem::Version
|
60
|
-
version:
|
61
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
52
|
+
requirements:
|
53
|
+
- - ! '>='
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: '0'
|
56
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
62
57
|
none: false
|
63
|
-
requirements:
|
64
|
-
- -
|
65
|
-
- !ruby/object:Gem::Version
|
66
|
-
version:
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
67
62
|
requirements: []
|
68
|
-
|
69
63
|
rubyforge_project: narray
|
70
64
|
rubygems_version: 1.8.23
|
71
65
|
signing_key:
|
72
66
|
specification_version: 2
|
73
67
|
summary: N-dimensional Numerical Array class for Ruby
|
74
68
|
test_files: []
|
75
|
-
|