/* Typically used to return values from XS functions. */
/*
-=head1 Stack Manipulation Macros
+=for apidoc_section Stack Manipulation Macros
=for apidoc Am|void|XST_mIV|int pos|IV iv
Place an integer into the specified position C<pos> on the stack. The
Macro to verify that the perl api version an XS module has been compiled against
matches the api version of the perl interpreter it's being loaded into.
-=head1 Exception Handling (simple) Macros
+=for apidoc_section Exception Handling (simple) Macros
=for apidoc Amns||dXCPT
Set up necessary local variables for exception handling.
*/
/*
-=head1 Handy Values
+=for apidoc_section AV Handling
=for apidoc ADmnU||Nullav
Null AV pointer.
} STMT_END
/*
-=head1 COP Hint Hashes
+=for apidoc_section COP Hint Hashes
*/
typedef struct refcounted_he COPHH;
/*
-=head1 Multicall Functions
+=for apidoc_section Multicall Functions
=for apidoc Amns||dMULTICALL
Declare local variables for a multicall. See L<perlcall/LIGHTWEIGHT CALLBACKS>.
*
* It also holds the debugging version of the runops function.
-=head1 Display and Dump functions
+=for apidoc_section Display and Dump functions
*/
#include "EXTERN.h"
string/length pair
and omits the hash parameter.
-=head1 Lexer interface
+=for apidoc_section Lexer interface
=for apidoc Amx|void|lex_stuff_pvs|"pv"|U32 flags
#define isALPHA_FOLD_NE(c1, c2) (! isALPHA_FOLD_EQ((c1), (c2)))
/*
-=head1 Memory Management
+=for apidoc_section Memory Management
=for apidoc Am|void|Newx|void* ptr|int nitems|type
The XSUB-writer's interface to the C C<malloc> function.
/* ------------------------------- utf8.h ------------------------------- */
/*
-=head1 Unicode Support
+=for apidoc_section Unicode Support
*/
PERL_STATIC_INLINE void
#include "handy.h"
/*
-=head1 Per-Interpreter Variables
+=for apidoc_section Per-Interpreter Variables
*/
/* These variables are per-interpreter in threaded/multiplicity builds,
}
/*
-=head1 Optree Manipulation Functions
+=for apidoc_section Optree Manipulation Functions
=for apidoc alloccopstash
}
/*
-=head1 Compile-time scope hooks
+=for apidoc_section Compile-time scope hooks
=for apidoc blockhook_register
}
/*
-=head1 Optree Manipulation Functions
+=for apidoc_section Optree Manipulation Functions
*/
/* List constructors */
/*
-=head1 Optree construction
+=for apidoc_section Optree construction
=for apidoc newNULLLIST
}
/*
-=head1 Optree construction
+=for apidoc_section Optree construction
=for apidoc newSLICEOP
/*
-=head1 Optree Manipulation Functions
+=for apidoc_section Optree Manipulation Functions
=for apidoc cv_const_sv
}
/*
-=head1 Custom Operators
+=for apidoc_section Custom Operators
=for apidoc Perl_custom_op_xop
Return the XOP structure for a given custom op. This macro should be
}
/*
-=head1 Hook manipulation
+=for apidoc_section Hook manipulation
These functions provide convenient and thread-safe means of manipulating
hook variables.
/*
-=head1 Optree Manipulation Functions
+=for apidoc_section Optree Manipulation Functions
=for apidoc Am|OP*|LINKLIST|OP *o
Given the root of an optree, link the tree in execution order using the
};
/*
-=head1 Compile-time scope hooks
+=for apidoc_section Compile-time scope hooks
=for apidoc mx|U32|BhkFLAGS|BHK *hk
Return the BHK's flags.
#define OP_LVALUE_NO_CROAK 1
/*
-=head1 Custom Operators
+=for apidoc_section Custom Operators
=for apidoc Am|U32|XopFLAGS|XOP *xop
Return the XOP's flags.
(Perl_custom_op_get_field(x, XOPe_xop_ptr).xop_ptr)
/*
-=head1 Optree Manipulation Functions
+=for apidoc_section Optree Manipulation Functions
=for apidoc Am|const char *|OP_NAME|OP *o
Return the name of the provided OP. For core ops this looks up the name
#define newSUB(f, o, p, b) newATTRSUB((f), (o), (p), NULL, (b))
/*
-=head1 Hook manipulation
+=for apidoc_section Hook manipulation
*/
#ifdef USE_ITHREADS
*/
/*
-=head1 Pad Data Structures
+=for apidoc_section Pad Data Structures
=for apidoc Amx|PADLIST *|CvPADLIST|CV *cv
*/
/*
-=head1 Pad Data Structures
+=for apidoc_section Pad Data Structures
*/
/*
-=head1 Callback Functions
+=for apidoc_section Callback Functions
=for apidoc call_argv
#endif
/*
-=head1 Errno
+=for apidoc_section Errno
=for apidoc m|void|SETERRNO|int errcode|int vmserrcode
#endif
/*
-=head1 Warning and Dieing
+=for apidoc_section Warning and Dieing
=for apidoc Amn|SV *|ERRSV
#define PP(s) OP * Perl_##s(pTHX)
/*
-=head1 Stack Manipulation Macros
+=for apidoc_section Stack Manipulation Macros
=for apidoc AmnU||SP
Stack pointer. This is usually handled by C<xsubpp>. See C<L</dSP>> and
/*
-=head1 Pack and Unpack
+=for apidoc_section Pack and Unpack
=for apidoc unpackstring
* with no additional suffix are both string constants */
/*
-=head1 Unicode Support
+=for apidoc_section Unicode Support
=for apidoc AmnU|const char *|BOM_UTF8
}
/*
-=head1 Unicode Support
+=for apidoc_section Unicode Support
=for apidoc isSCRIPT_RUN
#define RXapif_REGNAMES_COUNT 0x1000
/*
-=head1 REGEXP Functions
+=for apidoc_section REGEXP Functions
=for apidoc Am|REGEXP *|SvRX|SV *sv
/*
-=head1 Callback Functions
+=for apidoc_section Callback Functions
=for apidoc Amns||SAVETMPS
Opening bracket for temporaries on a callback. See C<L</FREETMPS>> and
}
/*
-=head1 Unicode Support
+=for apidoc_section Unicode Support
=for apidoc sv_recode_to_utf8
#endif
/*
-=head1 SV Flags
+=for apidoc_section SV Flags
=for apidoc AmnU||svtype
An enum of flags for Perl types. These are found in the file F<sv.h>
* with no additional suffix are both string constants */
/*
-=head1 Unicode Support
+=for apidoc_section Unicode Support
=for apidoc AmnU|const char *|BOM_UTF8