diff options
Diffstat (limited to 'perl/.svn/text-base/NASTD.xs.svn-base')
-rw-r--r-- | perl/.svn/text-base/NASTD.xs.svn-base | 278 |
1 files changed, 0 insertions, 278 deletions
diff --git a/perl/.svn/text-base/NASTD.xs.svn-base b/perl/.svn/text-base/NASTD.xs.svn-base deleted file mode 100644 index e7b1179..0000000 --- a/perl/.svn/text-base/NASTD.xs.svn-base +++ /dev/null @@ -1,278 +0,0 @@ -/* $Id: NASTD.xs,v 1.5 2001/10/29 11:18:20 shmit Exp $ */ - -#include "EXTERN.h" -#include "perl.h" -#include "XSUB.h" - -#include "../include/nastd.h" - -#include "include/nastdxs.def" - -static int -not_here(char *s) -{ - croak("%s not implemented on this architecture", s); - return -1; -} - -static double -constant(char *name, int arg) -{ - errno = 0; - switch (*name) { - case 'A': - if (strEQ(name, "NAST_OK")) - return NAST_OK; - else if (strEQ(name, "NAST_SERVER_GONE")) - return NAST_SERVER_GONE; - else if (strEQ(name, "NAST_NOMEM")) - return NAST_NOMEM; - else if (strEQ(name, "NAST_UNNKNOWN_RESPONSE")) - return NAST_UNKNOWN_RESPONSE; - else if (strEQ(name, "NAST_TIMEDOUT")) - return NAST_TIMEDOUT; - else if (strEQ(name, "NAST_UNKNOWN_OPT")) - return NAST_UNKNOWN_OPT; - else if (strEQ(name, "NAST_SERVER_ERR")) - return NAST_SERVER_ERR; - break; - case 'B': - break; - case 'C': - break; - case 'D': - break; - case 'E': - break; - case 'F': - break; - case 'G': - break; - case 'H': - break; - case 'I': - break; - case 'J': - break; - case 'K': - break; - case 'L': - break; - case 'M': - break; - case 'N': - break; - case 'O': - break; - case 'P': - break; - case 'Q': - break; - case 'R': - break; - case 'S': - break; - case 'T': - break; - case 'U': - break; - case 'V': - break; - case 'W': - break; - case 'X': - break; - case 'Y': - break; - case 'Z': - break; - } - errno = EINVAL; - return 0; - -not_there: - errno = ENOENT; - return 0; -} - - -MODULE = NASTD PACKAGE = NASTD - -PROTOTYPES: ENABLE - -double -constant(name,arg) - char * name - int arg - -nasth * -nast_sphincter_new(...) - PREINIT: - STRLEN n_a; - - CODE: - nasth *sphincter; - - if (items == 0) - sphincter = nast_sphincter_new(SvPV(ST(0), n_a)); - else - sphincter = nast_sphincter_new(NULL); - - if (sphincter == NULL) - XSRETURN_UNDEF; - - RETVAL = sphincter; - - OUTPUT: - RETVAL - -void -nast_sphincter_close(sphincter) - nasth *sphincter - -int -nast_options_get(sphincter) - nasth *sphincter - - PREINIT: - nast_options nast_opts; - - PPCODE: - if (nast_options_get(sphincter, &nast_opts) != -1) { - if (nast_opts.use_qcache == NASTFALSE) - XPUSHs(sv_2mortal(newSViv(0))); - else - XPUSHs(sv_2mortal(newSViv(1))); - if (nast_opts.use_localdb == NASTFALSE) - XPUSHs(sv_2mortal(newSViv(0))); - else - XPUSHs(sv_2mortal(newSViv(1))); - if (nast_opts.fallthrough_async == NASTFALSE) - XPUSHs(sv_2mortal(newSViv(0))); - else - XPUSHs(sv_2mortal(newSViv(1))); - if (nast_opts.always_fallthrough == NASTFALSE) - XPUSHs(sv_2mortal(newSViv(0))); - else - XPUSHs(sv_2mortal(newSViv(1))); - if (nast_opts.fail_once == NASTFALSE) - XPUSHs(sv_2mortal(newSViv(0))); - else - XPUSHs(sv_2mortal(newSViv(1))); - if (nast_opts.no_fallthrough == NASTFALSE) - XPUSHs(sv_2mortal(newSViv(0))); - else - XPUSHs(sv_2mortal(newSViv(1))); - } - -int -nast_options_set(sphincter, ...) - nasth *sphincter - - PREINIT: - nast_options nast_opts; - int i; - - CODE: - if (items == 8) { - if (SvTRUE(ST(1))) - nast_opts.use_qcache = NASTTRUE; - else - nast_opts.use_qcache = NASTFALSE; - if (SvTRUE(ST(2))) - nast_opts.use_localdb = NASTTRUE; - else - nast_opts.use_localdb = NASTFALSE; - if (SvTRUE(ST(3))) - nast_opts.fallthrough_async = NASTTRUE; - else - nast_opts.fallthrough_async = NASTFALSE; - if (SvTRUE(ST(4))) - nast_opts.always_fallthrough = NASTTRUE; - else - nast_opts.always_fallthrough = NASTFALSE; - if (SvTRUE(ST(5))) - nast_opts.fail_once = NASTTRUE; - else - nast_opts.fail_once = NASTFALSE; - if (SvTRUE(ST(6))) - nast_opts.no_fallthrough = NASTTRUE; - else - nast_opts.no_fallthrough = NASTFALSE; - - RETVAL = nast_options_set(sphincter, &nast_opts); - } else - RETVAL = -1; - - OUTPUT: - RETVAL - -SV * -nast_get_result(sphincter) - nasth *sphincter - - PREINIT: - nast_array *aa; - int i; - - PPCODE: - aa = nast_get_result(sphincter); - if (aa != NULL) { - EXTEND(SP, aa->nitems); - - for (i = 0; i < aa->nitems; i++) { - SV *item; - - item = newSVpv(aa->items[i]->strdata, - aa->items[i]->strlen); - PUSHs(sv_2mortal(item)); - } - nast_free_result(aa); - } - -int -interface_nast_qcmd(sphincter, key) - nasth *sphincter - const char *key -INTERFACE: - nast_add nast_del nast_get - -int -nast_upd(sphincter, key, ...) - nasth *sphincter - const char *key - - PREINIT: - nast_array *aa; - int i; - - CODE: - aa = nast_array_new(); - if (aa != NULL) { - for (i = 2; i < items; i++) { - char *str; - STRLEN len; - - str = (char *)SvPV(ST(i), len); - nast_array_add(aa, len, str); - } - RETVAL = nast_upd(sphincter, key, aa); - } else { - RETVAL = -1; - } - nast_array_delete(aa); - - OUTPUT: - RETVAL - -int -nast_geterr(sphincter) - nasth *sphincter - -char * -nast_errmsg(sphincter) - nasth *sphincter - -int -nast_stats(sphincter) - nasth *sphincter |