WPBDC 2013.1.9 → 2013.1.11
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/ext/WPBDC/WPBDC.c +18 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ZTgzMjhkMjY0YzBmMmJmOTc5MWRjYzI3NWI4YTM0ZTM1NDJjNWU0ZA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
YTk2YjU5MDlkOGQ4N2FhZThhOWYwYzA3MTY0NWU4ZjFmZGQ0YzFkZQ==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
MzJkMjI5ODZjOWJjOTk1MTM3OTY1MDdkMTU4OTgxNDgwNDBkMmEwMjc0MTU5
|
10
|
+
NmMxZmE1YTk1MDU4YjNiMzAxYWJjYmQ1OTg1Zjg0OTNkMjA2ZjBkNjg3NTM0
|
11
|
+
NzEzY2JiYjQwZTEzMmYwZGM1N2I1ODUzZDE4ODc2MjAwNmY3ZmI=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
ZjQ1OGNmYzU1ZjgyZmIwOWRkZjFlODNhNjM0NDRiMTFiOGE5YmVlMWU4MTBi
|
14
|
+
MzRjMzRhYTI3YTc3NWE4MjZjYzJkOTBiODNmMGI0YjE2NjlmOTNiNjgzNWYx
|
15
|
+
NjAwYmJmZmU4ZWMzN2M4NmFhYWE3NzM0ZDZhMDRiMjE4NzVkMjE=
|
data/ext/WPBDC/WPBDC.c
CHANGED
@@ -6,6 +6,7 @@
|
|
6
6
|
static VALUE rb_api_endecrypt(VALUE self, VALUE bridge_as_string)
|
7
7
|
#define ARGC_endecrypt 1
|
8
8
|
{
|
9
|
+
Check_Type(bridge_as_string, T_STRING);
|
9
10
|
INIT_STRING_FROM_VALUE(bridge_internal_string, bridge_as_string);
|
10
11
|
endecrypt(bridge_internal_string);
|
11
12
|
return bridge_as_string;
|
@@ -49,6 +50,7 @@ static void add_analysis_to_hash(VALUE hash, struct analysis_result_t *result)
|
|
49
50
|
static VALUE rb_api_analyze(VALUE self, VALUE bridge_as_string)
|
50
51
|
#define ARGC_analyze 1
|
51
52
|
{
|
53
|
+
Check_Type(bridge_as_string, T_STRING);
|
52
54
|
INIT_STRING_FROM_VALUE(bridge_internal_string, bridge_as_string);
|
53
55
|
struct analysis_result_t result[1];
|
54
56
|
VALUE hash = rb_hash_new();
|
@@ -60,6 +62,8 @@ static VALUE rb_api_analyze(VALUE self, VALUE bridge_as_string)
|
|
60
62
|
static VALUE rb_api_are_same(VALUE self, VALUE bridge_as_string_a, VALUE bridge_as_string_b)
|
61
63
|
#define ARGC_are_same 2
|
62
64
|
{
|
65
|
+
Check_Type(bridge_as_string_a, T_STRING);
|
66
|
+
Check_Type(bridge_as_string_b, T_STRING);
|
63
67
|
INIT_STRING_FROM_VALUE(bridge_internal_string_a, bridge_as_string_a);
|
64
68
|
INIT_STRING_FROM_VALUE(bridge_internal_string_b, bridge_as_string_b);
|
65
69
|
int cmp = compare(bridge_internal_string_a, bridge_internal_string_b);
|
@@ -79,6 +83,8 @@ static VALUE c_str_to_value(char *s)
|
|
79
83
|
static VALUE rb_api_variant(VALUE self, VALUE bridge_as_string, VALUE seed)
|
80
84
|
#define ARGC_variant 2
|
81
85
|
{
|
86
|
+
Check_Type(bridge_as_string, T_STRING);
|
87
|
+
Check_Type(seed, T_FIXNUM);
|
82
88
|
INIT_STRING_FROM_VALUE(bridge_internal_string, bridge_as_string);
|
83
89
|
char *result = variant(bridge_internal_string, FIX2INT(seed));
|
84
90
|
return c_str_to_value(result);
|
@@ -87,6 +93,8 @@ static VALUE rb_api_variant(VALUE self, VALUE bridge_as_string, VALUE seed)
|
|
87
93
|
static VALUE rb_api_failed_variant(VALUE self, VALUE bridge_as_string, VALUE seed)
|
88
94
|
#define ARGC_failed_variant 2
|
89
95
|
{
|
96
|
+
Check_Type(bridge_as_string, T_STRING);
|
97
|
+
Check_Type(seed, T_FIXNUM);
|
90
98
|
INIT_STRING_FROM_VALUE(bridge_internal_string, bridge_as_string);
|
91
99
|
char *result = failed_variant(bridge_internal_string, FIX2INT(seed));
|
92
100
|
return c_str_to_value(result);
|
@@ -95,6 +103,10 @@ static VALUE rb_api_failed_variant(VALUE self, VALUE bridge_as_string, VALUE see
|
|
95
103
|
static VALUE rb_api_perturbation(VALUE self, VALUE bridge_as_string, VALUE seed, VALUE n_joints, VALUE n_members)
|
96
104
|
#define ARGC_perturbation 4
|
97
105
|
{
|
106
|
+
Check_Type(bridge_as_string, T_STRING);
|
107
|
+
Check_Type(seed, T_FIXNUM);
|
108
|
+
Check_Type(n_joints, T_FIXNUM);
|
109
|
+
Check_Type(n_members, T_FIXNUM);
|
98
110
|
INIT_STRING_FROM_VALUE(bridge_internal_string, bridge_as_string);
|
99
111
|
char *result = perturbation(bridge_internal_string, FIX2INT(seed), FIX2INT(n_joints), FIX2INT(n_members));
|
100
112
|
return c_str_to_value(result);
|
@@ -103,11 +115,13 @@ static VALUE rb_api_perturbation(VALUE self, VALUE bridge_as_string, VALUE seed,
|
|
103
115
|
static VALUE rb_api_sketch(VALUE self, VALUE bridge_as_string, VALUE width, VALUE height)
|
104
116
|
#define ARGC_sketch 3
|
105
117
|
{
|
118
|
+
Check_Type(bridge_as_string, T_STRING);
|
119
|
+
Check_Type(width, T_FIXNUM);
|
120
|
+
Check_Type(height, T_FIXNUM);
|
106
121
|
INIT_STRING_FROM_VALUE(bridge_internal_string, bridge_as_string);
|
107
122
|
COMPRESSED_IMAGE compressed_image[1];
|
108
123
|
struct analysis_result_t result[1];
|
109
124
|
VALUE hash = rb_hash_new();
|
110
|
-
|
111
125
|
init_compressed_image(compressed_image);
|
112
126
|
sketch(bridge_internal_string, FIX2INT(width), FIX2INT(height), compressed_image, result);
|
113
127
|
|
@@ -134,6 +148,7 @@ static VALUE rb_api_sketch(VALUE self, VALUE bridge_as_string, VALUE width, VALU
|
|
134
148
|
static VALUE rb_api_analysis_table(VALUE self, VALUE bridge_as_string)
|
135
149
|
#define ARGC_analysis_table 1
|
136
150
|
{
|
151
|
+
Check_Type(bridge_as_string, T_STRING);
|
137
152
|
INIT_STRING_FROM_VALUE(bridge_internal_string, bridge_as_string);
|
138
153
|
char *result = analysis_table(bridge_internal_string);
|
139
154
|
return c_str_to_value(result);
|
@@ -142,8 +157,9 @@ static VALUE rb_api_analysis_table(VALUE self, VALUE bridge_as_string)
|
|
142
157
|
static VALUE rb_api_local_contest_number_to_id(VALUE self, VALUE number_as_string)
|
143
158
|
#define ARGC_local_contest_number_to_id 1
|
144
159
|
{
|
160
|
+
Check_Type(number_as_string, T_STRING);
|
145
161
|
INIT_STRING_FROM_VALUE(number_internal_string, number_as_string);
|
146
|
-
char *
|
162
|
+
char *result = get_local_contest_number(number_internal_string);
|
147
163
|
// Don't use c_str_to_value here because result is static.
|
148
164
|
return result ? rb_str_new2(result) : Qnil;
|
149
165
|
}
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: WPBDC
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2013.1.
|
4
|
+
version: 2013.1.11
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gene Ressler
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-07-
|
11
|
+
date: 2013-07-14 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Container for C code extension that implements the West Point Bridge
|
14
14
|
Contest Judge.
|