home *** CD-ROM | disk | FTP | other *** search
/ PC World 2005 December (Special) / PCWorld_2005-12_Special_cd.bin / Bezpecnost / lsti / lsti.exe / framework-2.5.exe / perlvars.h < prev    next >
C/C++ Source or Header  |  2005-01-27  |  2KB  |  75 lines

  1. /*    perlvars.h
  2.  *
  3.  *    Copyright (C) 1999, 2000, 2001, 2002, by Larry Wall and others
  4.  *
  5.  *    You may distribute under the terms of either the GNU General Public
  6.  *    License or the Artistic License, as specified in the README file.
  7.  *
  8.  */
  9.  
  10. /****************/
  11. /* Truly global */
  12. /****************/
  13.  
  14. /* Don't forget to re-run embed.pl to propagate changes! */
  15.  
  16. /* This file describes the "global" variables used by perl
  17.  * This used to be in perl.h directly but we want to abstract out into
  18.  * distinct files which are per-thread, per-interpreter or really global,
  19.  * and how they're initialized.
  20.  *
  21.  * The 'G' prefix is only needed for vars that need appropriate #defines
  22.  * generated in embed*.h.  Such symbols are also used to generate
  23.  * the appropriate export list for win32. */
  24.  
  25. /* global state */
  26. PERLVAR(Gcurinterp,    PerlInterpreter *)
  27.                     /* currently running interpreter
  28.                      * (initial parent interpreter under
  29.                      * useithreads) */
  30. #if defined(USE_5005THREADS) || defined(USE_ITHREADS)
  31. PERLVAR(Gthr_key,    perl_key)    /* key to retrieve per-thread struct */
  32. #endif
  33.  
  34. /* constants (these are not literals to facilitate pointer comparisons) */
  35. PERLVARIC(GYes,        char *, "1")
  36. PERLVARIC(GNo,        char *, "")
  37. PERLVARIC(Ghexdigit,    char *, "0123456789abcdef0123456789ABCDEF")
  38. PERLVARIC(Gpatleave,    char *, "\\.^$@dDwWsSbB+*?|()-nrtfeaxc0123456789[{]}")
  39.  
  40. /* XXX does anyone even use this? */
  41. PERLVARI(Gdo_undump,    bool,    FALSE)    /* -u or dump seen? */
  42.  
  43. #if defined(MYMALLOC) && (defined(USE_5005THREADS) || defined(USE_ITHREADS))
  44. PERLVAR(Gmalloc_mutex,    perl_mutex)    /* Mutex for malloc */
  45. #endif
  46.  
  47. #if defined(USE_ITHREADS)
  48. PERLVAR(Gop_mutex,    perl_mutex)    /* Mutex for op refcounting */
  49. #endif
  50.  
  51. #if defined(USE_5005THREADS) || defined(USE_ITHREADS)
  52. PERLVAR(Gdollarzero_mutex, perl_mutex)    /* Modifying $0 */
  53. #endif
  54.  
  55. /* This is constant on most architectures, a global on OS/2 */
  56. PERLVARI(Gsh_path,    char *,    SH_PATH)/* full path of shell */
  57.  
  58. #ifndef PERL_MICRO
  59. /* If Perl has to ignore SIGPFE, this is its saved state.
  60.  * See perl.h macros PERL_FPU_INIT and PERL_FPU_{PRE,POST}_EXEC. */
  61. PERLVAR(Gsigfpe_saved,    Sighandler_t)
  62. #endif
  63.  
  64. /* Restricted hashes placeholder value.
  65.  * The contents are never used, only the address. */
  66. PERLVAR(Gsv_placeholder, SV)
  67.  
  68. #ifndef PERL_MICRO
  69. PERLVARI(Gcsighandlerp,    Sighandler_t, &Perl_csighandler)    /* Pointer to C-level sighandler */
  70. #endif
  71.  
  72. #ifndef PERL_USE_SAFE_PUTENV
  73. PERLVARI(Guse_safe_putenv, int, 1)
  74. #endif
  75.