ARSperl
view release on metacpan or search on metacpan
support-h.template view on Meta::CPAN
/*
$Header: /cvsroot/arsperl/ARSperl/support-h.template,v 1.37 2010/09/01 17:18:29 tstapff Exp $
ARSperl - An ARS v2 - v5 / Perl5 Integration Kit
Copyright (C) 1995-2003
Joel Murphy, jmurphy@acsu.buffalo.edu
Jeff Murphy, jcmurphy@acsu.buffalo.edu
This program is free software; you can redistribute it and/or modify
it under the terms as Perl itself.
Refer to the file called "Artistic" that accompanies the source distribution
of ARSperl (or the one that accompanies the source distribution of Perl
itself) for a full description.
Comments to: arsperl@arsperl.org
(this is a *mailing list* and you must be
a subscriber before posting)
Home Page: http://www.arsperl.org
*/
#ifndef __support_h_
#define __support_h_
#if (PERL_BASEREV_IS == 50) && (PERL_PATCHLEVEL_IS < 5)
#define PL_na na
#define PL_sv_undef sv_undef
#endif
#undef EXTERN
#ifndef __support_c_
# define EXTERN extern
#else
# define EXTERN
#endif
#include "ar.h"
#include "arerrno.h"
#include "arextern.h"
#include "arstruct.h"
#include "arfree.h"
#if AR_EXPORT_VERSION < 6
# include "nt.h"
# include "nterrno.h"
# include "ntfree.h"
# include "ntsextrn.h"
#endif
/* the following are defined because we use them as default values in ARS.xs */
#if AR_EXPORT_VERSION < 3
# define AR_FIELD_TYPE_ALL 0
# include "ntcextrn.h"
#endif
#if AR_EXPORT_VERSION < 5
# define AR_IMPORT_OPT_CREATE 0
# define AR_IMPORT_OPT_OVERWRITE 1
#endif
#include "EXTERN.h"
#include "perl.h"
#include "XSUB.h"
#include <stdio.h>
#include <string.h>
#include <limits.h>
#ifdef PROFILE
# include <sys/time.h>
#endif
#define SAFEPRT(X) (X && *X)? X : "[null]"
#ifdef ARSPERL_DEBUG
# define DBG(X) printf("[%s %d] %s : ", __FILE__, __LINE__, __FUNCTION__); printf X
#else
# define DBG(X)
#endif
typedef struct {
unsigned int numItems;
void *array;
} ARList;
typedef struct {
ARControlStruct ctrl;
int queries;
long startTime;
long endTime;
} ars_ctrl;
#define TYPEMAP_LAST 0xFFFFFFFFL
typedef struct {
unsigned int number;
char *name;
} TypeMapStruct;
static struct {
unsigned int number;
char *name;
} StructItemTypeMap[] = {
/*STRUCTITEMTYPEMAP*/
{ TYPEMAP_LAST, "" }
};
static struct {
unsigned int number;
char *name;
( run in 0.693 second using v1.01-cache-2.11-cpan-39bf76dae61 )