Dyn
view release on metacpan or search on metacpan
lib/Dyn/Call/Aggregate.xsh view on Meta::CPAN
}
// clang-format off
OUTPUT:
RETVAL
void
fields(DCaggr * thing)
PREINIT:
size_t i;
U8 gimme = GIMME_V;
PPCODE:
// clang-format on
if (gimme == G_ARRAY) {
EXTEND(SP, thing->n_fields);
struct DCfield_ *addr;
for (i = 0; i < thing->n_fields; ++i) {
SV *field = sv_newmortal();
addr = &thing->fields[i];
sv_setref_pv(field, "Dyn::Call::Field", (void *)addr);
mPUSHs(newSVsv(field));
}
lib/Dyn/Call/Field.xsh view on Meta::CPAN
#// clang-format off
MODULE = Dyn::Call PACKAGE = Dyn::Call::Field
void
new(char * package, HV * args = newHV_mortal())
PPCODE:
// clang-format on
DCfield *RETVAL;
Newx(RETVAL, 1, DCfield);
SV **val_ref = hv_fetchs(args, "offset", 0);
if (val_ref != NULL) RETVAL->offset = (DCsize)SvIV(*val_ref);
val_ref = hv_fetchs(args, "size", 0);
if (val_ref != NULL) RETVAL->size = (DCsize)SvIV(*val_ref);
val_ref = hv_fetchs(args, "alignment", 0);
if (val_ref != NULL) RETVAL->alignment = (DCsize)SvIV(*val_ref);
val_ref = hv_fetchs(args, "array_len", 0);
lib/Dyn/Call/Pointer.xsh view on Meta::CPAN
DCpointer
realloc(IN_OUT DCpointer ptr, size_t size)
CODE:
ptr = saferealloc(ptr, size);
OUTPUT:
RETVAL
void
free(DCpointer ptr)
PPCODE:
// clang-format on
{
if (ptr != NULL) dcFreeMem(ptr);
ptr = NULL;
sv_set_undef(ST(0));
} // Let Dyn::Call::Pointer::DESTROY take care of the rest
// clang-format off
DCpointer
memchr(DCpointer ptr, char ch, size_t count)
lib/Dyn/Call/Pointer.xsh view on Meta::CPAN
OUTPUT:
RETVAL
DCpointer
memset(DCpointer dest, char ch, size_t count)
void
memcpy(dest, src, size_t nitems)
INIT:
DCpointer dest, src;
PPCODE:
// clang-format on
{
if (sv_derived_from(ST(0), "Dyn::Call::Pointer")) {
IV tmp = SvIV((SV *)SvRV(ST(0)));
dest = INT2PTR(DCpointer, tmp);
}
else if (SvIOK(ST(0))) {
IV tmp = SvIV((SV *)(ST(0)));
dest = INT2PTR(DCpointer, tmp);
}
lib/Dyn/Call/Pointer.xsh view on Meta::CPAN
else
croak("dest is not of type Dyn::Call::Pointer");
CopyD(src, dest, nitems, char);
}
// clang-format off
void
memmove(dest, src, size_t nitems)
INIT:
DCpointer dest, src;
PPCODE:
// clang-format on
{
if (sv_derived_from(ST(0), "Dyn::Call::Pointer")) {
IV tmp = SvIV((SV *)SvRV(ST(0)));
dest = INT2PTR(DCpointer, tmp);
}
else if (SvIOK(ST(0))) {
IV tmp = SvIV((SV *)(ST(0)));
dest = INT2PTR(DCpointer, tmp);
}
( run in 0.609 second using v1.01-cache-2.11-cpan-5511b514fd6 )