⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 types.c

📁 开源备份软件源码 AMANDA, the Advanced Maryland Automatic Network Disk Archiver, is a backup system that a
💻 C
📖 第 1 页 / 共 5 页
字号:
# define LLONG_MAX	LONG_LONG_MAX#endif#ifndef ULLONG_MAX# define ULLONG_MAX	ULONG_LONG_MAX#endifSWIGINTERN intSWIG_AsVal_double SWIG_PERL_DECL_ARGS_2(SV *obj, double *val){  if (SvNIOK(obj)) {    if (val) *val = SvNV(obj);    return SWIG_OK;  } else if (SvIOK(obj)) {    if (val) *val = (double) SvIV(obj);    return SWIG_AddCast(SWIG_OK);  } else {    const char *nptr = SvPV(obj, PL_na);    if (nptr) {      char *endptr;      double v = strtod(nptr, &endptr);      if (errno == ERANGE) {	errno = 0;	return SWIG_OverflowError;      } else {	if (*endptr == '\0') {	  if (val) *val = v;	  return SWIG_Str2NumCast(SWIG_OK);	}      }    }  }  return SWIG_TypeError;}#include <float.h>#include <math.h>SWIGINTERNINLINE intSWIG_CanCastAsInteger(double *d, double min, double max) {  double x = *d;  if ((min <= x && x <= max)) {   double fx = floor(x);   double cx = ceil(x);   double rd =  ((x - fx) < 0.5) ? fx : cx; /* simple rint */   if ((errno == EDOM) || (errno == ERANGE)) {     errno = 0;   } else {     double summ, reps, diff;     if (rd < x) {       diff = x - rd;     } else if (rd > x) {       diff = rd - x;     } else {       return 1;     }     summ = rd + x;     reps = diff/summ;     if (reps < 8*DBL_EPSILON) {       *d = rd;       return 1;     }   }  }  return 0;}SWIGINTERN intSWIG_AsVal_long SWIG_PERL_DECL_ARGS_2(SV *obj, long* val){  if (SvIOK(obj)) {    if (val) *val = SvIV(obj);    return SWIG_OK;  } else {    int dispatch = 0;    const char *nptr = SvPV(obj, PL_na);    if (nptr) {      char *endptr;      long v = strtol(nptr, &endptr,0);      if (errno == ERANGE) {	errno = 0;	return SWIG_OverflowError;      } else {	if (*endptr == '\0') {	  if (val) *val = v;	  return SWIG_Str2NumCast(SWIG_OK);	}      }    }    if (!dispatch) {      double d;      int res = SWIG_AddCast(SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(obj,&d));      if (SWIG_IsOK(res) && SWIG_CanCastAsInteger(&d, LONG_MIN, LONG_MAX)) {	if (val) *val = (long)(d);	return res;      }    }  }  return SWIG_TypeError;}SWIGINTERN intSWIG_AsVal_int SWIG_PERL_DECL_ARGS_2(SV * obj, int *val){  long v;  int res = SWIG_AsVal_long SWIG_PERL_CALL_ARGS_2(obj, &v);  if (SWIG_IsOK(res)) {    if ((v < INT_MIN || v > INT_MAX)) {      return SWIG_OverflowError;    } else {      if (val) *val = (int)(v);    }  }    return res;}SWIGINTERN swig_type_info*SWIG_pchar_descriptor(void){  static int init = 0;  static swig_type_info* info = 0;  if (!init) {    info = SWIG_TypeQuery("_p_char");    init = 1;  }  return info;}SWIGINTERN intSWIG_AsCharPtrAndSize(SV *obj, char** cptr, size_t* psize, int *alloc){  if (SvPOK(obj)) {    STRLEN len = 0;    char *cstr = SvPV(obj, len);     size_t size = len + 1;    if (cptr)  {      if (alloc) {	if (*alloc == SWIG_NEWOBJ) {	  *cptr = (char *)memcpy((char *)malloc((size)*sizeof(char)), cstr, sizeof(char)*(size));	} else {	  *cptr = cstr;	  *alloc = SWIG_OLDOBJ;	}      }    }    if (psize) *psize = size;    return SWIG_OK;  } else {    swig_type_info* pchar_descriptor = SWIG_pchar_descriptor();    if (pchar_descriptor) {      char* vptr = 0;       if (SWIG_ConvertPtr(obj, (void**)&vptr, pchar_descriptor, 0) == SWIG_OK) {	if (cptr) *cptr = vptr;	if (psize) *psize = vptr ? (strlen(vptr) + 1) : 0;	if (alloc) *alloc = SWIG_OLDOBJ;	return SWIG_OK;      }    }  }  return SWIG_TypeError;}SWIGINTERN intSWIG_AsCharArray(SV * obj, char *val, size_t size){   char* cptr = 0; size_t csize = 0; int alloc = SWIG_OLDOBJ;  int res = SWIG_AsCharPtrAndSize(obj, &cptr, &csize, &alloc);  if (SWIG_IsOK(res)) {    if ((csize == size + 1) && cptr && !(cptr[csize-1])) --csize;    if (csize <= size) {      if (val) {	if (csize) memcpy(val, cptr, csize*sizeof(char));	if (csize < size) memset(val + csize, 0, (size - csize)*sizeof(char));      }      if (alloc == SWIG_NEWOBJ) {	free((char*)cptr);	res = SWIG_DelNewMask(res);      }            return res;    }    if (alloc == SWIG_NEWOBJ) free((char*)cptr);  }  return SWIG_TypeError;}SWIGINTERNINLINE SV *SWIG_FromCharPtrAndSize(const char* carray, size_t size){  SV *obj = sv_newmortal();  if (carray) {    if (size && (carray[size - 1] == 0)) {      sv_setpv(obj, carray);    } else {      char *tmp = (char *)malloc((size + 1)*sizeof(char));      memcpy(tmp, carray, size);      tmp[size] = 0;      sv_setpv(obj, tmp);      free((char*)tmp);    }  } else {    sv_setsv(obj, &PL_sv_undef);  }  return obj;}SWIGINTERN intSWIG_AsVal_unsigned_SS_long SWIG_PERL_DECL_ARGS_2(SV *obj, unsigned long *val) {  if (SvUOK(obj)) {    if (val) *val = SvUV(obj);    return SWIG_OK;  } else  if (SvIOK(obj)) {    long v = SvIV(obj);    if (v >= 0) {      if (val) *val = v;      return SWIG_OK;    } else {      return SWIG_OverflowError;    }  } else {    int dispatch = 0;    const char *nptr = SvPV(obj, PL_na);    if (nptr) {      char *endptr;      unsigned long v = strtoul(nptr, &endptr,0);      if (errno == ERANGE) {	errno = 0;	return SWIG_OverflowError;      } else {	if (*endptr == '\0') {	  if (val) *val = v;	  return SWIG_Str2NumCast(SWIG_OK);	}      }    }    if (!dispatch) {      double d;      int res = SWIG_AddCast(SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(obj,&d));      if (SWIG_IsOK(res) && SWIG_CanCastAsInteger(&d, 0, ULONG_MAX)) {	if (val) *val = (unsigned long)(d);	return res;      }    }  }  return SWIG_TypeError;}SWIGINTERNINLINE intSWIG_AsVal_size_t SWIG_PERL_DECL_ARGS_2(SV * obj, size_t *val){  unsigned long v;  int res = SWIG_AsVal_unsigned_SS_long SWIG_PERL_CALL_ARGS_2(obj, val ? &v : 0);  if (SWIG_IsOK(res) && val) *val = (size_t)(v);  return res;}SWIGINTERN dumpfile_t *new_dumpfile_t(){	    dumpfile_t *df = malloc(sizeof(*df));	    fh_init(df);	    return df;	}#ifdef PERL_OBJECT#define MAGIC_CLASS _wrap_Amanda::Types_var::class _wrap_Amanda::Types_var : public CPerlObj {public:#else#define MAGIC_CLASS#endifSWIGCLASS_STATIC int swig_magic_readonly(pTHX_ SV *SWIGUNUSEDPARM(sv), MAGIC *SWIGUNUSEDPARM(mg)) {    MAGIC_PPERL    croak("Value is read-only.");    return 0;}#ifdef PERL_OBJECT};#endif#ifdef __cplusplusextern "C" {#endifXS(_wrap_dumpfile_t_type_set) {  {    dumpfile_t *arg1 = (dumpfile_t *) 0 ;    filetype_t arg2 ;    void *argp1 = 0 ;    int res1 = 0 ;    int argvi = 0;    dXSARGS;        if ((items < 2) || (items > 2)) {      SWIG_croak("Usage: dumpfile_t_type_set(self,type);");    }    res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_dumpfile_t, 0 |  0 );    if (!SWIG_IsOK(res1)) {      SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "dumpfile_t_type_set" "', argument " "1"" of type '" "dumpfile_t *""'");     }    arg1 = (dumpfile_t *)(argp1);    {      if (sizeof(signed int) == 1) {        arg2 = amglue_SvI8(ST(1));      } else if (sizeof(signed int) == 2) {        arg2 = amglue_SvI16(ST(1));      } else if (sizeof(signed int) == 4) {        arg2 = amglue_SvI32(ST(1));      } else if (sizeof(signed int) == 8) {        arg2 = amglue_SvI64(ST(1));      } else {        g_critical("Unexpected signed int >64 bits?"); /* should be optimized out unless sizeof(signed int) > 8 */      }    }    if (arg1) (arg1)->type = arg2;                    XSRETURN(argvi);  fail:            SWIG_croak_null();  }}XS(_wrap_dumpfile_t_type_get) {  {    dumpfile_t *arg1 = (dumpfile_t *) 0 ;    filetype_t result;    void *argp1 = 0 ;    int res1 = 0 ;    int argvi = 0;    dXSARGS;        if ((items < 1) || (items > 1)) {      SWIG_croak("Usage: dumpfile_t_type_get(self);");    }    res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_dumpfile_t, 0 |  0 );    if (!SWIG_IsOK(res1)) {      SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "dumpfile_t_type_get" "', argument " "1"" of type '" "dumpfile_t *""'");     }    arg1 = (dumpfile_t *)(argp1);    result = (filetype_t) ((arg1)->type);    {      ST(argvi) = sv_2mortal(amglue_newSVi64(result));      argvi++;    }        XSRETURN(argvi);  fail:        SWIG_croak_null();  }}XS(_wrap_dumpfile_t_datestamp_set) {  {    dumpfile_t *arg1 = (dumpfile_t *) 0 ;    char *arg2 ;    void *argp1 = 0 ;    int res1 = 0 ;    char temp2[STRMAX] ;    int res2 ;    int argvi = 0;    dXSARGS;        if ((items < 2) || (items > 2)) {      SWIG_croak("Usage: dumpfile_t_datestamp_set(self,datestamp);");    }    res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_dumpfile_t, 0 |  0 );    if (!SWIG_IsOK(res1)) {      SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "dumpfile_t_datestamp_set" "', argument " "1"" of type '" "dumpfile_t *""'");     }    arg1 = (dumpfile_t *)(argp1);    res2 = SWIG_AsCharArray(ST(1), temp2, STRMAX);    if (!SWIG_IsOK(res2)) {      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "dumpfile_t_datestamp_set" "', argument " "2"" of type '" "char [STRMAX]""'");    }    arg2 = (char *)(temp2);    {      strncpy(arg1->datestamp, arg2, STRMAX);      if (arg1->datestamp[STRMAX-1] != '\0')      SWIG_exception(SWIG_ValueError, "String too large for dumpfile_t");    }                XSRETURN(argvi);  fail:            SWIG_croak_null();  }}XS(_wrap_dumpfile_t_datestamp_get) {  {    dumpfile_t *arg1 = (dumpfile_t *) 0 ;    char *result = 0 ;    void *argp1 = 0 ;    int res1 = 0 ;    int argvi = 0;    dXSARGS;        if ((items < 1) || (items > 1)) {      SWIG_croak("Usage: dumpfile_t_datestamp_get(self);");    }    res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_dumpfile_t, 0 |  0 );    if (!SWIG_IsOK(res1)) {      SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "dumpfile_t_datestamp_get" "', argument " "1"" of type '" "dumpfile_t *""'");     }    arg1 = (dumpfile_t *)(argp1);    result = (char *) ((arg1)->datestamp);    {      size_t size = STRMAX;            while (size && (result[size - 1] == '\0')) --size;            ST(argvi) = SWIG_FromCharPtrAndSize(result, size); argvi++ ;    }        XSRETURN(argvi);  fail:        SWIG_croak_null();  }}XS(_wrap_dumpfile_t_dumplevel_set) {  {    dumpfile_t *arg1 = (dumpfile_t *) 0 ;    int arg2 ;    void *argp1 = 0 ;    int res1 = 0 ;    int argvi = 0;    dXSARGS;        if ((items < 2) || (items > 2)) {      SWIG_croak("Usage: dumpfile_t_dumplevel_set(self,dumplevel);");    }    res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_dumpfile_t, 0 |  0 );    if (!SWIG_IsOK(res1)) {      SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "dumpfile_t_dumplevel_set" "', argument " "1"" of type '" "dumpfile_t *""'");     }    arg1 = (dumpfile_t *)(argp1);    {      if (sizeof(signed int) == 1) {        arg2 = amglue_SvI8(ST(1));      } else if (sizeof(signed int) == 2) {        arg2 = amglue_SvI16(ST(1));      } else if (sizeof(signed int) == 4) {        arg2 = amglue_SvI32(ST(1));      } else if (sizeof(signed int) == 8) {        arg2 = amglue_SvI64(ST(1));      } else {        g_critical("Unexpected signed int >64 bits?"); /* should be optimized out unless sizeof(signed int) > 8 */      }    }    if (arg1) (arg1)->dumplevel = arg2;                    XSRETURN(argvi);  fail:            SWIG_croak_null();  }}XS(_wrap_dumpfile_t_dumplevel_get) {  {    dumpfile_t *arg1 = (dumpfile_t *) 0 ;    int result;    void *argp1 = 0 ;    int res1 = 0 ;    int argvi = 0;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -