[#3101] Compile_err — "Fergus Hayman" <shayman@...>
[#3109] Is divmod dangerous? — Dave Thomas <Dave@...>
[#3110] my wish list for Ruby — Mathieu Bouchard <matju@...>
[#3119] Re: Min and max? — ts <decoux@...>
>>>>> "M" == Mathieu Bouchard <matju@CAM.ORG> writes:
[#3149] Retrieving the hostname and port in net/http — Roland Jesse <jesse@...>
Hi,
[#3154] 3-d arrays? — Hugh Sasse Staff Elec Eng <hgs@...>
Is there an idiom for 3-dimensional arrays in Ruby? I see that
[#3167] ruby.h needed to compile Interbase module — Jilani Khaldi <jilanik@...>
Hi all,
[#3189] BUG or something? — "Park Hee Sob" <phasis@...>
Hi,
[#3221] Re: Ruby & Interbase -- Please answer if you know! — ts <decoux@...>
>>>>> "J" == Jilani Khaldi <jilanik@tin.it> writes:
[#3222] Ruby coding standard? — Robert Feldt <feldt@...>
On Fri, 9 Jun 2000, Robert Feldt wrote:
Mathieu Bouchard <matju@cam.org> wrote:
[#3277] Re: BUG or something? — Aleksi Niemel<aleksi.niemela@...>
> |I am new to Ruby and this brings up a question I have had
Aleksi Niemel<aleksi.niemela@cinnober.com> writes:
On 12 Jun 2000, Dave Thomas wrote:
ts <decoux@moulon.inra.fr> writes:
[#3296] RE: about documentation — Aleksi Niemel<aleksi.niemela@...>
> I want to contribute to the ruby project in my spare time.
Aleksi Niemel<aleksi.niemela@cinnober.com> writes:
Hi,
On Tue, 13 Jun 2000, Toshiro Kuwabara wrote:
Hugh Sasse Staff Elec Eng <hgs@dmu.ac.uk> writes:
[#3331] Selling Rubies by the Carat — Dave Thomas <Dave@...>
[#3338] PID of child processes — Andrew Hunt <Andy@...>
[#3363] chomp! — "David Douthitt" <DDouthitt@...>
I was looking at the documentation for chomp and chomp! - and the results of chomp startled me to say the least.
"David Douthitt" <DDouthitt@cuna.com> writes:
[#3407] Waffling between Python and Ruby — "Warren Postma" <embed@...>
I was looking at the Ruby editor/IDE for windows and was disappointed with
[#3410] Exercice: Translate into Ruby :-) — Jilani Khaldi <jilanik@...>
Hi All,
Jilani Khaldi <jilanik@tin.it> writes:
Hi,
"NAKAMURA, Hiroshi" <nahi@keynauts.com> writes:
Hi, Dave,
Hello,
[#3453] Re: Static Typing( Was: Waffling between Python and Ruby) — Andrew Hunt <andy@...>
[#3515] Options database (was: Define & Include?) — claird@... (Cameron Laird)
In article <8ikot4$ki$0@216.39.170.247>, Dave LeBlanc <whisper@oz.net> wrote:
[#3516] Deep copy? — Hugh Sasse Staff Elec Eng <hgs@...>
Given that I cannot overload =, how should I go about ensuring a deep
In message "[ruby-talk:03516] Deep copy?"
On Tue, 20 Jun 2000, GOTO Kentaro wrote:
[#3532] Extension in C++? — Robert Feldt <feldt@...>
[#3541] function objects? — Johann Hibschman <johann@...>
Hi folks,
[#3544] A small quiz — Dave Thomas <Dave@...>
[#3588] Interface polymorphism — hal9000@...
Another question, guys.
[#3607] Is there a statistician in the house? — Dave Thomas <Dave@...>
[#3662] Ruby 1.4.5 install from Mandrake cooker rpms ?problem? — Charles Hixson <charleshixsn@...>
This is the first time that I've installed ruby, so
[#3685] no traffic — matz@... (Yukihiro Matsumoto)
Hi,
[#3694] Why it's quiet — hal9000@...
We are all busy learning the new language
Hi,
Hi,
Hi, matz,
Hi,
Hi,
[#3699] Multithreaded/Embedded Ruby? — "Warren Postma" <embed@...>
Is there any information on Thread safety in ruby. Suppose I embed Ruby in a
Hi,
[ruby-talk:03558] Re: Extension in C++?
On Tue, 20 Jun 2000, Yukihiro Matsumoto wrote:
> Hi,
>
Hi and thanks for the prompt reply.
> In message "[ruby-talk:03532] Extension in C++?"
> on 00/06/20, Robert Feldt <feldt@ce.chalmers.se> writes:
>
> |Extending Ruby in C is simple and pretty straightforward. I'm considering
> |putting together an extension based on some C++ classes I have. Do I have
> |to take any special measures to interface C++ and Ruby as compared to Ruby
> |and C? Would it, for example, work to Wrap_Struct(class MyCppClass)
> |directly or is there other ways? Can extconf and mkmf handle cpp
> |files? Anyone done this and have some sample code?
>
> There's no difference between C and C++ in writing extension, except
> you have to wrap initialize function (Init_xxx) by extern "C".
>
When I make the file below gcc won't compile it since ANSI C++ does not
allow pointer conversion. I guess one solution is to turn the ANSI C++
standard off but I'm not sure that's a good solution (or how you do it!).
Am I missing something? Should you do this in some other way? If some
compiler option will do the trick maybe mkmf-funcs should sense the use of
c++ and add the compiler options automagically? Sorry if this is
obvious...
------------rubycpp.cpp -----------------
#include <ruby.h>
class Func {
public:
int f(int x) { return 2*x; }
};
VALUE cFunc;
static void rbcpp_free(Func* obj) {
delete obj;
}
static VALUE rbcpp_init(VALUE self) {
Func* new_obj = new Func;
return Data_Wrap_Struct(cFunc, 0, rbcpp_free, new_obj);
}
static VALUE rbcpp_f(VALUE self, VALUE x) {
Func* obj;
Data_Get_Struct(self, class Func, obj);
return INT2NUM(obj->f(NUM2INT(x)));
}
extern "C" void Init_rubycpp() {
cFunc = rb_define_class("Func", rb_cObject);
rb_define_method(cFunc, "f", rbcpp_f, 1);
rb_define_method(cFunc, "initialize", rbcpp_init, 0);
}
--------------------------------------------
Regards,
Robert
Ps. Compiler output:
gcc -DUSEIMPORTLIB -I/usr/local/lib/ruby/1.4/i686-cygwin -g -O2
-I/usr/local/include -c rubycpp.cpp -o rubycpp.o
rubycpp.cpp: In function `VALUE rbcpp_init(long unsigned int)':
rubycpp.cpp:16: ANSI C++ prohibits conversion from `(Func *)' to `(...)'
rubycpp.cpp: In function `void Init_rubycpp(...)':
rubycpp.cpp:27: ANSI C++ prohibits conversion from `(long unsigned int,
long uns
igned int)' to `(...)'
rubycpp.cpp:28: ANSI C++ prohibits conversion from `(long unsigned int)'
to `(..
.)'
make: *** [rubycpp.o] Error 1
bash-2.04$