Skip to content

Commit 9af5c74

Browse files
committed
perlxs.pod: update FALLBACK: keyword
1 parent 560391d commit 9af5c74

File tree

1 file changed

+13
-11
lines changed

1 file changed

+13
-11
lines changed

dist/ExtUtils-ParseXS/lib/perlxs.pod

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1892,20 +1892,22 @@ next keyword or possible start of a new XSUB (C</\n\n\S/>).
18921892

18931893
=head3 The FALLBACK: Keyword
18941894

1895-
In addition to the OVERLOAD keyword, if you need to control how
1896-
Perl autogenerates missing overloaded operators, you can set the
1897-
FALLBACK keyword in the module header section, like this:
1895+
MODULE = Foo PACKAGE = Foo::Bar
18981896

1899-
MODULE = RPC PACKAGE = RPC
1897+
FALLBACK: TRUE | FALSE | UNDEF
19001898

1901-
FALLBACK: TRUE
1902-
...
1899+
Since 5.8.1.
1900+
1901+
It defaults to C<UNDEF> for each package. It sets the default fallback
1902+
handling behaviour for overloaded methods in the current package (i.e.
1903+
C<Foo:Bar> in the example above). It is analogous to the Perl-level:
1904+
1905+
package Foo::Bar;
1906+
use overload "fallback" => 1 | 0 | undef;
19031907

1904-
where FALLBACK can take any of the three values TRUE, FALSE, or
1905-
UNDEF. If you do not set any FALLBACK value when using OVERLOAD,
1906-
it defaults to UNDEF. FALLBACK is not used except when one or
1907-
more functions using OVERLOAD have been defined. Please see
1908-
L<overload/fallback> for more details.
1908+
It only has any effect if there ends up being at least one XSUB in the
1909+
current package with the L<OVERLOAD|/The OVERLOAD: Keyword> keyword
1910+
present. See L<overload/fallback> for more details.
19091911

19101912
=head2 The Structure of an XSUB
19111913

0 commit comments

Comments
 (0)