/*
 * This file was generated automatically by xsubpp version 1.933 from the 
 * contents of Zion.xs. Don't edit this file, edit Zion.xs instead.
 *
 *	ANY CHANGES MADE HERE WILL BE LOST! 
 *
 */

#include "EXTERN.h"
#include "perl.h"
#include "XSUB.h"
#include <string.h>
#include <stdio.h>

XS(XS_Zion_get_zephyr)
{
    dXSARGS;
    if (items != 0)
	croak("Usage: Zion::get_zephyr()");
    SP -= items;
    {
		int fn, i;
		EXTEND(sp, exec_number_of_fields());
		for (i = 0; i<fn;i++){
			PUSHs(sv_2mortal(newSVpv(exec_notice_field(i), strlen(exec_notice_field(i)))));
		}
	PUTBACK;
	return;
    }
}

XS(XS_Zion_myprint)
{
    dXSARGS;
    if (items != 1)
	croak("Usage: Zion::myprint(string)");
    SP -= items;
    {
	char *	string = (char *)SvPV(ST(0),na);
		printf("Foo: %s\n", string);
		EXTEND(sp, 2);
		PUSHs(sv_2mortal(newSViv(37)));
		PUSHs(sv_2mortal(newSVpv("dog", 3)));
	PUTBACK;
	return;
    }
}

#ifdef __cplusplus
extern "C"
#endif
XS(boot_Zion)
{
    dXSARGS;
    char* file = __FILE__;

    XS_VERSION_BOOTCHECK ;

        newXS("Zion::get_zephyr", XS_Zion_get_zephyr, file);
        newXS("Zion::myprint", XS_Zion_myprint, file);
    ST(0) = &sv_yes;
    XSRETURN(1);
}
