Perl version 5.14.0 documentation - perlapiPage 1http://perldoc.perl.org
perlapi - autogenerated documentation for the perl public API
This file contains the documentation of the perl public API generated byembed.pl, specifically a listingof functions, macros, flags, and variablesthat may be used by extension writers.
At the end
is a list offunctions which have yet to be documented. The interfaces ofthose are subject to change withoutnotice. Any functions not listed here arenot part of the public API, and should not be used byextension writers atall. For these reasons, blindly using functions listed in proto.h is to beavoidedwhen writing extensions.Note that all Perl API global variables must be referenced with the
prefix. Some macros areprovided for compatibility with the older,unadorned names, but this support may be disabled in afuture release.Perl was originally written to handle US-ASCII only (that is characterswhose ordinal numbers are inthe range 0 - 127).And documentation and comments may still use the term ASCII, whensometimesin fact the entire range from 0 - 255 is meant.Note that Perl can be compiled and run under EBCDIC (See
)or ASCII. Most of thedocumentation (and even comments in the code)ignore the EBCDIC possibility. For almost allpurposes the differences are transparent.As an example, under EBCDIC,instead of UTF-8,UTF-EBCDIC is used to encode Unicode strings, and sowhenever this documentation refers to
(and variants of that name, including in function names),it also (essentially transparently) means
.But the ordinals of characters differ between ASCII, EBCDIC, andthe UTF- encodings,and a string encoded in UTF-EBCDIC may occupy more bytesthan in UTF-8.Also, on some EBCDIC machines, functions that are documented as operating onUS-ASCII (or BasicLatin in Unicode terminology) may in fact operate on all256 characters in the EBCDIC range, not justthe subset corresponding toUS-ASCII.The listing below is alphabetical, case insensitive.
GIMMEA backward-compatible version of
which can only return
; in a void context, it returns
GIMME_VThe XSUB-writer's equivalent to Perl's
for void, scalar or list context,respectively. See
for a usage example.
G_ARRAYUsed to indicate list context. See
.G_DISCARDIndicates that arguments returned from a callback should be discarded. See
.G_EVALUsed to force a Perl
wrapper around a callback. See
.G_NOARGSIndicates that no arguments are being sent to a callback. See