summaryrefslogtreecommitdiff
path: root/XSUB.h
diff options
context:
space:
mode:
authorKarl Williamson <khw@cpan.org>2020-11-01 20:58:42 -0700
committerKarl Williamson <khw@cpan.org>2020-11-02 09:18:05 -0700
commite439aacbbaca7c23c28bc3babef388adaee83857 (patch)
tree74830032598087b06e1e42407f8718724cd6108b /XSUB.h
parent6e4884665749e8508a236b35e3c8da9e272576e2 (diff)
downloadperl-e439aacbbaca7c23c28bc3babef388adaee83857.tar.gz
XSUB.h: Fix some apidoc entries
So that Devel::PPPort can test that they compile
Diffstat (limited to 'XSUB.h')
-rw-r--r--XSUB.h22
1 files changed, 15 insertions, 7 deletions
diff --git a/XSUB.h b/XSUB.h
index 90dcd1ef6f..82b0f8d1e5 100644
--- a/XSUB.h
+++ b/XSUB.h
@@ -18,17 +18,21 @@
F<xsubpp> compiles XS code into C. See L<perlutil/xsubpp>.
-=for apidoc Amn|char*|CLASS
+=for comment
+Some variables below are flagged with 'u' because Devel::PPPort can't currently
+readily test them as they spring into existence by compiling with xsubpp.
+
+=for apidoc Amnu|char*|CLASS
Variable which is setup by C<xsubpp> to indicate the
class name for a C++ XS constructor. This is always a C<char*>. See
C<L</THIS>>.
-=for apidoc Amn|(whatever)|RETVAL
+=for apidoc Amnu|type|RETVAL
Variable which is setup by C<xsubpp> to hold the return value for an
XSUB. This is always the proper type for the XSUB. See
L<perlxs/"The RETVAL Variable">.
-=for apidoc Amn|(whatever)|THIS
+=for apidoc Amnu|type|THIS
Variable which is setup by C<xsubpp> to designate the object in a C++
XSUB. This is always the proper type for the C++ object. See C<L</CLASS>> and
L<perlxs/"Using XS With C++">.
@@ -49,20 +53,24 @@ XSUB's aliases was used to invoke it. See L<perlxs/"The ALIAS: Keyword">.
=for apidoc Am|SV*|ST|int ix
Used to access elements on the XSUB's stack.
-=for apidoc AmU||XS
+=for apidoc Ay||XS|name
Macro to declare an XSUB and its C parameter list. This is handled by
C<xsubpp>. It is the same as using the more explicit C<XS_EXTERNAL> macro; the
latter is preferred.
-=for apidoc AmU||XS_INTERNAL
+=for apidoc Ayu||XS_INTERNAL|name
Macro to declare an XSUB and its C parameter list without exporting the symbols.
This is handled by C<xsubpp> and generally preferable over exporting the XSUB
symbols unnecessarily.
-=for apidoc AmU||XS_EXTERNAL
+=for comment
+XS_INTERNAL marked 'u' because declaring a function static within our test
+function doesn't work
+
+=for apidoc Ay||XS_EXTERNAL|name
Macro to declare an XSUB and its C parameter list explicitly exporting the symbols.
-=for apidoc AmU||XSPROTO
+=for apidoc Ay||XSPROTO|name
Macro used by C<L</XS_INTERNAL>> and C<L</XS_EXTERNAL>> to declare a function
prototype. You probably shouldn't be using this directly yourself.