Fix xslt_process() to ensure that it inserts a NULL terminator after the
[PostgreSQL.git] / src / pl / plperl / plperl.h
blobc6eb5052055462e474a37d0c12aab9a0f6635fd1
1 /*-------------------------------------------------------------------------
3 * plperl.h
4 * Common include file for PL/Perl files
6 * This should be included _AFTER_ postgres.h and system include files
8 * Portions Copyright (c) 1996-2009, PostgreSQL Global Development Group
9 * Portions Copyright (c) 1995, Regents of the University of California
11 * $PostgreSQL$
14 #ifndef PL_PERL_H
15 #define PL_PERL_H
17 /* stop perl headers from hijacking stdio and other stuff on Windows */
18 #ifdef WIN32
19 #define WIN32IO_IS_STDIO
21 * isnan is defined in both the perl and mingw headers. We don't use it,
22 * so this just clears up the compile warning.
24 #ifdef isnan
25 #undef isnan
26 #endif
27 #endif
29 /* required for perl API */
30 #include "EXTERN.h"
31 #include "perl.h"
32 #include "XSUB.h"
33 #include "ppport.h"
35 /* just in case these symbols aren't provided */
36 #ifndef pTHX_
37 #define pTHX_
38 #define pTHX void
39 #endif
41 /* perl may have a different width of "bool", don't buy it */
42 #ifdef bool
43 #undef bool
44 #endif
46 /* routines from spi_internal.c */
47 int spi_DEBUG(void);
48 int spi_LOG(void);
49 int spi_INFO(void);
50 int spi_NOTICE(void);
51 int spi_WARNING(void);
52 int spi_ERROR(void);
54 /* routines from plperl.c */
55 HV *plperl_spi_exec(char *, int);
56 void plperl_return_next(SV *);
57 SV *plperl_spi_query(char *);
58 SV *plperl_spi_fetchrow(char *);
59 SV *plperl_spi_prepare(char *, int, SV **);
60 HV *plperl_spi_exec_prepared(char *, HV *, int, SV **);
61 SV *plperl_spi_query_prepared(char *, int, SV **);
62 void plperl_spi_freeplan(char *);
63 void plperl_spi_cursor_close(char *);
67 #endif /* PL_PERL_H */