rice-jdguyot 1.4.0.p1 → 1.4.0
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/extconf.rb +5 -1
- data/rice/Address_Registration_Guard.ipp +1 -4
- data/rice/Address_Registration_Guard_defn.hpp +0 -10
- data/rice/Makefile.am +0 -1
- data/rice/Makefile.in +8 -11
- data/rice/String.cpp +2 -2
- data/rice/to_from_ruby.ipp +7 -4
- data/ruby/lib/version.rb +1 -1
- data/test/test_To_From_Ruby.cpp +0 -14
- metadata +10 -12
- data/rice/Address_Registration_Guard.cpp +0 -22
- data/rice/config.hpp +0 -41
- data/rice/detail/ruby_version_code.hpp +0 -6
data/extconf.rb
CHANGED
@@ -14,9 +14,13 @@
|
|
14
14
|
$:.unshift File.expand_path(File.dirname(__FILE__))
|
15
15
|
|
16
16
|
require 'rbconfig'
|
17
|
+
require 'rubygems'
|
17
18
|
require 'ruby/lib/version.rb'
|
18
19
|
|
19
|
-
|
20
|
+
gem_name = "rice-#{Rice::VERSION}"
|
21
|
+
|
22
|
+
gem_base_dir = File.writable?(Gem.default_dir) ? Gem.default_dir : Gem.user_dir
|
23
|
+
prefix_dir = File.join(gem_base_dir, "gems", gem_name, "ruby", "lib")
|
20
24
|
with_ruby = File.join(Config::CONFIG["bindir"], Config::CONFIG["RUBY_INSTALL_NAME"])
|
21
25
|
|
22
26
|
other_opts = ""
|
@@ -5,7 +5,6 @@ inline Rice::Address_Registration_Guard::
|
|
5
5
|
Address_Registration_Guard(VALUE * address)
|
6
6
|
: address_(address)
|
7
7
|
{
|
8
|
-
registerExitHandler();
|
9
8
|
rb_gc_register_address(address);
|
10
9
|
}
|
11
10
|
|
@@ -13,15 +12,13 @@ inline Rice::Address_Registration_Guard::
|
|
13
12
|
Address_Registration_Guard(Object * object)
|
14
13
|
: address_(const_cast<VALUE *>(&object->value()))
|
15
14
|
{
|
16
|
-
registerExitHandler();
|
17
15
|
rb_gc_register_address(address_);
|
18
16
|
}
|
19
17
|
|
20
18
|
inline Rice::Address_Registration_Guard::
|
21
19
|
~Address_Registration_Guard()
|
22
20
|
{
|
23
|
-
|
24
|
-
rb_gc_unregister_address(address_);
|
21
|
+
rb_gc_unregister_address(address_);
|
25
22
|
}
|
26
23
|
|
27
24
|
inline VALUE * Rice::Address_Registration_Guard::
|
@@ -56,17 +56,7 @@ public:
|
|
56
56
|
//! Swap with another Address_Registration_Guard.
|
57
57
|
void swap(Address_Registration_Guard & other);
|
58
58
|
|
59
|
-
/** Called during Ruby's exit process since we should not call
|
60
|
-
* rb_gc unregister_address there
|
61
|
-
*/
|
62
|
-
static void disable();
|
63
|
-
|
64
59
|
private:
|
65
|
-
static bool enabled;
|
66
|
-
static bool exit_handler_registered;
|
67
|
-
|
68
|
-
static void registerExitHandler();
|
69
|
-
|
70
60
|
VALUE * address_;
|
71
61
|
};
|
72
62
|
|
data/rice/Makefile.am
CHANGED
data/rice/Makefile.in
CHANGED
@@ -61,9 +61,8 @@ am_librice_a_OBJECTS = Class.$(OBJEXT) Data_Type.$(OBJEXT) \
|
|
61
61
|
Director.$(OBJEXT) Exception.$(OBJEXT) Identifier.$(OBJEXT) \
|
62
62
|
Module.$(OBJEXT) Object.$(OBJEXT) String.$(OBJEXT) \
|
63
63
|
Struct.$(OBJEXT) Symbol.$(OBJEXT) VM.$(OBJEXT) \
|
64
|
-
Arg_operators.$(OBJEXT)
|
65
|
-
|
66
|
-
method_data.$(OBJEXT) protect.$(OBJEXT)
|
64
|
+
Arg_operators.$(OBJEXT) check_ruby_type.$(OBJEXT) \
|
65
|
+
demangle.$(OBJEXT) method_data.$(OBJEXT) protect.$(OBJEXT)
|
67
66
|
librice_a_OBJECTS = $(am_librice_a_OBJECTS)
|
68
67
|
DEFAULT_INCLUDES = -I.@am__isrc@
|
69
68
|
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
@@ -223,7 +222,6 @@ Struct.cpp \
|
|
223
222
|
Symbol.cpp \
|
224
223
|
VM.cpp \
|
225
224
|
Arg_operators.cpp \
|
226
|
-
Address_Registration_Guard.cpp \
|
227
225
|
detail/check_ruby_type.cpp \
|
228
226
|
detail/demangle.cpp \
|
229
227
|
detail/method_data.cpp \
|
@@ -425,7 +423,6 @@ mostlyclean-compile:
|
|
425
423
|
distclean-compile:
|
426
424
|
-rm -f *.tab.c
|
427
425
|
|
428
|
-
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Address_Registration_Guard.Po@am__quote@
|
429
426
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Arg_operators.Po@am__quote@
|
430
427
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Class.Po@am__quote@
|
431
428
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Data_Type.Po@am__quote@
|
@@ -588,8 +585,8 @@ distdir: $(DISTFILES)
|
|
588
585
|
sed -e "s|^$$srcdirstrip/||;t" \
|
589
586
|
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
590
587
|
case $$dist_files in \
|
591
|
-
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
592
|
-
sed '/\//!d;s
|
588
|
+
*/*) eval $(MKDIR_P) `echo "$$dist_files" | \
|
589
|
+
sed '/\//!d;s|^|"$(distdir)"/|;s,/[^/]*$$,,' | \
|
593
590
|
sort -u` ;; \
|
594
591
|
esac; \
|
595
592
|
for file in $$dist_files; do \
|
@@ -597,12 +594,12 @@ distdir: $(DISTFILES)
|
|
597
594
|
if test -d $$d/$$file; then \
|
598
595
|
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
599
596
|
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
600
|
-
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
597
|
+
cp -pR $(srcdir)/$$file "$(distdir)"$$dir || exit 1; \
|
601
598
|
fi; \
|
602
|
-
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
|
599
|
+
cp -pR $$d/$$file "$(distdir)"$$dir || exit 1; \
|
603
600
|
else \
|
604
|
-
test -f $(distdir)/$$file \
|
605
|
-
|| cp -p $$d/$$file $(distdir)/$$file \
|
601
|
+
test -f "$(distdir)"/$$file \
|
602
|
+
|| cp -p $$d/$$file "$(distdir)"/$$file \
|
606
603
|
|| exit 1; \
|
607
604
|
fi; \
|
608
605
|
done
|
data/rice/String.cpp
CHANGED
@@ -37,7 +37,7 @@ String(char const * s)
|
|
37
37
|
|
38
38
|
Rice::String::
|
39
39
|
String(std::string const & s)
|
40
|
-
: Builtin_Object<RString, T_STRING>(protect(rb_str_new, s.
|
40
|
+
: Builtin_Object<RString, T_STRING>(protect(rb_str_new, s.c_str(), s.length()))
|
41
41
|
{
|
42
42
|
}
|
43
43
|
|
@@ -83,7 +83,7 @@ c_str() const
|
|
83
83
|
std::string Rice::String::
|
84
84
|
str() const
|
85
85
|
{
|
86
|
-
return
|
86
|
+
return RSTRING_PTR(value());
|
87
87
|
}
|
88
88
|
|
89
89
|
Rice::Identifier Rice::String::
|
data/rice/to_from_ruby.ipp
CHANGED
@@ -261,7 +261,10 @@ template<>
|
|
261
261
|
inline
|
262
262
|
char const * from_ruby<char const *>(Rice::Object x)
|
263
263
|
{
|
264
|
-
|
264
|
+
// TODO: Maybe not the right way to do this conversion (what happens
|
265
|
+
// if the object gets GC'd?)
|
266
|
+
VALUE v(x.value());
|
267
|
+
return (char const *)Rice::protect<char const *>(rb_string_value_cstr, &v);
|
265
268
|
}
|
266
269
|
|
267
270
|
template<>
|
@@ -276,19 +279,19 @@ template<>
|
|
276
279
|
inline
|
277
280
|
std::string from_ruby<std::string>(Rice::Object x)
|
278
281
|
{
|
279
|
-
return
|
282
|
+
return std::string(from_ruby<char const *>(x));
|
280
283
|
}
|
281
284
|
|
282
285
|
template<>
|
283
286
|
inline
|
284
287
|
Rice::Object to_ruby<std::string>(std::string const & x)
|
285
288
|
{
|
286
|
-
return
|
289
|
+
return to_ruby(x.c_str());
|
287
290
|
}
|
288
291
|
|
289
292
|
template<>
|
290
293
|
inline
|
291
294
|
std::string* from_ruby<std::string* >(Rice::Object x)
|
292
295
|
{
|
293
|
-
return new std::string(
|
296
|
+
return new std::string(from_ruby<char const *>(x));
|
294
297
|
}
|
data/ruby/lib/version.rb
CHANGED
data/test/test_To_From_Ruby.cpp
CHANGED
@@ -261,17 +261,3 @@ TESTCASE(std_string_from_ruby)
|
|
261
261
|
ASSERT_EQUAL(std::string("foo"), from_ruby<std::string>(rb_str_new2("foo")));
|
262
262
|
}
|
263
263
|
|
264
|
-
TESTCASE(std_string_to_ruby_with_binary)
|
265
|
-
{
|
266
|
-
Rice::String got = to_ruby(std::string("\000test", 5));
|
267
|
-
|
268
|
-
ASSERT_EQUAL(String(std::string("\000test", 5)), got);
|
269
|
-
ASSERT_EQUAL(5, got.length());
|
270
|
-
}
|
271
|
-
|
272
|
-
TESTCASE(std_string_from_ruby_with_binary)
|
273
|
-
{
|
274
|
-
std::string got = from_ruby<std::string>(rb_str_new("\000test", 5));
|
275
|
-
ASSERT_EQUAL(5, got.length());
|
276
|
-
ASSERT_EQUAL(std::string("\000test", 5), got);
|
277
|
-
}
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rice-jdguyot
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
4
|
+
hash: 7
|
5
|
+
prerelease: false
|
5
6
|
segments:
|
6
7
|
- 1
|
7
8
|
- 4
|
8
9
|
- 0
|
9
|
-
|
10
|
-
version: 1.4.0.p1
|
10
|
+
version: 1.4.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Paul Brannan
|
@@ -16,7 +16,7 @@ autorequire:
|
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
18
|
|
19
|
-
date: 2010-
|
19
|
+
date: 2010-09-16 00:00:00 +02:00
|
20
20
|
default_executable:
|
21
21
|
dependencies:
|
22
22
|
- !ruby/object:Gem::Dependency
|
@@ -27,6 +27,7 @@ dependencies:
|
|
27
27
|
requirements:
|
28
28
|
- - ">="
|
29
29
|
- !ruby/object:Gem::Version
|
30
|
+
hash: 3
|
30
31
|
segments:
|
31
32
|
- 0
|
32
33
|
version: "0"
|
@@ -81,7 +82,6 @@ files:
|
|
81
82
|
- sample/Makefile.in
|
82
83
|
- test/Makefile.am
|
83
84
|
- test/Makefile.in
|
84
|
-
- rice/Address_Registration_Guard.cpp
|
85
85
|
- rice/Address_Registration_Guard.hpp
|
86
86
|
- rice/Address_Registration_Guard.ipp
|
87
87
|
- rice/Address_Registration_Guard_defn.hpp
|
@@ -99,7 +99,6 @@ files:
|
|
99
99
|
- rice/Class.hpp
|
100
100
|
- rice/Class.ipp
|
101
101
|
- rice/Class_defn.hpp
|
102
|
-
- rice/config.hpp
|
103
102
|
- rice/Constructor.hpp
|
104
103
|
- rice/Critical_Guard.hpp
|
105
104
|
- rice/Critical_Guard.ipp
|
@@ -195,7 +194,6 @@ files:
|
|
195
194
|
- rice/detail/protect.cpp
|
196
195
|
- rice/detail/protect.hpp
|
197
196
|
- rice/detail/ruby.hpp
|
198
|
-
- rice/detail/ruby_version_code.hpp
|
199
197
|
- rice/detail/rubysig.hpp
|
200
198
|
- rice/detail/st.hpp
|
201
199
|
- rice/detail/to_ruby.hpp
|
@@ -265,19 +263,19 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
265
263
|
requirements:
|
266
264
|
- - ">="
|
267
265
|
- !ruby/object:Gem::Version
|
266
|
+
hash: 3
|
268
267
|
segments:
|
269
268
|
- 0
|
270
269
|
version: "0"
|
271
270
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
272
271
|
none: false
|
273
272
|
requirements:
|
274
|
-
- - "
|
273
|
+
- - ">="
|
275
274
|
- !ruby/object:Gem::Version
|
275
|
+
hash: 3
|
276
276
|
segments:
|
277
|
-
-
|
278
|
-
|
279
|
-
- 1
|
280
|
-
version: 1.3.1
|
277
|
+
- 0
|
278
|
+
version: "0"
|
281
279
|
requirements: []
|
282
280
|
|
283
281
|
rubyforge_project: rice
|
@@ -1,22 +0,0 @@
|
|
1
|
-
#include "Address_Registration_Guard.hpp"
|
2
|
-
|
3
|
-
bool Rice::Address_Registration_Guard::enabled = true;
|
4
|
-
bool Rice::Address_Registration_Guard::exit_handler_registered = false;
|
5
|
-
|
6
|
-
static void disable_all_guards(VALUE)
|
7
|
-
{
|
8
|
-
Rice::Address_Registration_Guard::disable();
|
9
|
-
}
|
10
|
-
|
11
|
-
void Rice::Address_Registration_Guard::registerExitHandler()
|
12
|
-
{
|
13
|
-
if (exit_handler_registered) return;
|
14
|
-
rb_set_end_proc(&disable_all_guards, Qnil);
|
15
|
-
exit_handler_registered = true;
|
16
|
-
}
|
17
|
-
|
18
|
-
void Rice::Address_Registration_Guard::disable()
|
19
|
-
{
|
20
|
-
enabled = false;
|
21
|
-
}
|
22
|
-
|
data/rice/config.hpp
DELETED
@@ -1,41 +0,0 @@
|
|
1
|
-
/* rice/config.hpp. Generated from config.hpp.in by configure. */
|
2
|
-
/* rice/config.hpp.in. Generated from configure.ac by autoheader. */
|
3
|
-
|
4
|
-
/* Define to 1 if you have the <env.h> header file. */
|
5
|
-
/* #undef HAVE_ENV_H */
|
6
|
-
|
7
|
-
/* Define to 1 if you have the <node.h> header file. */
|
8
|
-
/* #undef HAVE_NODE_H */
|
9
|
-
|
10
|
-
/* Define to 1 if you have the <ruby.h> header file. */
|
11
|
-
#define HAVE_RUBY_H 1
|
12
|
-
|
13
|
-
/* Define to 1 if you have the <ruby/node.h> header file. */
|
14
|
-
/* #undef HAVE_RUBY_NODE_H */
|
15
|
-
|
16
|
-
/* Define to 1 if you have the <version.h> header file. */
|
17
|
-
/* #undef HAVE_VERSION_H */
|
18
|
-
|
19
|
-
/* Name of package */
|
20
|
-
#define PACKAGE "rice"
|
21
|
-
|
22
|
-
/* Define to the address where bug reports for this package should be sent. */
|
23
|
-
#define PACKAGE_BUGREPORT ""
|
24
|
-
|
25
|
-
/* Define to the full name of this package. */
|
26
|
-
#define PACKAGE_NAME "rice"
|
27
|
-
|
28
|
-
/* Define to the full name and version of this package. */
|
29
|
-
#define PACKAGE_STRING "rice 1.1"
|
30
|
-
|
31
|
-
/* Define to the one symbol short name of this package. */
|
32
|
-
#define PACKAGE_TARNAME "rice"
|
33
|
-
|
34
|
-
/* Define to the version of this package. */
|
35
|
-
#define PACKAGE_VERSION "1.1"
|
36
|
-
|
37
|
-
/* Define this macro to use ruby/node.h */
|
38
|
-
/* #undef REALLY_HAVE_RUBY_NODE_H */
|
39
|
-
|
40
|
-
/* Version number of package */
|
41
|
-
#define VERSION "1.1"
|