On Tue, 2005-05-03 at 22:36 +0100, Nicholas Clark wrote:

> I don't know what the list of appropriate functions to wrap is. I assume that
> Leo/Chip can make a definitive criteria, but I'm guessing that it could be
> most vtable methods except for the MMD ones, given what Leo has already
> said.

Seems reasonable to me.  I have a short program now based on
Parrot::Vtable that dumps out really naive functions.

void init_pmc(PMC* initializer)

becomes:

void Parrot_PMC_init_pmc( Parrot_INTERP interp, Parrot_PMC pmc,
Parrot_PMC initializer )
{
    void retval;
    PARROT_CALLIN_START( interp );
    retval = VTABLE_init_pmc( interp, pmc, initializer );
    PARROT_CALLIN_END( interp );
    return retval;
}

I'll make it keep the other functions in extend.c and see what happens.

> Should we be regularising the C wrappers to have the same names as the
> vtable entries?

Seems reasonable to me.

> ie s/Parrot_PMC_get_intval_intkey/Parrot_PMC_get_integer_keyed_int/
> and similarly for quite a few other functions in extend.c?

I can make a patch that does this if it's valuable.

-- c

Reply via email to