This is a live mirror of the Perl 5 development currently hosted at
https://github.com/perl/perl5
https://perl5.git.perl.org
/
perl5.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
bb7379d
)
Note that various XS macros are documented
author
Karl Williamson
<khw@cpan.org>
Sat, 31 Aug 2019 17:09:19 +0000
(11:09 -0600)
committer
Karl Williamson
<khw@cpan.org>
Tue, 3 Sep 2019 03:52:11 +0000
(21:52 -0600)
dist/ExtUtils-ParseXS/lib/perlxs.pod
patch
|
blob
|
blame
|
history
diff --git
a/dist/ExtUtils-ParseXS/lib/perlxs.pod
b/dist/ExtUtils-ParseXS/lib/perlxs.pod
index
1419ee0
..
ff7e650
100644
(file)
--- a/
dist/ExtUtils-ParseXS/lib/perlxs.pod
+++ b/
dist/ExtUtils-ParseXS/lib/perlxs.pod
@@
-1980,6
+1980,8
@@
all the data that needs to be interpreter-local.
Always place the START_MY_CXT macro directly after the declaration
of C<my_cxt_t>.
Always place the START_MY_CXT macro directly after the declaration
of C<my_cxt_t>.
+=for apidoc Amnh||START_MY_CXT
+
=item MY_CXT_INIT
The MY_CXT_INIT macro initializes storage for the C<my_cxt_t> struct.
=item MY_CXT_INIT
The MY_CXT_INIT macro initializes storage for the C<my_cxt_t> struct.
@@
-1989,11
+1991,15
@@
are maintaining multiple interpreters, it should be called once in each
interpreter instance, except for interpreters cloned from existing ones.
(But see L</MY_CXT_CLONE> below.)
interpreter instance, except for interpreters cloned from existing ones.
(But see L</MY_CXT_CLONE> below.)
+=for apidoc Amnh||MY_CXT_INIT
+
=item dMY_CXT
Use the dMY_CXT macro (a declaration) in all the functions that access
MY_CXT.
=item dMY_CXT
Use the dMY_CXT macro (a declaration) in all the functions that access
MY_CXT.
+=for apidoc Amnh||dMY_CXT
+
=item MY_CXT
Use the MY_CXT macro to access members of the C<my_cxt_t> struct. For
=item MY_CXT
Use the MY_CXT macro to access members of the C<my_cxt_t> struct. For
@@
-2014,6
+2020,14
@@
C<dMY_CXT> may be quite expensive to calculate, and to avoid the overhead
of invoking it in each function it is possible to pass the declaration
onto other functions using the C<aMY_CXT>/C<pMY_CXT> macros, eg
of invoking it in each function it is possible to pass the declaration
onto other functions using the C<aMY_CXT>/C<pMY_CXT> macros, eg
+=for apidoc Amnh||_aMY_CXT
+=for apidoc Amnh||aMY_CXT
+=for apidoc Amnh||aMY_CXT_
+=for apidoc Amnh||_pMY_CXT
+=for apidoc Amnh||pMY_CXT
+=for apidoc Amnh||pMY_CXT_
+=for apidoc Amnh||MY_CXT
+
void sub1() {
dMY_CXT;
MY_CXT.index = 1;
void sub1() {
dMY_CXT;
MY_CXT.index = 1;
@@
-2036,6
+2050,8
@@
my_cxt_t structure. Calling C<MY_CXT_CLONE> (typically via the package's
C<CLONE()> function), causes a byte-for-byte copy of the structure to be
taken, and any future dMY_CXT will cause the copy to be accessed instead.
C<CLONE()> function), causes a byte-for-byte copy of the structure to be
taken, and any future dMY_CXT will cause the copy to be accessed instead.
+=for apidoc Amnh||MY_CXT_CLONE
+
=item MY_CXT_INIT_INTERP(my_perl)
=item dMY_CXT_INTERP(my_perl)
=item MY_CXT_INIT_INTERP(my_perl)
=item dMY_CXT_INTERP(my_perl)