rice 1.0.2 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/COPYING +2 -2
- data/Doxyfile +1 -1
- data/Makefile.in +8 -3
- data/Rakefile +3 -3
- data/config.guess +30 -49
- data/config.sub +4 -22
- data/configure +319 -104
- data/configure.ac +6 -2
- data/doxygen.ac +2 -2
- data/extconf.rb +22 -0
- data/post-autoconf.rb +3 -3
- data/post-automake.rb +2 -2
- data/rice/Array.ipp +7 -6
- data/rice/Critical_Guard.hpp +6 -0
- data/rice/Critical_Guard.ipp +6 -0
- data/rice/Data_Object.hpp +1 -120
- data/rice/Data_Object.ipp +5 -1
- data/rice/Data_Object_defn.hpp +132 -0
- data/rice/Data_Type.ipp +18 -2
- data/rice/Enum.ipp +3 -3
- data/rice/Exception.hpp +1 -61
- data/rice/Exception_Base.hpp +2 -24
- data/rice/Exception_Base.ipp +2 -0
- data/rice/Exception_Base_defn.hpp +27 -0
- data/rice/Exception_defn.hpp +69 -0
- data/rice/Hash.hpp +5 -1
- data/rice/Hash.ipp +7 -7
- data/rice/Makefile.am +20 -3
- data/rice/Makefile.in +39 -4
- data/rice/Module.cpp +11 -3
- data/rice/Module_impl.hpp +20 -9
- data/rice/Module_impl.ipp +84 -87
- data/rice/Object.cpp +1 -1
- data/rice/VM.cpp +14 -1
- data/rice/VM.hpp +6 -1
- data/rice/config.hpp +24 -3
- data/rice/config.hpp.in +21 -0
- data/rice/detail/Auto_Function_Wrapper.hpp +97 -65
- data/rice/detail/Auto_Function_Wrapper.ipp +160 -128
- data/rice/detail/Auto_Member_Function_Wrapper.hpp +96 -64
- data/rice/detail/Auto_Member_Function_Wrapper.ipp +160 -128
- data/rice/detail/Exception_Handler.hpp +2 -112
- data/rice/detail/Exception_Handler.ipp +68 -0
- data/rice/detail/Exception_Handler_defn.hpp +96 -0
- data/rice/detail/Iterator.hpp +93 -0
- data/rice/detail/check_ruby_type.cpp +8 -2
- data/rice/detail/creation_funcs.ipp +2 -2
- data/rice/detail/define_method_and_auto_wrap.hpp +4 -2
- data/rice/detail/define_method_and_auto_wrap.ipp +14 -5
- data/rice/detail/env.hpp +4 -0
- data/rice/detail/method_data.cpp +362 -75
- data/rice/detail/method_data.cpp.rpp +301 -0
- data/rice/detail/method_data.hpp +6 -18
- data/rice/detail/mininode.cpp +1220 -0
- data/rice/detail/mininode.cpp.rpp +62 -0
- data/rice/detail/mininode.hpp +320 -0
- data/rice/detail/mininode.hpp.rpp +119 -0
- data/rice/detail/protect.cpp +4 -2
- data/rice/detail/ruby.hpp +44 -18
- data/rice/detail/ruby_version_code.hpp +6 -0
- data/rice/detail/ruby_version_code.hpp.in +6 -0
- data/rice/detail/rubysig.hpp +6 -0
- data/rice/detail/st.hpp +6 -2
- data/rice/detail/wrap_function.hpp +50 -48
- data/rice/detail/wrap_function.ipp +48 -48
- data/rice/generate_code.rb +43 -293
- data/rice/global_function.hpp +10 -4
- data/rice/global_function.ipp +1 -2
- data/rice/ruby_mark.hpp +13 -0
- data/rice/ruby_try_catch.hpp +1 -1
- data/rice/rubypp.rb +97 -0
- data/rice/to_from_ruby.ipp +3 -3
- data/ruby.ac +44 -8
- data/ruby/Makefile.in +2 -0
- data/ruby/lib/Makefile.in +2 -0
- data/ruby/lib/mkmf-rice.rb.in +4 -1
- data/ruby/lib/version.rb +3 -0
- data/sample/Makefile.am +2 -2
- data/sample/Makefile.in +4 -2
- data/test/Makefile.am +2 -1
- data/test/Makefile.in +7 -2
- data/test/test_Array.cpp +2 -2
- data/test/test_Class.cpp +4 -1
- data/test/test_Critical_Guard.cpp +4 -0
- data/test/test_Data_Object.cpp +43 -3
- data/test/test_Hash.cpp +3 -3
- data/test/test_String.cpp +8 -8
- data/test/test_VM.cpp +1 -1
- data/test/test_global_functions.cpp +45 -0
- data/test/test_rice.rb +5 -0
- metadata +115 -98
- data/rice/detail/Iterator_Definer.hpp +0 -98
data/rice/global_function.hpp
CHANGED
@@ -4,10 +4,16 @@
|
|
4
4
|
namespace Rice
|
5
5
|
{
|
6
6
|
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
7
|
+
/**
|
8
|
+
* Helper forwarder method to easily wrap
|
9
|
+
* globally available functions. This simply
|
10
|
+
* forwards off a call to define_module_function
|
11
|
+
* on rb_mKernel
|
12
|
+
*/
|
13
|
+
template<typename Func_T>
|
14
|
+
void define_global_function(
|
15
|
+
char const * name,
|
16
|
+
Func_T func);
|
11
17
|
|
12
18
|
} // Rice
|
13
19
|
|
data/rice/global_function.ipp
CHANGED
data/rice/ruby_mark.hpp
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
#ifndef ruby_mark__hpp
|
2
|
+
#define ruby_mark__hpp
|
3
|
+
|
4
|
+
//! Default function to call to mark a data object.
|
5
|
+
/*! This function can be specialized for a particular type to override
|
6
|
+
* the default behavior (which is to not mark any additional objects).
|
7
|
+
*/
|
8
|
+
template<typename T>
|
9
|
+
void ruby_mark(T * obj)
|
10
|
+
{
|
11
|
+
}
|
12
|
+
|
13
|
+
#endif // ruby_mark__hpp
|
data/rice/ruby_try_catch.hpp
CHANGED
data/rice/rubypp.rb
ADDED
@@ -0,0 +1,97 @@
|
|
1
|
+
class Preprocessor
|
2
|
+
def initialize(input, output, filename)
|
3
|
+
@input = input
|
4
|
+
@output = output
|
5
|
+
@filename = filename
|
6
|
+
@linenum = 1
|
7
|
+
end
|
8
|
+
|
9
|
+
def getline
|
10
|
+
line = @input.gets
|
11
|
+
@linenum += 1 if not line.nil?
|
12
|
+
return line
|
13
|
+
end
|
14
|
+
|
15
|
+
def preprocess
|
16
|
+
success = false
|
17
|
+
begin
|
18
|
+
loop do
|
19
|
+
line = getline
|
20
|
+
break if line.nil?
|
21
|
+
case line
|
22
|
+
when /(.*[^\\]|^)\#\{(.*?)\}(.*)/
|
23
|
+
puts "#{$1}#{evaluate($2, @linenum)}#{$3}"
|
24
|
+
when /^\#ruby\s+<<(.*)/
|
25
|
+
marker = $1
|
26
|
+
str = ''
|
27
|
+
evalstart = @linenum
|
28
|
+
loop do
|
29
|
+
line = getline
|
30
|
+
if line.nil? then
|
31
|
+
raise "End of input without #{marker}"
|
32
|
+
end
|
33
|
+
break if line.chomp == marker
|
34
|
+
str << line
|
35
|
+
end
|
36
|
+
result = evaluate(str, evalstart)
|
37
|
+
puts result if not result.nil?
|
38
|
+
when /^\#ruby\s+(.*)/
|
39
|
+
str = line = $1
|
40
|
+
while line[-1] == ?\\
|
41
|
+
str.chop!
|
42
|
+
line = getline
|
43
|
+
break if line.nil?
|
44
|
+
line.chomp!
|
45
|
+
str << line
|
46
|
+
end
|
47
|
+
result = evaluate(str, @linenum)
|
48
|
+
puts result if not result.nil?
|
49
|
+
else
|
50
|
+
puts line
|
51
|
+
end
|
52
|
+
end
|
53
|
+
success = true
|
54
|
+
ensure
|
55
|
+
if not success then
|
56
|
+
$stderr.puts "Error on line #{@linenum}:"
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
def evaluate(str, linenum)
|
62
|
+
result = eval(str, TOPLEVEL_BINDING, @filename, linenum)
|
63
|
+
success = true
|
64
|
+
return result
|
65
|
+
end
|
66
|
+
|
67
|
+
def puts(line='')
|
68
|
+
@output.puts(line)
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
def puts(line='')
|
73
|
+
$preprocessor.puts(line)
|
74
|
+
end
|
75
|
+
|
76
|
+
def rubypp(input_file, output_file)
|
77
|
+
input = input_file ? File.open(input_file) : $stdin
|
78
|
+
output = output_file ? File.open(output_file, 'w') : $stdout
|
79
|
+
|
80
|
+
success = false
|
81
|
+
begin
|
82
|
+
$preprocessor = Preprocessor.new(input, output, input_file || "(stdin)")
|
83
|
+
$preprocessor.preprocess()
|
84
|
+
success = true
|
85
|
+
ensure
|
86
|
+
if not success then
|
87
|
+
File.unlink(output_file) rescue Errno::ENOENT
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
91
|
+
|
92
|
+
if __FILE__ == $0 then
|
93
|
+
input_file = ARGV[0]
|
94
|
+
output_file = ARGV[1]
|
95
|
+
rubypp(input_file, output_file)
|
96
|
+
end
|
97
|
+
|
data/rice/to_from_ruby.ipp
CHANGED
@@ -164,9 +164,9 @@ char from_ruby<char>(Rice::Object x)
|
|
164
164
|
{
|
165
165
|
if(x.rb_type() == T_STRING)
|
166
166
|
{
|
167
|
-
if(
|
167
|
+
if(RSTRING_LEN(x.value()) == 0)
|
168
168
|
{
|
169
|
-
return
|
169
|
+
return RSTRING_PTR(x.value())[0];
|
170
170
|
}
|
171
171
|
else
|
172
172
|
{
|
@@ -263,7 +263,7 @@ namespace Rice
|
|
263
263
|
{
|
264
264
|
inline VALUE str2ccstr(VALUE x)
|
265
265
|
{
|
266
|
-
return (VALUE)(
|
266
|
+
return (VALUE)(StringValuePtr(x));
|
267
267
|
}
|
268
268
|
}
|
269
269
|
}
|
data/ruby.ac
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
dnl Get a key from ruby's configuration table
|
2
|
-
AC_DEFUN([RUBY_CONFIG], [
|
2
|
+
AC_DEFUN([RUBY_CONFIG], [
|
3
|
+
$RUBY -rrbconfig -e "puts(Config::CONFIG[['$1']] || '')"])
|
3
4
|
|
4
5
|
AC_DEFUN([RB_INIT_RUBY], [
|
5
6
|
|
@@ -20,9 +21,15 @@ AC_ARG_WITH(
|
|
20
21
|
|
21
22
|
AC_SUBST(RUBY)
|
22
23
|
|
24
|
+
RUBY_VERSION_CODE=`$RUBY -e "puts RUBY_VERSION.gsub(/\./, '')"`
|
25
|
+
AC_SUBST(RUBY_VERSION_CODE)
|
26
|
+
|
27
|
+
RUBY_CONFIG_SO_NAME=`RUBY_CONFIG(RUBY_SO_NAME)`
|
23
28
|
RUBY_CONFIG_ARCHDIR=`RUBY_CONFIG(archdir)`
|
29
|
+
RUBY_CONFIG_ARCH=`RUBY_CONFIG(arch)`
|
24
30
|
RUBY_CONFIG_LIBDIR=`RUBY_CONFIG(libdir)`
|
25
31
|
RUBY_CONFIG_BINDIR=`RUBY_CONFIG(bindir)`
|
32
|
+
RUBY_CONFIG_RUBYHDRDIR=`RUBY_CONFIG(rubyhdrdir)`
|
26
33
|
RUBY_CONFIG_CFLAGS=`RUBY_CONFIG(CFLAGS)`
|
27
34
|
RUBY_CONFIG_LIBS=`RUBY_CONFIG(LIBS)`
|
28
35
|
RUBY_CONFIG_DLDLIBS=`RUBY_CONFIG(DLDLIBS)`
|
@@ -31,7 +38,14 @@ RUBY_CONFIG_LIBRUBYARG=`RUBY_CONFIG(LIBRUBYARG)`
|
|
31
38
|
RUBY_CONFIG_LIBRUBYARG_STATIC=`RUBY_CONFIG(LIBRUBYARG_STATIC)`
|
32
39
|
RUBY_CONFIG_CCDLFLAGS=`RUBY_CONFIG(CCDLFLAGS)`
|
33
40
|
|
34
|
-
|
41
|
+
if test "x${RUBY_CONFIG_RUBYHDRDIR}x" != "xx"; then
|
42
|
+
# 1.9
|
43
|
+
RUBY_CPPFLAGS="-I${RUBY_CONFIG_RUBYHDRDIR}"
|
44
|
+
RUBY_CPPFLAGS="${RUBY_CPPFLAGS} -I${RUBY_CONFIG_RUBYHDRDIR}/${RUBY_CONFIG_ARCH}"
|
45
|
+
else
|
46
|
+
# 1.8
|
47
|
+
RUBY_CPPFLAGS="-I${RUBY_CONFIG_ARCHDIR}"
|
48
|
+
fi
|
35
49
|
AC_SUBST(RUBY_CPPFLAGS)
|
36
50
|
|
37
51
|
RUBY_CFLAGS="${RUBY_CONFIG_CFLAGS} ${RUBY_CONFIG_CCDLFLAGS}"
|
@@ -40,7 +54,7 @@ AC_SUBST(RUBY_CFLAGS)
|
|
40
54
|
RUBY_CXXFLAGS="${RUBY_CONFIG_CFLAGS} ${RUBY_CONFIG_CCDLFLAGS}"
|
41
55
|
AC_SUBST(RUBY_CXXFLAGS)
|
42
56
|
|
43
|
-
RUBY_LDFLAGS="-L${
|
57
|
+
RUBY_LDFLAGS="-L${RUBY_CONFIG_ARCHDIR} -L${RUBY_CONFIG_LIBDIR} ${RUBY_CONFIG_LDFLAGS}"
|
44
58
|
AC_SUBST(RUBY_LDFLAGS)
|
45
59
|
|
46
60
|
RUBY_LIBS="${RUBY_CONFIG_LIBS} ${RUBY_CONFIG_DLDLIBS}"
|
@@ -75,16 +89,38 @@ dnl searching for standard header files as a side-effect (which we want)
|
|
75
89
|
CPPFLAGS_save="${CPPFLAGS}"
|
76
90
|
CPPFLAGS="${CPPFLAGS} ${RUBY_CPPFLAGS}"
|
77
91
|
CXXFLAGS="${CPPFLAGS}"
|
78
|
-
|
92
|
+
AC_CHECK_HEADERS(ruby.h,,AC_MSG_ERROR(
|
79
93
|
could not find ruby.h (check config.log)),[ ])
|
80
|
-
|
81
|
-
|
94
|
+
AC_CHECK_HEADERS(node.h,,,[
|
95
|
+
#include <ruby.h>
|
96
|
+
])
|
97
|
+
AC_CHECK_HEADERS(ruby/node.h,
|
98
|
+
[ AC_DEFINE(REALLY_HAVE_RUBY_NODE_H, [],
|
99
|
+
[ Define this macro to use ruby/node.h ]) ],
|
100
|
+
,[
|
101
|
+
#include <ruby.h>
|
102
|
+
])
|
103
|
+
AC_CHECK_HEADERS(version.h,,,[
|
82
104
|
#include <ruby.h>
|
83
105
|
])
|
84
|
-
|
85
|
-
could not find version.h (check config.log)),[
|
106
|
+
AC_CHECK_HEADERS(env.h,,,[
|
86
107
|
#include <ruby.h>
|
87
108
|
])
|
109
|
+
|
110
|
+
dnl We need to set the LD flags to include the path to this Ruby's
|
111
|
+
dnl library path so that this library check will work for ruby installs
|
112
|
+
dnl sitting in unconvential locations
|
113
|
+
save_ldflags="$LDFLAGS"
|
114
|
+
LDFLAGS="$RUBY_LDFLAGS"
|
115
|
+
|
116
|
+
AC_CHECK_LIB($RUBY_CONFIG_SO_NAME,
|
117
|
+
rb_class_boot,
|
118
|
+
[ AC_DEFINE(HAVE_RB_CLASS_BOOT, [], [
|
119
|
+
Define this macro if rb_class_boot is defined ]) ] )
|
120
|
+
|
121
|
+
LDFLAGS="$save_ldflags"
|
122
|
+
|
123
|
+
|
88
124
|
CPPFLAGS="${CPPFLAGS_save}"
|
89
125
|
|
90
126
|
AC_MINGW32
|
data/ruby/Makefile.in
CHANGED
@@ -119,6 +119,7 @@ PATH_SEPARATOR = @PATH_SEPARATOR@
|
|
119
119
|
RANLIB = @RANLIB@
|
120
120
|
RICE_CPPFLAGS = @RICE_CPPFLAGS@
|
121
121
|
RICE_LDFLAGS = @RICE_LDFLAGS@
|
122
|
+
RICE_ROOT = @RICE_ROOT@
|
122
123
|
RICE_SAMPLES = @RICE_SAMPLES@
|
123
124
|
RICE_USING_MINGW32 = @RICE_USING_MINGW32@
|
124
125
|
RUBY = @RUBY@
|
@@ -130,6 +131,7 @@ RUBY_LIBRUBYARG = @RUBY_LIBRUBYARG@
|
|
130
131
|
RUBY_LIBRUBYARG_STATIC = @RUBY_LIBRUBYARG_STATIC@
|
131
132
|
RUBY_LIBS = @RUBY_LIBS@
|
132
133
|
RUBY_SITELIBDIR = @RUBY_SITELIBDIR@
|
134
|
+
RUBY_VERSION_CODE = @RUBY_VERSION_CODE@
|
133
135
|
SET_MAKE = @SET_MAKE@
|
134
136
|
SHELL = @SHELL@
|
135
137
|
STRIP = @STRIP@
|
data/ruby/lib/Makefile.in
CHANGED
@@ -118,6 +118,7 @@ PATH_SEPARATOR = @PATH_SEPARATOR@
|
|
118
118
|
RANLIB = @RANLIB@
|
119
119
|
RICE_CPPFLAGS = @RICE_CPPFLAGS@
|
120
120
|
RICE_LDFLAGS = @RICE_LDFLAGS@
|
121
|
+
RICE_ROOT = @RICE_ROOT@
|
121
122
|
RICE_SAMPLES = @RICE_SAMPLES@
|
122
123
|
RICE_USING_MINGW32 = @RICE_USING_MINGW32@
|
123
124
|
RUBY = @RUBY@
|
@@ -129,6 +130,7 @@ RUBY_LIBRUBYARG = @RUBY_LIBRUBYARG@
|
|
129
130
|
RUBY_LIBRUBYARG_STATIC = @RUBY_LIBRUBYARG_STATIC@
|
130
131
|
RUBY_LIBS = @RUBY_LIBS@
|
131
132
|
RUBY_SITELIBDIR = @RUBY_SITELIBDIR@
|
133
|
+
RUBY_VERSION_CODE = @RUBY_VERSION_CODE@
|
132
134
|
SET_MAKE = @SET_MAKE@
|
133
135
|
SHELL = @SHELL@
|
134
136
|
STRIP = @STRIP@
|
data/ruby/lib/mkmf-rice.rb.in
CHANGED
@@ -31,6 +31,9 @@ def init_mkmf_rice(config = CONFIG)
|
|
31
31
|
# Ruby < 1.8.6 does not have $DEFLIBPATH
|
32
32
|
$DEFLIBPATH ||= []
|
33
33
|
|
34
|
+
# We use this for the samples
|
35
|
+
$DEFLIBPATH.unshift(with_config('libpath')) if with_config('libpath')
|
36
|
+
|
34
37
|
# Ruby 1.8.6 uses $preload without setting it
|
35
38
|
$preload ||= nil
|
36
39
|
|
@@ -180,7 +183,7 @@ class RiceMakefileCreator
|
|
180
183
|
end
|
181
184
|
|
182
185
|
def puts(*strings)
|
183
|
-
print
|
186
|
+
print(*strings.map { |s| "#{s}\n" })
|
184
187
|
end
|
185
188
|
|
186
189
|
def close
|
data/ruby/lib/version.rb
ADDED
data/sample/Makefile.am
CHANGED
@@ -1,5 +1,5 @@
|
|
1
|
-
RUBY_EXTCONF_OPTIONS = -I
|
2
|
-
EXTCONF_OPTIONS = --with-cppflags="-I
|
1
|
+
RUBY_EXTCONF_OPTIONS = -I@RICE_ROOT@/ruby/lib
|
2
|
+
EXTCONF_OPTIONS = --with-cppflags="-I@RICE_ROOT@" --with-libpath="@RICE_ROOT@/rice"
|
3
3
|
|
4
4
|
EXTRA_DIST = \
|
5
5
|
enum/extconf.rb \
|
data/sample/Makefile.in
CHANGED
@@ -107,6 +107,7 @@ PATH_SEPARATOR = @PATH_SEPARATOR@
|
|
107
107
|
RANLIB = @RANLIB@
|
108
108
|
RICE_CPPFLAGS = @RICE_CPPFLAGS@
|
109
109
|
RICE_LDFLAGS = @RICE_LDFLAGS@
|
110
|
+
RICE_ROOT = @RICE_ROOT@
|
110
111
|
RICE_SAMPLES = @RICE_SAMPLES@
|
111
112
|
RICE_USING_MINGW32 = @RICE_USING_MINGW32@
|
112
113
|
RUBY = @RUBY@
|
@@ -118,6 +119,7 @@ RUBY_LIBRUBYARG = @RUBY_LIBRUBYARG@
|
|
118
119
|
RUBY_LIBRUBYARG_STATIC = @RUBY_LIBRUBYARG_STATIC@
|
119
120
|
RUBY_LIBS = @RUBY_LIBS@
|
120
121
|
RUBY_SITELIBDIR = @RUBY_SITELIBDIR@
|
122
|
+
RUBY_VERSION_CODE = @RUBY_VERSION_CODE@
|
121
123
|
SET_MAKE = @SET_MAKE@
|
122
124
|
SHELL = @SHELL@
|
123
125
|
STRIP = @STRIP@
|
@@ -171,8 +173,8 @@ sysconfdir = @sysconfdir@
|
|
171
173
|
target_alias = @target_alias@
|
172
174
|
top_builddir = @top_builddir@
|
173
175
|
top_srcdir = @top_srcdir@
|
174
|
-
RUBY_EXTCONF_OPTIONS = -I
|
175
|
-
EXTCONF_OPTIONS = --with-cppflags="-I
|
176
|
+
RUBY_EXTCONF_OPTIONS = -I@RICE_ROOT@/ruby/lib
|
177
|
+
EXTCONF_OPTIONS = --with-cppflags="-I@RICE_ROOT@" --with-libpath="@RICE_ROOT@/rice"
|
176
178
|
EXTRA_DIST = \
|
177
179
|
enum/extconf.rb \
|
178
180
|
enum/sample_enum.cpp \
|
data/test/Makefile.am
CHANGED
data/test/Makefile.in
CHANGED
@@ -55,7 +55,8 @@ am_unittest_OBJECTS = unittest.$(OBJEXT) \
|
|
55
55
|
test_Identifier.$(OBJEXT) test_Jump_Tag.$(OBJEXT) \
|
56
56
|
test_Module.$(OBJEXT) test_Object.$(OBJEXT) \
|
57
57
|
test_String.$(OBJEXT) test_Struct.$(OBJEXT) \
|
58
|
-
test_Symbol.$(OBJEXT) test_To_From_Ruby.$(OBJEXT)
|
58
|
+
test_Symbol.$(OBJEXT) test_To_From_Ruby.$(OBJEXT) \
|
59
|
+
test_global_functions.$(OBJEXT)
|
59
60
|
unittest_OBJECTS = $(am_unittest_OBJECTS)
|
60
61
|
unittest_LDADD = $(LDADD)
|
61
62
|
am_vm_unittest_OBJECTS = unittest.$(OBJEXT) test_VM.$(OBJEXT)
|
@@ -141,6 +142,7 @@ PATH_SEPARATOR = @PATH_SEPARATOR@
|
|
141
142
|
RANLIB = @RANLIB@
|
142
143
|
RICE_CPPFLAGS = @RICE_CPPFLAGS@
|
143
144
|
RICE_LDFLAGS = @RICE_LDFLAGS@
|
145
|
+
RICE_ROOT = @RICE_ROOT@
|
144
146
|
RICE_SAMPLES = @RICE_SAMPLES@
|
145
147
|
RICE_USING_MINGW32 = @RICE_USING_MINGW32@
|
146
148
|
RUBY = @RUBY@
|
@@ -152,6 +154,7 @@ RUBY_LIBRUBYARG = @RUBY_LIBRUBYARG@
|
|
152
154
|
RUBY_LIBRUBYARG_STATIC = @RUBY_LIBRUBYARG_STATIC@
|
153
155
|
RUBY_LIBS = @RUBY_LIBS@
|
154
156
|
RUBY_SITELIBDIR = @RUBY_SITELIBDIR@
|
157
|
+
RUBY_VERSION_CODE = @RUBY_VERSION_CODE@
|
155
158
|
SET_MAKE = @SET_MAKE@
|
156
159
|
SHELL = @SHELL@
|
157
160
|
STRIP = @STRIP@
|
@@ -225,7 +228,8 @@ unittest_SOURCES = \
|
|
225
228
|
test_String.cpp \
|
226
229
|
test_Struct.cpp \
|
227
230
|
test_Symbol.cpp \
|
228
|
-
test_To_From_Ruby.cpp
|
231
|
+
test_To_From_Ruby.cpp \
|
232
|
+
test_global_functions.cpp
|
229
233
|
|
230
234
|
vm_unittest_SOURCES = \
|
231
235
|
unittest.cpp \
|
@@ -311,6 +315,7 @@ distclean-compile:
|
|
311
315
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_Symbol.Po@am__quote@
|
312
316
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_To_From_Ruby.Po@am__quote@
|
313
317
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_VM.Po@am__quote@
|
318
|
+
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_global_functions.Po@am__quote@
|
314
319
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unittest.Po@am__quote@
|
315
320
|
|
316
321
|
.cpp.o:
|
data/test/test_Array.cpp
CHANGED
@@ -15,7 +15,7 @@ TESTCASE(default_construct)
|
|
15
15
|
{
|
16
16
|
Array a;
|
17
17
|
ASSERT_EQUAL(T_ARRAY, rb_type(a));
|
18
|
-
ASSERT_EQUAL(0,
|
18
|
+
ASSERT_EQUAL(0, RARRAY_LEN(a.value()));
|
19
19
|
}
|
20
20
|
|
21
21
|
TESTCASE(construct_from_vector_of_int)
|
@@ -158,7 +158,7 @@ TESTCASE(shift)
|
|
158
158
|
TESTCASE(to_c_array)
|
159
159
|
{
|
160
160
|
Array a;
|
161
|
-
ASSERT_EQUAL(
|
161
|
+
ASSERT_EQUAL(RARRAY_PTR(a.value()), a.to_c_array());
|
162
162
|
}
|
163
163
|
|
164
164
|
TESTCASE(iterate)
|
data/test/test_Class.cpp
CHANGED
@@ -49,6 +49,9 @@ TESTCASE(include_module)
|
|
49
49
|
expected_ancestors.push(Module(rb_mEnumerable));
|
50
50
|
expected_ancestors.push(Module(rb_cObject));
|
51
51
|
expected_ancestors.push(Module(rb_mKernel));
|
52
|
+
#ifdef RUBY_VM
|
53
|
+
expected_ancestors.push(Module(rb_cBasicObject));
|
54
|
+
#endif
|
52
55
|
ASSERT_EQUAL(expected_ancestors, ancestors);
|
53
56
|
}
|
54
57
|
|
@@ -118,7 +121,7 @@ TESTCASE(define_module_function_simple)
|
|
118
121
|
Exception,
|
119
122
|
c.define_module_function("foo", &define_method_simple_helper),
|
120
123
|
ASSERT_EQUAL(
|
121
|
-
Object(
|
124
|
+
Object(rb_eTypeError),
|
122
125
|
Object(CLASS_OF(ex.value()))
|
123
126
|
)
|
124
127
|
);
|