Hmm... chromatic answered question 2 when I was writing this question. Let me add new opcode for 'does' tonight or tomorrow night. I want to learn.
On 8/20/07, Badai Aqrandista <[EMAIL PROTECTED]> wrote: > Hi, > > I have two questions. These questions arise because I need to modify > 'Test::Builder::TestPlan' to [ 'Test'; 'Builder'; 'TestPlan' ]. I'm > new to the project so I don't want to step on someone else's foot on > doing this. > > 1. The implementation of 'does' in src/ops/object.ops is as the following: > > =item B<does>(out INT, invar PMC, in STR) > > Sets result $1 to the result of the "does" vtable function for PMC $2, > given interface $3. > > See L<tools/build/pmc2c.pl> for a list of available interfaces. > > inline op does(out INT, invar PMC, in STR) :object_base { > $1 = $3 ? $2->vtable->does(interp, $2, $3) : 0; > goto NEXT(); > } > > Note the lack of '=cut' before the code. Is that intentional? > > 2. Can I add another 'does' implementation which accept PMC as $3 like > 'isa'? This means adding 'Parrot_object_does' to src/object.c as well. > > -- > Thanks, > Badai Aqrandista (cheepy) > -- Thanks, Badai Aqrandista (cheepy)