chipmunk 6.1.3.0.rc1 → 6.1.3.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 184118e83810f5f9ff162b0a2ec8c3b20d2e227e
4
+ data.tar.gz: 6526469b14b6dbc5332618b0777354934fe298df
5
+ SHA512:
6
+ metadata.gz: 3485a244856099559d2626f679c8142514454048e7fb54cb8f097e4ea01ec916b96aee2bd74d90cfc215532fde311c7696e0dad464525e2e2132902c5f9b458d
7
+ data.tar.gz: c03c533bdb64b59d112d895fddbf31c93881fe9893a92320bea9090c98e22a807a659401ad95c700dd02506f8715485612ee275dc6cc519b5427a5ec09348b94
@@ -166,15 +166,6 @@ rb_cpRecenterPoly(VALUE self, VALUE arr) {
166
166
  return arr;
167
167
  }
168
168
 
169
- // We need this as rb_obj_method_arity is not in 1.8.7
170
- int
171
- cp_rb_obj_method_arity(VALUE self, ID id) {
172
- VALUE metho = rb_funcall(self, rb_intern("method"), 1, ID2SYM(id));
173
- VALUE arity = rb_funcall(metho, rb_intern("arity"), 0, 0);
174
- return NUM2INT(arity);
175
- }
176
-
177
-
178
169
 
179
170
 
180
171
 
@@ -221,6 +212,7 @@ Init_chipmunk(void) {
221
212
 
222
213
  rb_define_const(m_Chipmunk, "ALL_LAYERS", UINT2NUM((unsigned int)CP_ALL_LAYERS));
223
214
  rb_define_const(m_Chipmunk, "NO_GROUP", UINT2NUM(CP_NO_GROUP));
215
+ CP_OBJ2INT(UINT2NUM(CP_NO_GROUP));
224
216
 
225
217
  rb_eval_string("Float::INFINITY = 1.0/0.0 unless Float.const_defined? :INFINITY");
226
218
  rb_eval_string("CP::INFINITY = 1.0/0.0 unless CP.const_defined? :INFINITY");
@@ -53,8 +53,6 @@ VWRAP(VALUE parent, cpVect *v) {
53
53
  return vec_obj;
54
54
  }
55
55
 
56
- int cp_rb_obj_method_arity(VALUE self, ID id);
57
-
58
56
  #define GETTER_TEMPLATE(func_name, klass, type) \
59
57
  static inline type * \
60
58
  func_name(VALUE self) \
@@ -105,7 +103,7 @@ void Init_cpSpace();
105
103
  void Init_cpArbiter(void);
106
104
 
107
105
  // transforms a boolean VALUE to an int
108
- #define CP_BOOL_INT(VAL) (((VAL) == Qnil) || ((VAL) == Qfalse) ? 0 : 1)
106
+ #define CP_BOOL_INT(VAL) (RTEST(VAL))
109
107
 
110
108
  // transforms a C value (pointer or int) to Qtrue of Qfalse
111
109
  // For consistency with CP_BOOL_INT.
@@ -145,6 +145,20 @@ doNothingCallback(cpArbiter *arb, cpSpace *space, void *data) {
145
145
  return 0;
146
146
  }
147
147
 
148
+ // We need this as rb_obj_method_arity is not in 1.8.7
149
+ int
150
+ rb_obj_method_arity(VALUE self, ID id) {
151
+ VALUE metho;
152
+ VALUE arity;
153
+ if(id == id_call) {
154
+ metho = self;
155
+ } else {
156
+ metho = rb_funcall(self, rb_intern("method"), 1, ID2SYM(id));
157
+ }
158
+ arity = rb_funcall(metho, rb_intern("arity"), 0, 0);
159
+ return NUM2INT(arity);
160
+ }
161
+
148
162
  // This callback function centralizes all collision callbacks.
149
163
  // it also adds flexibility by changing theway the callback is called on the
150
164
  // arity of the callback block or method. With arity0, no args are pased,
@@ -159,7 +173,7 @@ do_callback(void * data, ID method, cpArbiter *arb) {
159
173
  VALUE va = (VALUE)a->data;
160
174
  VALUE vb = (VALUE)b->data;
161
175
  VALUE varb = ARBWRAP(arb);
162
- int arity = cp_rb_obj_method_arity(object, method);
176
+ int arity = rb_obj_method_arity(object, method);
163
177
  switch(arity) {
164
178
  case 0:
165
179
  return CP_BOOL_INT(rb_funcall(object, method, 0));
metadata CHANGED
@@ -1,23 +1,23 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chipmunk
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.1.3.0.rc1
5
- prerelease: 8
4
+ version: 6.1.3.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Scott Lembcke, Beoran, John Mair (banisterfiend), Shawn Anderson
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-04-30 00:00:00.000000000 Z
11
+ date: 2014-02-16 00:00:00.000000000 Z
13
12
  dependencies: []
14
- description: ! 'Enhanced ruby bindings for the chipmunk 5.3.4 game physics engine. '
13
+ description: 'Enhanced ruby bindings for the chipmunk 5.3.4 game physics engine. '
15
14
  email: beoran@rubyforge.org
16
15
  executables: []
17
16
  extensions:
18
17
  - ext/chipmunk/extconf.rb
19
18
  extra_rdoc_files: []
20
19
  files:
20
+ - ext/chipmunk/chipmunk.c
21
21
  - ext/chipmunk/chipmunk.h
22
22
  - ext/chipmunk/chipmunk_ffi.h
23
23
  - ext/chipmunk/chipmunk_private.h
@@ -35,22 +35,14 @@ files:
35
35
  - ext/chipmunk/constraints/cpSimpleMotor.h
36
36
  - ext/chipmunk/constraints/cpSlideJoint.h
37
37
  - ext/chipmunk/constraints/util.h
38
- - ext/chipmunk/cpArbiter.h
39
- - ext/chipmunk/cpBB.h
40
- - ext/chipmunk/cpBody.h
41
- - ext/chipmunk/cpPolyShape.h
42
- - ext/chipmunk/cpShape.h
43
- - ext/chipmunk/cpSpace.h
44
- - ext/chipmunk/cpSpatialIndex.h
45
- - ext/chipmunk/cpVect.h
46
- - ext/chipmunk/prime.h
47
- - ext/chipmunk/rb_chipmunk.h
48
- - ext/chipmunk/chipmunk.c
49
38
  - ext/chipmunk/cpArbiter.c
39
+ - ext/chipmunk/cpArbiter.h
50
40
  - ext/chipmunk/cpArray.c
51
41
  - ext/chipmunk/cpBB.c
42
+ - ext/chipmunk/cpBB.h
52
43
  - ext/chipmunk/cpBBTree.c
53
44
  - ext/chipmunk/cpBody.c
45
+ - ext/chipmunk/cpBody.h
54
46
  - ext/chipmunk/cpCollision.c
55
47
  - ext/chipmunk/cpConstraint.c
56
48
  - ext/chipmunk/cpDampedRotarySpring.c
@@ -61,20 +53,28 @@ files:
61
53
  - ext/chipmunk/cpPinJoint.c
62
54
  - ext/chipmunk/cpPivotJoint.c
63
55
  - ext/chipmunk/cpPolyShape.c
56
+ - ext/chipmunk/cpPolyShape.h
64
57
  - ext/chipmunk/cpRatchetJoint.c
65
58
  - ext/chipmunk/cpRotaryLimitJoint.c
66
59
  - ext/chipmunk/cpShape.c
60
+ - ext/chipmunk/cpShape.h
67
61
  - ext/chipmunk/cpSimpleMotor.c
68
62
  - ext/chipmunk/cpSlideJoint.c
69
63
  - ext/chipmunk/cpSpace.c
64
+ - ext/chipmunk/cpSpace.h
70
65
  - ext/chipmunk/cpSpaceComponent.c
71
66
  - ext/chipmunk/cpSpaceHash.c
72
67
  - ext/chipmunk/cpSpaceQuery.c
73
68
  - ext/chipmunk/cpSpaceStep.c
74
69
  - ext/chipmunk/cpSpatialIndex.c
70
+ - ext/chipmunk/cpSpatialIndex.h
75
71
  - ext/chipmunk/cpSweep1D.c
76
72
  - ext/chipmunk/cpVect.c
73
+ - ext/chipmunk/cpVect.h
74
+ - ext/chipmunk/extconf.rb
75
+ - ext/chipmunk/prime.h
77
76
  - ext/chipmunk/rb_chipmunk.c
77
+ - ext/chipmunk/rb_chipmunk.h
78
78
  - ext/chipmunk/rb_cpArbiter.c
79
79
  - ext/chipmunk/rb_cpBB.c
80
80
  - ext/chipmunk/rb_cpBody.c
@@ -82,33 +82,28 @@ files:
82
82
  - ext/chipmunk/rb_cpShape.c
83
83
  - ext/chipmunk/rb_cpSpace.c
84
84
  - ext/chipmunk/rb_cpVect.c
85
- - ext/chipmunk/extconf.rb
86
85
  homepage: https://github.com/beoran/chipmunk
87
86
  licenses:
88
87
  - MIT
88
+ metadata: {}
89
89
  post_install_message:
90
90
  rdoc_options: []
91
91
  require_paths:
92
92
  - lib
93
93
  required_ruby_version: !ruby/object:Gem::Requirement
94
- none: false
95
94
  requirements:
96
- - - ! '>='
95
+ - - '>='
97
96
  - !ruby/object:Gem::Version
98
97
  version: '0'
99
- segments:
100
- - 0
101
- hash: -4521143806321433034
102
98
  required_rubygems_version: !ruby/object:Gem::Requirement
103
- none: false
104
99
  requirements:
105
- - - ! '>'
100
+ - - '>='
106
101
  - !ruby/object:Gem::Version
107
- version: 1.3.1
102
+ version: '0'
108
103
  requirements: []
109
104
  rubyforge_project:
110
- rubygems_version: 1.8.25
105
+ rubygems_version: 2.2.2
111
106
  signing_key:
112
- specification_version: 3
107
+ specification_version: 4
113
108
  summary: Enhanced ruby bindings for the chipmunk 5.3.4 game physics engine.
114
109
  test_files: []