NAME

ExtUtils::Typemaps::MagicBuf - Typemap for storing objects in magic

VERSION

version 0.004

SYNOPSIS

use ExtUtils::Typemaps::MagicBuf;
# First, read my own type maps:
my $private_map = ExtUtils::Typemaps->new(file => 'my.map');

# Then, get the Magic set and merge it into my maps
my $map = ExtUtils::Typemaps::MagicBuf->new;
$private_map->merge(typemap => $map);

# Now, write the combined map to an output file
$private_map->write(file => 'typemap');

DESCRIPTION

ExtUtils::Typemaps::MagicBuf is an ExtUtils::Typemaps subclass that is the equivalent of using a string reference to store your object in, except it is hidden away using magic. This is suitable for objects that can be safely shallow copied on thread cloning (i.e. they don't contain external references such as pointers or file descriptors). Unlike T_MAGIC or T_PTROBJ this does not need a DESTROY method to free the buffer.

DEPENDENCIES

On perls older than 5.14, this will require ppport.h to provide mg_findext.

AUTHOR

Leon Timmermans <leont@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2023 by Leon Timmermans.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.