I've been getting into C some more. I'm reviewing the source code for the Ruby language, and there are some constructs that I do not understand. I've reviewed my in-depth C book and have not come across this construct, and I even tried compiling a test program with this construct, and I got (as expected) compile errors. Here's an example construct:
What's up with the declaration in red? (FYI, VALUE is defined as a unsigned long).
Thanks, Todd
Code:
static VALUE
rb_obj_is_proc(proc)
[color=red]VALUE proc;[/color]
{
if (TYPE(proc) == T_DATA && RDATA(proc)->dfree == (RUBY_DATA_FUNC)blk_free) {
return Qtrue;
}
return Qfalse;
}
What's up with the declaration in red? (FYI, VALUE is defined as a unsigned long).
Thanks, Todd