intrpvar.h revision 7c478bd95313f5f23a4c958a745db2134aa03244
/***********************************************/
/* Global only to current interpreter instance */
/***********************************************/
/* Don't forget to re-run embed.pl to propagate changes! */
/* The 'I' prefix is only needed for vars that need appropriate #defines
* generated when built with or without MULTIPLICITY. It is also used
* to generate the appropriate export list for win32.
*
* When building without MULTIPLICITY, these variables will be truly global. */
/* pseudo environmental stuff */
PERLVAR(Iorigfilename, char *)
/* switches */
PERLVAR(Ilocalpatches, char **)
PERLVAR(Ipreprocess, bool)
PERLVAR(Idoswitches, bool)
/*
=for apidoc mn|bool|PL_dowarn
The C variable which corresponds to Perl's $^W warning variable.
=cut
*/
PERLVAR(Idoextract, bool)
/* This value may be set when embedding for full cleanup */
/* 0=none, 1=full, 2=full with checks */
PERLVARI(Iperl_destruct_level, int, 0)
/* magical thingies */
/* top fd to pass to subprocesses */
#ifdef VMS
#endif
/* shortcuts to various I/O objects */
/* shortcuts to regexp stuff */
/* this one needs to be moved to thrdvar.h and accessed via
* find_threadsv() when USE_THREADS */
/* shortcuts to misc objects */
/* shortcuts to debugging objects */
/*
=for apidoc mn|GV *|PL_DBsub
When Perl is run in debugging mode, with the B<-d> switch, this GV contains
the SV which holds the name of the sub being debugged. This is the C
variable which corresponds to Perl's $DB::sub variable. See
C<PL_DBsingle>.
=for apidoc mn|SV *|PL_DBsingle
When Perl is run in debugging mode, with the B<-d> switch, this SV is a
boolean which indicates whether subs are being single-stepped.
Single-stepping is automatically turned on after every step. This is the C
variable which corresponds to Perl's $DB::single variable. See
C<PL_DBsub>.
=for apidoc mn|SV *|PL_DBtrace
Trace variable used when Perl is run in debugging mode, with the B<-d>
switch. This is the C variable which corresponds to Perl's $DB::trace
variable. See C<PL_DBsingle>.
=cut
*/
/* symbol tables */
/* memory management */
/* funky return mechanisms */
/* subprocess state */
/* internal state */
/* current interpreter roots */
/* runtime control stuff */
/* statics moved here for shared library purposes */
PERLVAR(Ipreambled, bool)
/* XXX shouldn't these be per-thread? --GSAR */
/* interpreter atexit processing */
/* list of exit functions */
/*
=for apidoc Amn|HV*|PL_modglobal
C<PL_modglobal> is a general purpose, interpreter global HV for use by
extensions that need to keep information on a per-interpreter basis.
In a pinch, it can also be used as a symbol table for extensions
to share data among each other. It is a good idea to use keys
prefixed by the package name of the extension that owns the data.
=cut
*/
/* these used to be in global before 5.004_68 */
#ifdef HAVE_INTERP_INTERN
/* platform internals */
#endif
/* more statics moved here */
#ifdef USE_THREADS
#endif /* USE_THREADS */
PERLVAR(Iorigenviron, char **)
/*
=for apidoc Amn|SV|PL_sv_undef
This is the C<undef> SV. Always refer to this as C<&PL_sv_undef>.
=for apidoc Amn|SV|PL_sv_no
This is the C<false> SV. See C<PL_sv_yes>. Always refer to this as
C<&PL_sv_no>.
=for apidoc Amn|SV|PL_sv_yes
This is the C<true> SV. See C<PL_sv_no>. Always refer to this as
C<&PL_sv_yes>.
=cut
*/
#ifdef CSH
#endif
/* What we know when we're in LEX_KNOWNEXT state. */
PERLVAR(Ioldbufptr, char *)
PERLVAR(Ioldoldbufptr, char *)
#ifdef FCRYPT
#endif
PERLVAR(Iamagic_generation, long)
#ifdef USE_LOCALE_COLLATE
/* Assume simple collation */
#endif /* USE_LOCALE_COLLATE */
#ifdef USE_LOCALE_NUMERIC
/* Assume simple numerics */
/* Assume local numerics */
PERLVAR(Idummy1_bincompat, char)
/* Used to be numeric_radix */
#endif /* !USE_LOCALE_NUMERIC */
/* utf8 character classes */
/* perly.c globals */
PERLVAR(Iyyerrflag, int)
PERLVAR(Iglob_index, int)
PERLVAR(Isrand_called, bool)
#ifdef USE_THREADS
/* Owner thread for doeval */
#ifdef FAKE_THREADS
/* Currently executing (fake) thread */
#endif
#endif /* USE_THREADS */
#if defined(PERL_IMPLICIT_SYS)
#endif
#if defined(USE_ITHREADS)
#endif
#ifdef USE_THREADS
#endif
#ifdef USE_LOCALE_NUMERIC
#endif
/* New variables must be added to the very end for binary compatibility.
* irrelevant, but not all code may be expected to #include XSUB.h. */