table of contents
Mouse::XS(3pm) | User Contributed Perl Documentation | Mouse::XS(3pm) |
NAME¶
Mouse::XS - A Mouse guts in XSVERSION¶
This document describes Mouse version 2.0.0DESCRIPTION¶
Mouse has an optional XS implementation, which is automatically built and used if available. According to benchmarks, this is about 2 times faster than Mouse::PurePerl.INSTALL¶
The XS implementation are selected by default, but you can force it by passing the "--xs" option to Makefile.PL.perl Makefile.PL --xs
If you do not want to build the XS implementation, you can pass the "--pp" option to Makefile.PL.
perl Makefile.PL --pp
Or if you use "cpanm" (>= 1.7), you can give "--pp" option to "cpanm".
cpanm --pp Mouse
The MOUSE_PUREPERL (or PERL_ONLY) environment variable¶
It can be used to enable the use of Mouse::PurePerl in order to test and debug programs that use Mouse.CAVEAT¶
There are some Mouse::XS specific features.- Mutationg references to the return values of getters
- When you take a reference from Mouse getters, like
"$ref = \$obj->foo", the
$ref refers
"\$obj->{foo}". That is, mutating
$$ref also alters
"$obj->{foo}". The behavior may
confuse you so you'd better avoid to take a reference directly from
getters.
See <https://rt.cpan.org/Ticket/Display.html?id=82945> for details.
DEPENDENCIES¶
The XS implementation requires Perl 5.8.1 or later, and a C compiler.SEE ALSO¶
MouseMouse::PurePerl
2017-01-21 | perl v5.24.1 |