Constants.pm revision 1.7
1package ExtUtils::ParseXS::Constants;
2use strict;
3use warnings;
4use Symbol;
5
6our $VERSION = '3.51';
7
8=head1 NAME
9
10ExtUtils::ParseXS::Constants - Initialization values for some globals
11
12=head1 SYNOPSIS
13
14  use ExtUtils::ParseXS::Constants ();
15
16  $PrototypeRegexp = $ExtUtils::ParseXS::Constants::PrototypeRegexp;
17
18=head1 DESCRIPTION
19
20Initialization of certain non-subroutine variables in ExtUtils::ParseXS and some of its
21supporting packages has been moved into this package so that those values can
22be defined exactly once and then re-used in any package.
23
24Nothing is exported.  Use fully qualified variable names.
25
26=cut
27
28# FIXME: THESE ARE NOT CONSTANTS!
29our @InitFileCode;
30
31# Note that to reduce maintenance, $PrototypeRegexp is used
32# by ExtUtils::Typemaps, too!
33our $PrototypeRegexp = "[" . quotemeta('\$%&*@;[]_') . "]";
34our @XSKeywords      = qw(
35  REQUIRE BOOT CASE PREINIT INPUT INIT CODE PPCODE
36  OUTPUT CLEANUP ALIAS ATTRS PROTOTYPES PROTOTYPE
37  VERSIONCHECK INCLUDE INCLUDE_COMMAND SCOPE INTERFACE
38  INTERFACE_MACRO C_ARGS POSTCALL OVERLOAD FALLBACK
39  EXPORT_XSUB_SYMBOLS
40);
41
42our $XSKeywordsAlternation = join('|', @XSKeywords);
43
441;
45