Result:
found more than 1151 distributions - search limited to the first 2001 files matching your query ( run in 3.308 )


DBD-cego

 view release on metacpan or  search on metacpan

Cego.xsi  view on Meta::CPAN

MODULE = DBD::Cego  PACKAGE = DBD::Cego::dr


void
dbixs_revision(...)
    PPCODE:
    ST(0) = sv_2mortal(newSViv(DBIXS_REVISION));


#ifdef dbd_discon_all

Cego.xsi  view on Meta::CPAN


void
data_sources(drh, attr = Nullsv)
    SV *drh
    SV *attr
    PPCODE:
    {
        D_imp_drh(drh);
        AV *av = dbd_dr_data_sources(drh, imp_drh, attr);
        if (av) {
            int i;

Cego.xsi  view on Meta::CPAN

    PREINIT:
    int is_selectrow_array = (ix == 1);
    imp_sth_t *imp_sth;
    SV *sth;
    AV *row_av;
    PPCODE:
    if (SvROK(ST(1))) {
        MAGIC *mg;
        sth = ST(1);
        /* switch to inner handle if not already */
        if ( (mg = mg_find(SvRV(sth),'P')) )

Cego.xsi  view on Meta::CPAN



void
DESTROY(dbh)
    SV *        dbh
    PPCODE:
    /* keep in sync with default DESTROY in DBI.xs */
    D_imp_dbh(dbh);
    ST(0) = &PL_sv_yes;
    if (!DBIc_IMPSET(imp_dbh)) {        /* was never fully set up       */
        STRLEN lna;

Cego.xsi  view on Meta::CPAN


void
data_sources(dbh, attr = Nullsv)
    SV *dbh
    SV *attr
    PPCODE:
    {
        D_imp_dbh(dbh);
        AV *av = dbd_db_data_sources(dbh, imp_dbh, attr);
        if (av) {
            int i;

Cego.xsi  view on Meta::CPAN

void
fetchrow_array(sth)
    SV *        sth
    ALIAS:
        fetchrow = 1
    PPCODE:
    D_imp_sth(sth);
    AV *av;
    av = dbd_st_fetch(sth, imp_sth);
    if (av) {
        int i;

Cego.xsi  view on Meta::CPAN



void
DESTROY(sth)
    SV *        sth
    PPCODE:
    /* keep in sync with default DESTROY in DBI.xs */
    D_imp_sth(sth);
    ST(0) = &PL_sv_yes;
    if (!DBIc_IMPSET(imp_sth)) {        /* was never fully set up       */
        STRLEN lna;

 view all matches for this distribution


DBD-drizzle

 view release on metacpan or  search on metacpan

drizzle.xs  view on Meta::CPAN

    SV *        drh
    char *	host
    char *      port
    char *      user
    char *      password
  PPCODE:
{
  drizzle_return_t ret;
  drizzle_st drizzle;
  drizzle_con_st con;

drizzle.xs  view on Meta::CPAN

  char* dbname
  char* host
  char* port
  char* user
  char* password
  PPCODE:
{
  drizzle_return_t retval;
  drizzle_st *drizzle;
  drizzle_con_st *con = NULL;
  drizzle_result_st res;

drizzle.xs  view on Meta::CPAN



void
type_info_all(dbh)
  SV* dbh
  PPCODE:
{
  /* 	static AV* types = NULL; */
  /* 	if (!types) { */
  /* 	    D_imp_dbh(dbh); */
  /* 	    if (!(types = dbd_db_type_info_all(dbh, imp_dbh))) { */

drizzle.xs  view on Meta::CPAN



void
_ListDBs(dbh)
  SV*	dbh
  PPCODE:
{
  drizzle_result_st res;
  drizzle_row_t cur;
  drizzle_return_t ret;

drizzle.xs  view on Meta::CPAN

quote(dbh, str, type=NULL)
    SV* dbh
    SV* str
    SV* type
  PROTOTYPE: $$;$
  PPCODE:
    {
        SV* quoted = dbd_db_quote(dbh, str, type);
	ST(0) = quoted ? sv_2mortal(quoted) : str;
	XSRETURN(1);
    }

 view all matches for this distribution


DBD-mysql

 view release on metacpan or  search on metacpan

mysql.xs  view on Meta::CPAN

    SV *        drh
    char *	host
    char *      port
    char *      user
    char *      password
  PPCODE:
{
    MYSQL mysql;
    mysql.net.fd = -1;
    MYSQL* sock = mysql_dr_connect(drh, &mysql, NULL, host, port, user, password,
				   NULL, NULL);

mysql.xs  view on Meta::CPAN



void
type_info_all(dbh)
  SV* dbh
  PPCODE:
{
  /* 	static AV* types = NULL; */
  /* 	if (!types) { */
  /* 	    D_imp_dbh(dbh); */
  /* 	    if (!(types = dbd_db_type_info_all(dbh, imp_dbh))) { */

mysql.xs  view on Meta::CPAN



void
_ListDBs(dbh)
  SV*	dbh
  PPCODE:
  MYSQL_RES* res;
  MYSQL_ROW cur;

  D_imp_dbh(dbh);

mysql.xs  view on Meta::CPAN

quote(dbh, str, type=NULL)
    SV* dbh
    SV* str
    SV* type
  PROTOTYPE: $$;$
  PPCODE:
    {
        SV* quoted;

        D_imp_dbh(dbh);
        ASYNC_CHECK_XS(dbh);

mysql.xs  view on Meta::CPAN

	XSRETURN(1);
    }

void mysql_fd(dbh)
    SV* dbh
  PPCODE:
    {
        D_imp_dbh(dbh);
        if(imp_dbh->pmysql->net.fd != -1) {
            XSRETURN_IV(imp_dbh->pmysql->net.fd);
        } else {

mysql.xs  view on Meta::CPAN

        }
    }

void mysql_async_result(dbh)
    SV* dbh
  PPCODE:
    {
        int retval;

        retval = mysql_db_async_result(dbh, NULL);

mysql.xs  view on Meta::CPAN

        }
    }

void mysql_async_ready(dbh)
    SV* dbh
  PPCODE:
    {
        int retval;

        retval = mysql_db_async_ready(dbh);
        if(retval > 0) {

mysql.xs  view on Meta::CPAN

        }
    }

void _async_check(dbh)
    SV* dbh
  PPCODE:
    {
        D_imp_dbh(dbh);
        ASYNC_CHECK_XS(dbh);
        XSRETURN_YES;
    }

mysql.xs  view on Meta::CPAN

  OUTPUT:
    RETVAL

void mysql_async_ready(sth)
    SV* sth
  PPCODE:
    {
        int retval;

        retval = mysql_db_async_ready(sth);
        if(retval > 0) {

mysql.xs  view on Meta::CPAN

        }
    }

void _async_check(sth)
    SV* sth
  PPCODE:
    {
        D_imp_sth(sth);
        D_imp_dbh_from_sth;
        ASYNC_CHECK_XS(sth);
        XSRETURN_YES;

 view all matches for this distribution


DBD_SQLFLEX

 view release on metacpan or  search on metacpan

Sqlflex.xs  view on Meta::CPAN


# Utility function to list available databases
void
data_sources(drh)
	SV *drh
	PPCODE:
# Note that a database name could consist of up to 18 characters in OnLine,
# plus the name of the server (no limit defined, assume 18 again), plus the
# at sign and the NUL at the end.
#define MAXDBS 100
#define MAXDBSSIZE	(18+18+2)

 view all matches for this distribution


DBI

 view release on metacpan or  search on metacpan

DBI.xs  view on Meta::CPAN

    SV *        class
    SV *        parent
    SV *        attr_ref
    SV *        imp_datasv
    SV *        imp_class
    PPCODE:
    dMY_CXT;
    HV *outer;
    SV *outer_ref;
    HV *class_stash = gv_stashsv(class, GV_ADDWARN);

DBI.xs  view on Meta::CPAN



void
_handles(sv)
    SV *        sv
    PPCODE:
    /* return the outer and inner handle for any given handle */
    D_imp_xxh(sv);
    SV *ih = sv_mortalcopy( dbih_inner(aTHX_ sv, "_handles") );
    SV *oh = sv_2mortal(newRV_inc((SV*)DBIc_MY_H(imp_xxh))); /* XXX dangerous */
    (void)cv;

DBI.xs  view on Meta::CPAN

    OUTPUT:
    RETVAL

void
looks_like_number(...)
    PPCODE:
    int i;
    EXTEND(SP, items);
    (void)cv;
    for(i=0; i < items ; ++i) {
        SV *sv = ST(i);

DBI.xs  view on Meta::CPAN

void
fetchrow_array(sth)
    SV *        sth
    ALIAS:
    fetchrow = 1
    PPCODE:
    SV *retsv;
    if (CvDEPTH(cv) == 99) {
        PERL_UNUSED_VAR(ix);
        croak("Deep recursion, probably fetchrow-fetch-fetchrow loop");
    }

DBI.xs  view on Meta::CPAN



void
DESTROY(sth)
    SV *        sth
    PPCODE:
    /* keep in sync with DESTROY in Driver.xst */
    D_imp_sth(sth);
    ST(0) = &PL_sv_yes;
    /* we don't test IMPSET here because this code applies to pure-perl drivers */
    if (DBIc_IADESTROY(imp_sth)) { /* want's ineffective destroy    */

DBI.xs  view on Meta::CPAN

    SV *        err
    SV *        errstr
    SV *        state
    SV *        method
    SV *        result
    PPCODE:
    {
    D_imp_xxh(h);
    SV **sem_svp;
    (void)cv;

 view all matches for this distribution


DBIx-SpatialKey

 view release on metacpan or  search on metacpan

SpatialKey.xs  view on Meta::CPAN


void
unpack(obj,key)
	SV *	obj
        SV *	key
        PPCODE:
        keydef *kd = (keydef*)SvIV(SvRV(obj));
        U32 *val;
        U32 mask;
        u8 *out;
        u8 out_mask;

SpatialKey.xs  view on Meta::CPAN

        Safefree (val);

void
ranges(obj,...)
	SV *	obj
        PPCODE:
        keydef *kd = (keydef*)SvIV(SvRV(obj));
#if 1
        croak ("ranges not supported in this version");
#else
        U32 *min, *max;

 view all matches for this distribution


DBIx-TextIndex

 view release on metacpan or  search on metacpan

TextIndex.xs  view on Meta::CPAN

}

void
term_docs_hashref(packed)
  SV *packed
PPCODE:
{
    HV *freqs;
    char *string;
    STRLEN len;
    int length;

TextIndex.xs  view on Meta::CPAN



void
term_docs_arrayref(packed)
  SV *packed
PPCODE:
{
    AV *results;
    char *string;
    STRLEN len;
    int length;

TextIndex.xs  view on Meta::CPAN

}

void
term_doc_ids_arrayref(packed)
  SV *packed
PPCODE:
{
    AV *results;
    char *string;
    STRLEN len;
    int length;

TextIndex.xs  view on Meta::CPAN



void
term_docs_array(packed)
  SV *packed
PPCODE:
{
    char *string;
    STRLEN len;
    int length;
    unsigned int value;

TextIndex.xs  view on Meta::CPAN



void
term_docs_and_freqs(packed)
  SV *packed
PPCODE:
{
    AV *docs;
    AV *freqs;
    char *string;
    STRLEN len;

TextIndex.xs  view on Meta::CPAN



void
pack_vint(ints_arrayref)
  SV *ints_arrayref
PPCODE:
{
    char *packed;
    AV *term_freqs;
    I32 length = 0;
    unsigned int i, j, value;

TextIndex.xs  view on Meta::CPAN



void
pack_vint_delta(ints_arrayref)
  SV *ints_arrayref
PPCODE:
{
    char *packed;
    AV *ints_array;
    I32 length = 0;
    unsigned int i, j, value, last_value, delta_value;

TextIndex.xs  view on Meta::CPAN

}

void
pack_term_docs(term_docs_arrayref)
  SV *term_docs_arrayref
PPCODE:
{
    char *packed;
    I32 length = 0;
    unsigned int i, j, last_doc, value;
    register unsigned long buff;

TextIndex.xs  view on Meta::CPAN


void
pack_term_docs_append_vint(packed, vint)
  SV *packed
  SV *vint
PPCODE:
{
    char *str_a, *str_b, *newpack;
    STRLEN len_a, len_b;
    I32 length_a = 0;
    I32 length_b = 0;

TextIndex.xs  view on Meta::CPAN

  SV *term_docs_arrayref
  SV *term_pos_arrayref
  SV *prox_SV
  SV *and_vec_min_SV
  SV *and_vec_max_SV
PPCODE:
{
    I32 *length_td,
        *length_tp;
    unsigned int term_count,
                 prox        = SvIV(prox_SV),

TextIndex.xs  view on Meta::CPAN

  SV *W_D_arrayref
  SV *avg_W_d_SV
  SV *w_qt_SV
  SV *k1_SV
  SV *b_SV
PPCODE:
{
    int          acc_size,
                 length;
    unsigned int acc_lim    =  SvIV(acc_lim_SV),
                 f_t        =  SvIV(f_t_SV),

 view all matches for this distribution


DB_File

 view release on metacpan or  search on metacpan

fallback.xs  view on Meta::CPAN

	/* NV		nv;	Uncomment this if you need to return NVs */
	/* const char	*pv;	Uncomment this if you need to return PVs */
    INPUT:
	SV *		sv;
        const char *	s = SvPV(sv, len);
    PPCODE:
        /* Change this to constant(aTHX_ s, len, &iv, &nv);
           if you need to return both NVs and IVs */
	type = constant(aTHX_ s, len, &iv);
      /* Return 1 or 2 items. First is error message, or undef if no error.
           Second, if present, is found value */

 view all matches for this distribution


DCE-Perl

 view release on metacpan or  search on metacpan

ACL/ACL.xs  view on Meta::CPAN


void
sec_acl_DESTROY(handle)
DCE::ACL::handle handle

   PPCODE:
   {
   error_status_t status; 
   /* some problems here on DEC & Solaris */
#ifdef HPUX
   sec_acl_release_handle(handle, &status);

ACL/ACL.xs  view on Meta::CPAN

sec_acl_get_manager_types(handle, sec_acl_type=sec_acl_type_object, size_avail=1)
DCE::ACL::handle handle
sec_acl_type_t  sec_acl_type
unsigned32 size_avail

    PPCODE: 
    {  
    unsigned32 size_used, num_types;
    uuid_t *manager_types = malloc(sizeof(uuid_t) * size_avail);
    error_status_t status;
    SV *uuid_sv;

ACL/ACL.xs  view on Meta::CPAN

DCE::ACL::handle handle
SV *mgr_sv
sec_acl_type_t  sec_acl_type
DCE::ACL::list l

    PPCODE:
    {
      error_status_t status;
      uuid_t manager_type;

      SNAG_FIRST_MANAGER(handle, manager_type, sec_acl_type, mgr_sv);

ACL/ACL.xs  view on Meta::CPAN

sec_acl_get_printstring(handle, mgr_sv=&PL_sv_undef, printstring_len=32)
DCE::ACL::handle handle
SV *mgr_sv
unsigned32 printstring_len

    PPCODE:
    {
      uuid_t manager_type, manager_type_chain;
      sec_acl_printstring_t manager_info;
      boolean32 tokenize;
      unsigned32 total_num_printstrings, num_printstrings;

ACL/ACL.xs  view on Meta::CPAN

sec_acl_test_access(handle, mgr_sv, permset)
DCE::ACL::handle handle
SV *mgr_sv
sec_acl_permset_t permset

   PPCODE:
   {
     uuid_t manager_type;
     error_status_t status;
     boolean32 res;

ACL/ACL.xs  view on Meta::CPAN

DCE::ACL::handle handle
SV *uuid
SV *pac
sec_acl_permset_t desired_permset

    PPCODE:
    {
     uuid_t mgr_type;
     sec_id_pac_t subject;
     error_status_t status;
     boolean32 res;

ACL/ACL.xs  view on Meta::CPAN

void
sec_acl_get_access(handle, mgr_sv)
DCE::ACL::handle handle
SV *mgr_sv

   PPCODE:
   {
     sec_acl_permset_t permset;
     uuid_t manager_type;
     error_status_t status;
   

ACL/ACL.xs  view on Meta::CPAN

sec_acl_lookup(handle, mgr_sv, sec_acl_type=sec_acl_type_object) 
DCE::ACL::handle handle
SV      *mgr_sv
sec_acl_type_t  sec_acl_type

    PPCODE:
    {
    sec_acl_list_t *l = 
	(sec_acl_list_t *)safemalloc(sizeof(sec_acl_list_t));  
    uuid_t manager_type;
    error_status_t status, rstatus;

ACL/ACL.xs  view on Meta::CPAN


DCE::ACL
acls(l, ...)
DCE::ACL::list l

   PPCODE:
   {
   int i;
   if(items > 1) {
       i = (int)SvIV(ST(1));
       BLESS_ACL(l->sec_acls[i]);

ACL/ACL.xs  view on Meta::CPAN

void
dce_acl_obj_init(self, mgr_sv)
SV *self
SV *mgr_sv

    PPCODE:
    {
    uuid_t manager_type;	
    sec_acl_t *acl = (sec_acl_t *)safemalloc(sizeof(sec_acl_t));
    error_status_t status;
    

ACL/ACL.xs  view on Meta::CPAN

void
dce_acl_obj_add_any_other_entry(acl, permset)
DCE::ACL acl
sec_acl_permset_t permset

    PPCODE:
    {
    error_status_t status;
    dce_acl_obj_add_any_other_entry(acl, permset, &status);
    DCESTATUS;
    }

ACL/ACL.xs  view on Meta::CPAN

sec_acl_bind(package, entry_name, bind_to_entry=FALSE)
char *package
unsigned char *entry_name
boolean32 bind_to_entry

    PPCODE:
    {
    sec_acl_handle_t  handle;
    error_status_t status;
    SV *sv;
    package = "DCE::ACL::handle"; 

ACL/ACL.xs  view on Meta::CPAN

sec_acl_bind_to_addr(package, site_addr, component_name)
char *package
unsigned char *site_addr
unsigned char *component_name

    PPCODE:
    {
    sec_acl_handle_t  handle;
    error_status_t status;
    SV *sv;
    package = "DCE::ACL::handle"; 

ACL/ACL.xs  view on Meta::CPAN


void
entries(acl, ...)
DCE::ACL acl

    PPCODE:
    {
    int i;
    if(items > 1) {	
	i = (int)SvIV(ST(1));
	BLESS_ACL_ENTRY(&acl->sec_acl_entries[i]);

ACL/ACL.xs  view on Meta::CPAN

void
add(acl, e)
DCE::ACL acl
DCE::ACL::entry e

    PPCODE:
    {
    int i;
    sec_acl_entry_t *new_sec_acl_entries;
    boolean32       entry_found = FALSE;
    error_status_t status;

ACL/ACL.xs  view on Meta::CPAN

void
remove(acl, e)
DCE::ACL acl
DCE::ACL::entry e

    PPCODE:
    {
    int i, j;
    boolean32       entry_found = FALSE;
    error_status_t  status;

 view all matches for this distribution


DFS-Perl

 view release on metacpan or  search on metacpan

DFS-full.xs  view on Meta::CPAN

       RETVAL

void
fid(path)
    char *path
    PPCODE:
    {   
      struct afs_ioctl ioctl_buf;
      DCE__DFS__fid fid;
      error_status_t status = 0;
      SV *sv = &PL_sv_undef;

DFS-full.xs  view on Meta::CPAN

    }

void
flserver(cell_fs = "/.:/fs")
     char *cell_fs
     PPCODE:
     {
       SV *sv;
       DCE__DFS__flserver flserver;
       error_status_t status;

DFS-full.xs  view on Meta::CPAN

       free((void *)fid);

void
id(fid)
     DCE::DFS::fid fid
     PPCODE:
     {
       char buf[32];

       sprintf(buf, "%d,,%d", AFS_hgethi(fid->Volume), AFS_hgetlo(fid->Volume));
       XPUSHs(sv_2mortal(newSVpv(buf, strlen(buf))));

DFS-full.xs  view on Meta::CPAN

     }

void
ftserver(flserver)
     DCE::DFS::flserver flserver
     PPCODE:
     {
       DCE__DFS__ftserver ftserver;
       error_status_t status = 0;
       int index;
       SV *sv = &PL_sv_undef;

DFS-full.xs  view on Meta::CPAN


void
ftserver_by_name(flserver, name)
     DCE::DFS::flserver flserver
     char *name
     PPCODE:
     {
       DCE__DFS__ftserver ftserver;
       error_status_t status;
       u_long addr = 0;
       struct hostent *host;

DFS-full.xs  view on Meta::CPAN

     }

void
fileset(flserver)
     DCE::DFS::flserver flserver
     PPCODE:
     {
       DCE__DFS__fileset fileset;
       error_status_t status = 0;
       unsigned32 dummy, dummy2;
       int index;

DFS-full.xs  view on Meta::CPAN


void
fileset_by_name(flserver, name)
     DCE::DFS::flserver flserver
     char *name
     PPCODE:
     {
       error_status_t status;
       DCE__DFS__fileset fileset;
       SV *sv = &PL_sv_undef;
       int index;

DFS-full.xs  view on Meta::CPAN

void
fileset_by_id(flserver, fid)
     DCE::DFS::flserver flserver
     DCE::DFS::fid fid

     PPCODE:
     {
       error_status_t status;
       DCE__DFS__fileset fileset;
       SV *sv = &PL_sv_undef;
       int index;

DFS-full.xs  view on Meta::CPAN



void
aggregate(ftserver)
     DCE::DFS::ftserver ftserver
     PPCODE:
     {
       DCE__DFS__aggregate aggr;
       error_status_t status = 0;
       SV *sv = &PL_sv_undef;
       

DFS-full.xs  view on Meta::CPAN

     }

void
ftserver(aggr)
     DCE::DFS::aggregate aggr
     PPCODE:
     {
       DCE__DFS__ftserver ftserver;
       error_status_t status = 0;
       SV *sv = &PL_sv_undef;
       

DFS-full.xs  view on Meta::CPAN


void
ftserver(fileset, ftserver_index = -1)
     DCE::DFS::fileset fileset
     int ftserver_index
     PPCODE:
     {
       DCE__DFS__ftserver ftserver;
       error_status_t status = 0;
       SV *sv = &PL_sv_undef;
       int index = ((ftserver_index == -1) ? fileset->ftserver_rw_index : ftserver_index);

DFS-full.xs  view on Meta::CPAN


void
aggregate(fileset, ftserver_index = -1)
     DCE::DFS::fileset fileset
     int ftserver_index
     PPCODE:
     {
       DCE__DFS__aggregate aggr;
       error_status_t status = 0;
       int index = ((ftserver_index == -1) ? fileset->ftserver_rw_index : ftserver_index);
       SV *sv = &PL_sv_undef;

DFS-full.xs  view on Meta::CPAN

void
usage(fileset, ftserver_index = -1, fileset_type = 0)
     DCE::DFS::fileset fileset
     int ftserver_index
     int fileset_type
     PPCODE:
     {
       SV *sv;
       error_status_t status;
       int index = ((ftserver_index == -1) ? fileset->ftserver_rw_index : ftserver_index);
       ftserver_status *ft_status = NULL;

DFS-full.xs  view on Meta::CPAN

     }
       
void
quota(fileset)
     DCE::DFS::fileset fileset
     PPCODE:
     {
       SV *sv;
       error_status_t status;
       unsigned32 quota, used;

 view all matches for this distribution


DLM-Client

 view release on metacpan or  search on metacpan

fallback/const-xs.inc  view on Meta::CPAN

	/* NV		nv;	Uncomment this if you need to return NVs */
	/* const char	*pv;	Uncomment this if you need to return PVs */
    INPUT:
	SV *		sv;
        const char *	s = SvPV(sv, len);
    PPCODE:
        /* Change this to constant(aTHX_ s, len, &iv, &nv);
           if you need to return both NVs and IVs */
	type = constant(aTHX_ s, len, &iv);
      /* Return 1 or 2 items. First is error message, or undef if no error.
           Second, if present, is found value */

 view all matches for this distribution


DSP-LinPred_XS

 view release on metacpan or  search on metacpan

lib/DSP/LinPred_XS.xs  view on Meta::CPAN


PROTOTYPES: DISABLE

void
get_stat(...)
PPCODE:
{
    if(items != 1){
	croak("Invalid argument");
    }
    SV* input = ST(0);

 view all matches for this distribution


DVD-Read

 view release on metacpan or  search on metacpan

Read.xs  view on Meta::CPAN

_new(class, device)
    char * class
    char * device
    PREINIT:
    dvd_reader_t * dvd;
    PPCODE:
    if ((dvd = DVDOpen(device)) != NULL)
       XPUSHs(sv_2mortal(sv_setref_pv(newSVpv("", 0), class, (void *)dvd)));
    else
        XSRETURN_UNDEF; 

char *
volid(dvd)
    dvd_reader_t * dvd
    PREINIT:
        char * volid = malloc(sizeof(char) * 33);
    PPCODE:
        if (DVDUDFVolumeInfo(dvd, volid, sizeof(volid), NULL, 0) >= 0 ||
            DVDISOVolumeInfo(dvd, volid, sizeof(volid), NULL, 0) >= 0)
            XPUSHs(sv_2mortal(newSVpv(volid, 0)));
        free(volid);
        

Read.xs  view on Meta::CPAN

    PREINIT:
    dvd_read_domain_t domain = -1;
    dvd_file_t * dvd_file;
    char * ttype[] = { "IFO", "BUP", "MENU", "VOB", NULL };
    int i;
    PPCODE:
    for (i=0; ttype[i] != NULL; i++)
        if (!strcmp(type, ttype[i]))
            domain = i;

    if (domain < 0)

Read.xs  view on Meta::CPAN

    int offset
    ssize_t size
    PREINIT:
    ssize_t res;
    unsigned char * data;
    PPCODE:
    data = malloc(DVD_VIDEO_LB_LEN * size);
    if ((res = DVDReadBlocks(dvd_file, offset, size, data)) >= 0) {
        if (GIMME_V == G_ARRAY) /* in array context,
                               * return the nb of block read */
        XPUSHs(sv_2mortal(newSViv(res)));

Read.xs  view on Meta::CPAN

    char * class
    dvd_reader_t * dvd
    int titleno
    PREINIT:
    ifo_handle_t * ifo;
    PPCODE:
    if ((ifo = ifoOpen(dvd, titleno)))
        XPUSHs(sv_2mortal(sv_setref_pv(newSVpv("", 0), class, (void *)ifo)));
    else
        XSRETURN_UNDEF;

Read.xs  view on Meta::CPAN

MODULE = DVD::Read		PACKAGE = DVD::Read::Dvd::Ifo::Vmg

void
vmg_identifier(ifo)
    ifo_handle_t * ifo
    PPCODE:
    if (ifo->vmgi_mat) {
        XPUSHs(sv_2mortal(newSVpv(ifo->vmgi_mat->vmg_identifier, 12)));
    } else
        croak(CROAK_NOT_VGM);

void
titles_count(ifo)
    ifo_handle_t * ifo
    PPCODE:
    if (ifo->tt_srpt)
        XPUSHs(sv_2mortal(newSViv(ifo->tt_srpt->nr_of_srpts)));
    else
        croak(CROAK_NOT_VGM);

void
title_chapters_count(ifo, titleno)
    ifo_handle_t * ifo
    int titleno
    PPCODE:
    if (ifo->tt_srpt) {
        if(titleno > 0 && titleno <= ifo->tt_srpt->nr_of_srpts)
        XPUSHs(sv_2mortal(newSViv(ifo->tt_srpt->title[titleno -1].nr_of_ptts)));
    } else
        croak(CROAK_NOT_VGM);

void
title_angles_count(ifo, titleno)
    ifo_handle_t * ifo
    int titleno
    PPCODE:
    if (ifo->tt_srpt) {
        if (titleno > 0 && titleno <= ifo->tt_srpt->nr_of_srpts)
        XPUSHs(sv_2mortal(newSViv(ifo->tt_srpt->title[titleno -1].nr_of_angles)));
    } else
        croak(CROAK_NOT_VGM);

void
title_nr(ifo, titleno)
    ifo_handle_t * ifo
    int titleno
    PPCODE:
    if (ifo->tt_srpt) {
        if (titleno > 0 && titleno <= ifo->tt_srpt->nr_of_srpts)
        XPUSHs(sv_2mortal(newSViv(ifo->tt_srpt->title[titleno -1].title_set_nr)));
    } else
        croak(CROAK_NOT_VGM);

void
title_ttn(ifo, titleno)
    ifo_handle_t * ifo
    int titleno
    PPCODE:
    if (ifo->tt_srpt) {
        if (titleno > 0 && titleno <= ifo->tt_srpt->nr_of_srpts)
        XPUSHs(sv_2mortal(newSViv(ifo->tt_srpt->title[titleno -1].vts_ttn)));
    } else
        croak(CROAK_NOT_VGM);

Read.xs  view on Meta::CPAN

MODULE = DVD::Read		PACKAGE = DVD::Read::Dvd::Ifo::Vts

void
vts_ttn_count(ifo)
    ifo_handle_t * ifo
    PPCODE:
    if (ifo->vts_ptt_srpt)
        XPUSHs(sv_2mortal(newSViv(ifo->vts_ptt_srpt->nr_of_srpts)));
    else
        croak(CROAK_NOT_VTS);

void
vts_identifier(ifo)
    ifo_handle_t * ifo
    PPCODE:
    if (ifo->vtsi_mat)
        XPUSHs(sv_2mortal(newSVpv(ifo->vtsi_mat->vts_identifier, 12)));
    else
        croak(CROAK_NOT_VTS);

void
vts_video_mpeg_version(ifo)
    ifo_handle_t * ifo
    PREINIT:
    video_attr_t *attr;
    PPCODE:
    if (ifo->vtsi_mat) {
        attr = &ifo->vtsi_mat->vts_video_attr;
        XPUSHs(sv_2mortal(newSViv(attr->mpeg_version)));
    }

void
vts_video_format(ifo)
    ifo_handle_t * ifo
    PREINIT:
    video_attr_t *attr;
    PPCODE:
    if (ifo->vtsi_mat) {
        attr = &ifo->vtsi_mat->vts_video_attr;
        XPUSHs(sv_2mortal(newSViv(attr->video_format)));
    }

void
vts_video_aspect_ratio(ifo)
    ifo_handle_t * ifo
    PREINIT:
    video_attr_t *attr;
    PPCODE:
    if (ifo->vtsi_mat) {
        attr = &ifo->vtsi_mat->vts_video_attr;
        XPUSHs(sv_2mortal(newSViv(attr->display_aspect_ratio)));
    }

void
vts_video_permitted_df(ifo)
    ifo_handle_t * ifo
    PREINIT:
    video_attr_t *attr;
    PPCODE:
    if (ifo->vtsi_mat) {
        attr = &ifo->vtsi_mat->vts_video_attr;
        XPUSHs(sv_2mortal(newSViv(attr->permitted_df)));
    }

void
vts_video_line21_cc_1(ifo)
    ifo_handle_t * ifo
    PREINIT:
    video_attr_t *attr;
    PPCODE:
    if (ifo->vtsi_mat) {
        attr = &ifo->vtsi_mat->vts_video_attr;
        XPUSHs(sv_2mortal(newSViv(attr->line21_cc_1)));
    }

void
vts_video_line21_cc_2(ifo)
    ifo_handle_t * ifo
    PREINIT:
    video_attr_t *attr;
    PPCODE:
    if (ifo->vtsi_mat) {
        attr = &ifo->vtsi_mat->vts_video_attr;
        XPUSHs(sv_2mortal(newSViv(attr->line21_cc_2)));
    }

void
vts_video_letterboxed(ifo)
    ifo_handle_t * ifo
    PREINIT:
    video_attr_t *attr;
    PPCODE:
    if (ifo->vtsi_mat) {
        attr = &ifo->vtsi_mat->vts_video_attr;
        XPUSHs(sv_2mortal(newSViv(attr->letterboxed)));
    }

void
vts_video_film_mode(ifo)
    ifo_handle_t * ifo
    PREINIT:
    video_attr_t *attr;
    PPCODE:
    if (ifo->vtsi_mat) {
        attr = &ifo->vtsi_mat->vts_video_attr;
        XPUSHs(sv_2mortal(newSViv(attr->film_mode)));
    }

void
vts_video_size(ifo)
    ifo_handle_t * ifo
    PREINIT:
    video_attr_t *attr;
    PPCODE:
    if (ifo->vtsi_mat) {
        int height = 480;
        attr = &ifo->vtsi_mat->vts_video_attr;
        if(attr->video_format != 0)
          height = 576;

Read.xs  view on Meta::CPAN

    ifo_handle_t * ifo
    PREINIT:
    pgc_t *pgc = NULL;
    int i;
    audio_attr_t   *a_attr;
    PPCODE:
    if (!ifo->vtsi_mat)
        croak(CROAK_NOT_VTS);
    else
    for (i = 0; i < ifo->vtsi_mat->nr_of_vts_audio_streams; i++) {
        a_attr = &ifo->vtsi_mat->vts_audio_attr[i];

Read.xs  view on Meta::CPAN

vts_audio_language(ifo, audiono)
    ifo_handle_t * ifo
    int audiono
    PREINIT:
    audio_attr_t   *a_attr;
    PPCODE:
    if (!ifo->vtsi_mat)
        croak(CROAK_NOT_VTS);
    else if (audiono >= 0 && audiono < ifo->vtsi_mat->nr_of_vts_audio_streams) {
        a_attr = &ifo->vtsi_mat->vts_audio_attr[audiono];
        if(a_attr->lang_type == 1) {

Read.xs  view on Meta::CPAN

vts_audio_format(ifo, audiono)
    ifo_handle_t * ifo
    int audiono
    PREINIT:
    audio_attr_t   *a_attr;
    PPCODE:
    if (!ifo->vtsi_mat)
        croak(CROAK_NOT_VTS);
    else if (audiono >= 0 && audiono < ifo->vtsi_mat->nr_of_vts_audio_streams) {
        a_attr = &ifo->vtsi_mat->vts_audio_attr[audiono];
        XPUSHs(sv_2mortal(newSViv(a_attr->audio_format)));

Read.xs  view on Meta::CPAN

vts_audio_id(ifo, audiono)
    ifo_handle_t * ifo
    int audiono
    PREINIT:
    audio_attr_t   *a_attr;
    PPCODE:
    if (!ifo->vtsi_mat)
        croak(CROAK_NOT_VTS);
    else if (audiono >= 0 && audiono < ifo->vtsi_mat->nr_of_vts_audio_streams) {
        a_attr = &ifo->vtsi_mat->vts_audio_attr[audiono];
        XPUSHs(sv_2mortal(newSViv(audio_id[a_attr->audio_format])));

Read.xs  view on Meta::CPAN

vts_audio_channel(ifo, audiono)
    ifo_handle_t * ifo
    int audiono
    PREINIT:
    audio_attr_t   *a_attr;
    PPCODE:
    if (!ifo->vtsi_mat)
        croak(CROAK_NOT_VTS);
    else if (audiono >= 0 && audiono < ifo->vtsi_mat->nr_of_vts_audio_streams) {
        a_attr = &ifo->vtsi_mat->vts_audio_attr[audiono];
        XPUSHs(sv_2mortal(newSViv(a_attr->channels)));

Read.xs  view on Meta::CPAN

vts_audio_appmode(ifo, audiono)
    ifo_handle_t * ifo
    int audiono
    PREINIT:
    audio_attr_t   *a_attr;
    PPCODE:
    if (!ifo->vtsi_mat)
        croak(CROAK_NOT_VTS);
    else if (audiono >= 0 && audiono < ifo->vtsi_mat->nr_of_vts_audio_streams) {
        a_attr = &ifo->vtsi_mat->vts_audio_attr[audiono];
        XPUSHs(sv_2mortal(newSViv(a_attr->application_mode)));

Read.xs  view on Meta::CPAN

vts_audio_quantization(ifo, audiono)
    ifo_handle_t * ifo
    int audiono
    PREINIT:
    audio_attr_t   *a_attr;
    PPCODE:
    if (!ifo->vtsi_mat)
        croak(CROAK_NOT_VTS);
    else if (audiono >= 0 && audiono < ifo->vtsi_mat->nr_of_vts_audio_streams) {
        a_attr = &ifo->vtsi_mat->vts_audio_attr[audiono];
        XPUSHs(sv_2mortal(newSViv(a_attr->quantization)));

Read.xs  view on Meta::CPAN

vts_audio_frequency(ifo, audiono)
    ifo_handle_t * ifo
    int audiono
    PREINIT:
    audio_attr_t   *a_attr;
    PPCODE:
    if (!ifo->vtsi_mat)
        croak(CROAK_NOT_VTS);
    else if (audiono >= 0 && audiono < ifo->vtsi_mat->nr_of_vts_audio_streams) {
        a_attr = &ifo->vtsi_mat->vts_audio_attr[audiono];
        XPUSHs(sv_2mortal(newSViv(a_attr->sample_frequency)));

Read.xs  view on Meta::CPAN

vts_audio_lang_extension(ifo, audiono)
    ifo_handle_t * ifo
    int audiono
    PREINIT:
    audio_attr_t   *a_attr;
    PPCODE:
    if (!ifo->vtsi_mat)
        croak(CROAK_NOT_VTS);
    else if (audiono >= 0 && audiono < ifo->vtsi_mat->nr_of_vts_audio_streams) {
        a_attr = &ifo->vtsi_mat->vts_audio_attr[audiono];
        XPUSHs(sv_2mortal(newSViv(a_attr->lang_extension)));

Read.xs  view on Meta::CPAN

vts_audio_multichannel_extension(ifo, audiono)
    ifo_handle_t * ifo
    int audiono
    PREINIT:
    audio_attr_t   *a_attr;
    PPCODE:
    if (!ifo->vtsi_mat)
        croak(CROAK_NOT_VTS);
    else if (audiono >= 0 && audiono < ifo->vtsi_mat->nr_of_vts_audio_streams) {
        a_attr = &ifo->vtsi_mat->vts_audio_attr[audiono];
        XPUSHs(sv_2mortal(newSViv(a_attr->multichannel_extension)));

Read.xs  view on Meta::CPAN

vts_subtitles(ifo)
    ifo_handle_t * ifo
    PREINIT:
    int i;
    subp_attr_t    *s_attr;
    PPCODE:
    if (!ifo->vtsi_mat)
        croak(CROAK_NOT_VTS);
    else
    for (i = 0; i < ifo->vtsi_mat->nr_of_vts_subp_streams; i++) {
        s_attr = &ifo->vtsi_mat->vts_subp_attr[i];

Read.xs  view on Meta::CPAN

vts_subtitle_lang_extension(ifo, subtitleno)
    ifo_handle_t * ifo
    int subtitleno
    PREINIT:
    subp_attr_t    *s_attr;
    PPCODE:
    if (!ifo->vtsi_mat)
        croak(CROAK_NOT_VTS);
    else if (subtitleno >= 0 && subtitleno < ifo->vtsi_mat->nr_of_vts_subp_streams) {
        s_attr = &ifo->vtsi_mat->vts_subp_attr[subtitleno];
        XPUSHs(sv_2mortal(newSViv(s_attr->lang_extension)));

Read.xs  view on Meta::CPAN

vts_subtitle_language(ifo, subtitleno)
    ifo_handle_t * ifo
    int subtitleno
    PREINIT:
    subp_attr_t    *s_attr;
    PPCODE:
    if (!ifo->vtsi_mat)
        croak(CROAK_NOT_VTS);
    else if (subtitleno >= 0 && subtitleno < ifo->vtsi_mat->nr_of_vts_subp_streams) {
        s_attr = &ifo->vtsi_mat->vts_subp_attr[subtitleno];
        if(s_attr->type == 1) {

Read.xs  view on Meta::CPAN

vts_chapters_count(ifo, ttn)
    ifo_handle_t * ifo
    int ttn
    PREINIT:
    vts_ptt_srpt_t * vts_ptt_srpt;
    PPCODE:
    vts_ptt_srpt = ifo->vts_ptt_srpt;
    if (!vts_ptt_srpt)
        croak(CROAK_NOT_VTS);
    else if (ttn > 0 && ttn <= vts_ptt_srpt->nr_of_srpts)
        XPUSHs(sv_2mortal(newSViv(vts_ptt_srpt->title[ttn - 1].nr_of_ptts)));

Read.xs  view on Meta::CPAN

    int pgc_id;
    vts_ptt_srpt_t * vts_ptt_srpt;
    dvd_time_t     *dt;
    long ms, hour, minute, second;
    double fps;
    PPCODE:
    vts_ptt_srpt = vts->vts_ptt_srpt;
    if (!vts_ptt_srpt)
        croak(CROAK_NOT_VTS);
    else if (ttn > 0 && ttn <= vts_ptt_srpt->nr_of_srpts) {
        pgc_id   = vts_ptt_srpt->title[ttn - 1].ptt[0].pgcn;

Read.xs  view on Meta::CPAN

    int ttn
    int chapter
    PREINIT:
    int pgc_id;
    vts_ptt_srpt_t * vts_ptt_srpt;
    PPCODE:
    vts_ptt_srpt = vts->vts_ptt_srpt;
    if (!vts_ptt_srpt)
        croak(CROAK_NOT_VTS);
    else if (ttn > 0 && ttn <= vts_ptt_srpt->nr_of_srpts &&
        chapter > 0 && chapter <= vts_ptt_srpt->title[ttn - 1].nr_of_ptts) {

Read.xs  view on Meta::CPAN

    }

void
vts_pgcs_count(vts)
    ifo_handle_t * vts
    PPCODE:
    if (!vts->vts_ptt_srpt)
        croak(CROAK_NOT_VTS);
    else
    XPUSHs(sv_2mortal(newSViv(vts->vts_pgcit->nr_of_pgci_srp)));

Read.xs  view on Meta::CPAN

    int ttn
    int chapter
    PREINIT:
    int pgn;
    vts_ptt_srpt_t * vts_ptt_srpt;
    PPCODE:
    vts_ptt_srpt = vts->vts_ptt_srpt;
    if (!vts_ptt_srpt)
        croak(CROAK_NOT_VTS);
    else if (ttn > 0 && ttn <= vts_ptt_srpt->nr_of_srpts &&
        chapter > 0 && chapter <= vts_ptt_srpt->title[ttn - 1].nr_of_ptts) {

Read.xs  view on Meta::CPAN

    int pgc_id
    PREINIT:
    ifo_handle_t * vts;
    sv_pgc_t * sv_pgc;
    vts_ptt_srpt_t * vts_ptt_srpt; 
    PPCODE:
    if (sv_isobject(sv_vts) && (SvTYPE(SvRV(sv_vts)) == SVt_PVMG))
        vts = (ifo_handle_t *)SvIV((SV*)SvRV( sv_vts ));
    else {
        warn( "DVD::Read::Dvd::Ifo::Vts::vts_pgc() -- ifo is not a blessed SV reference" );
        XSRETURN_UNDEF;

Read.xs  view on Meta::CPAN

MODULE = DVD::Read PACKAGE = DVD::Read::Dvd::Ifo::Pgc

void
DESTROY(sv_pgc)
    sv_pgc_t * sv_pgc;
    PPCODE:
    SvREFCNT_dec(sv_pgc->sv_ifo_handle);
    free(sv_pgc);

int
id(sv_pgc)

Read.xs  view on Meta::CPAN

    RETVAL

void
cells_count(sv_pgc)
    sv_pgc_t * sv_pgc
    PPCODE:
    XPUSHs(sv_2mortal(newSViv(sv_pgc->pgc->nr_of_cells)));

void
cell_number(sv_pgc, pgn)
    sv_pgc_t * sv_pgc
    int pgn
    PPCODE:
    if (pgn <= sv_pgc->pgc->nr_of_programs)
        XPUSHs(sv_2mortal(newSViv(sv_pgc->pgc->program_map[pgn - 1])));

void
cell(sv_pgc, cellid)
    sv_pgc_t * sv_pgc
    int cellid
    PREINIT:
    sv_cell_playback_t * sv_cell = NULL;
    PPCODE:
    if (cellid <= sv_pgc->pgc->nr_of_cells) {
        sv_cell = malloc(sizeof(* sv_cell));
        sv_cell->cellid = cellid;
        sv_cell->cell = &sv_pgc->pgc->cell_playback[cellid -1];
        sv_cell->sv_ifo_handle = SvREFCNT_inc(sv_pgc->sv_ifo_handle);

Read.xs  view on Meta::CPAN

    }

void
_programs_count(sv_pgc)
    sv_pgc_t * sv_pgc
    PPCODE:
    XPUSHs(sv_2mortal(newSViv(sv_pgc->pgc->nr_of_programs)));

MODULE = DVD::Read PACKAGE = DVD::Read::Dvd::Ifo::Cell

void
DESTROY(sv_cell)
    sv_cell_playback_t * sv_cell;
    PPCODE:
    SvREFCNT_dec(sv_cell->sv_ifo_handle);
    free(sv_cell);

int
first_sector(sv_cell)

Read.xs  view on Meta::CPAN

time(sv_cell)
    sv_cell_playback_t * sv_cell
    PREINIT:
    double ms, fps, hour, minute, second;
    dvd_time_t * dt;
    PPCODE:
    dt = &sv_cell->cell->playback_time;
    hour = ((dt->hour & 0xf0) >> 4) * 10 + (dt->hour & 0x0f);
    minute = ((dt->minute & 0xf0) >> 4) * 10 + (dt->minute & 0x0f);
    second = ((dt->second & 0xf0) >> 4) * 10 + (dt->second & 0x0f);
    if (((dt->frame_u & 0xc0) >> 6) == 1)

 view all matches for this distribution


Data-Alias

 view release on metacpan or  search on metacpan

Alias.xs  view on Meta::CPAN

void
deref(...)
    PREINIT:
	I32 i, n = 0;
	SV *sv;
    PPCODE:
	for (i = 0; i < items; i++) {
		if (!SvROK(ST(i))) {
			STRLEN z;
			if (SvOK(ST(i)))
				Perl_croak(aTHX_ DA_DEREF_ERR, SvPV(ST(i), z));

 view all matches for this distribution


Data-BitStream-XS

 view release on metacpan or  search on metacpan

XS.xs  view on Meta::CPAN

    get_fib = 5
    get_levenstein = 6
    get_evenrodeh = 7
    get_goldbach_g1 = 8
    get_goldbach_g2 = 9
  PPCODE:
    switch (ix) {
      case 0:   GET_CODE(unary);  break;
      case 1:   GET_CODE(unary1);  break;
      case 2:   GET_CODE(gamma);  break;
      case 3:   GET_CODE(delta);  break;

XS.xs  view on Meta::CPAN

    get_comma = 4
    get_gamma_rice = 5
    get_expgolomb = 25
    get_gamma_golomb = 6
    get_gammagolomb = 26
  PPCODE:
    if (ix == 25) ix = 5;
    if (ix == 26) ix = 6;
    if ( (ix == 0 && (m < 2 || m > 16)) ||
         (ix == 1 && (m <= 0 || m > BITS_PER_WORD)) ||
         (ix == 2 && (m < -32 || m > 32)) ||

XS.xs  view on Meta::CPAN

void
get_blocktaboo(IN Data::BitStream::XS list, IN const char* taboostr, IN int count = 1)
  PREINIT:
    int k;
    UV  taboo;
  PPCODE:
    k = parse_binary_string(taboostr, &taboo);
    if ( (k < 1) || (k > 16) ) {
      croak("invalid parameters: block taboo %s", taboostr);
      XSRETURN_UNDEF;
    }

XS.xs  view on Meta::CPAN

void
_xget_rice_sub(IN Data::BitStream::XS list, IN SV* coderef, IN int k, IN int count = 1)
  PREINIT:
    SV* self = ST(0);
    SV* cref = 0;
  PPCODE:
    if ( (k < 0) || (k > BITS_PER_WORD) ) {
      croak("invalid parameters: rice %d", k);
      XSRETURN_UNDEF;
    }
    if (!SvROK(coderef)) {

XS.xs  view on Meta::CPAN

void
_xget_golomb_sub(IN Data::BitStream::XS list, IN SV* coderef, IN UV m, IN int count = 1)
  PREINIT:
    SV* self = ST(0);
    SV* cref = 0;
  PPCODE:
    if (m < W_ONE) {
      croak("invalid parameters: golomb %lu", m);
      XSRETURN_UNDEF;
    }
    if (!SvROK(coderef)) {

XS.xs  view on Meta::CPAN

      int count
  PREINIT:
    SV* self = ST(0);
    SV* cref = 0;
    SV* stack_k_ptr = ST(2);  /* Remember position of k, it will be modified */
  PPCODE:
    if ( (k < 0) || (k > BITS_PER_WORD) ) {
      croak("invalid parameters: adaptive_rice %d", k);
      XSRETURN_UNDEF;
    }
    if (!SvROK(coderef)) {

XS.xs  view on Meta::CPAN


void
get_startstop(IN Data::BitStream::XS list, IN SV* p, IN int count = 1)
  PREINIT:
    char* map;
  PPCODE:
    map = make_startstop_prefix_map(p);
    if (map == 0) {
      XSRETURN_UNDEF;
    }
    /* TODO: we'll skip free in some croak conditions */

 view all matches for this distribution


Data-Buffer-Shared

 view release on metacpan or  search on metacpan

xs/f32.xs  view on Meta::CPAN

    OUTPUT:
        RETVAL

void
slice(SV* self_sv, UV from, UV count)
    PPCODE:
        EXTRACT_BUF("Data::Buffer::Shared::F32", self_sv);
        if (count == 0) XSRETURN_EMPTY;
        float *tmp;
        Newx(tmp, count, float);
        SAVEFREEPV(tmp);

 view all matches for this distribution


Data-Checks

 view release on metacpan or  search on metacpan

lib/Data/Checks.xs  view on Meta::CPAN

}

MODULE = Data::Checks    PACKAGE = Data::Checks::Debug

void stringify_constraint(SV *sv)
  PPCODE:
    /* Prevent XSUB from double-mortalising it */
    PUSHs(stringify_constraint_sv(extract_constraint(sv)));
    XSRETURN(1);

MODULE = Data::Checks    PACKAGE = Data::Checks::Constraint

 view all matches for this distribution


Data-Dump-Streamer

 view release on metacpan or  search on metacpan

lib/Data/Dump/Streamer.xs  view on Meta::CPAN

PROTOTYPE: $
PREINIT:
    STRLEN patlen;
    char reflags[6];
    int left;
PPCODE:
{
    /*
       Checks if a reference is a regex or not. If the parameter is
       not a ref, or is not the result of a qr// then returns undef.
       Otherwise in list context it returns the pattern and the

lib/Data/Dump/Streamer.xs  view on Meta::CPAN

    PROTOTYPE: \%
    PREINIT:
        HV* hv;
        SV *key;
        HE *he;
    PPCODE:
	if (!SvROK(hash) || SvTYPE(SvRV(hash)) != SVt_PVHV)
	   croak("First argument to hidden_keys() must be an HASH reference");

	hv = (HV*)SvRV(hash);
        (void)hv_iterinit(hv);

lib/Data/Dump/Streamer.xs  view on Meta::CPAN

    PROTOTYPE: \%
    PREINIT:
        HV* hv;
        SV *key;
        HE *he;
    PPCODE:
	if (!SvROK(hash) || SvTYPE(SvRV(hash)) != SVt_PVHV)
	   croak("First argument to legal_keys() must be an HASH reference");

	hv = (HV*)SvRV(hash);

 view all matches for this distribution


Data-Dump-XML

 view release on metacpan or  search on metacpan

XML.xs  view on Meta::CPAN

    SV *sv
PREINIT:
	char * class;
	char * type;
	unsigned int id;
PPCODE:
{
	EXTEND(SP, 3);
	
	if (SvMAGICAL (sv))
		mg_get (sv);

XML.xs  view on Meta::CPAN

		char * key_name;
		char * ref_type;
		char * key_walk;
		bool key_can_be_tag = 1;
		bool namespace = 0;
	PPCODE:
		// warn ("key count is: %d\n", keys_len);
		
		EXTEND(SP, 4);
		
		key_str = SvPVX (key);

 view all matches for this distribution


Data-Dumper-Limited

 view release on metacpan or  search on metacpan

Limited.xs  view on Meta::CPAN

DumpLimited(src, opt = newHV())
    SV *src;
    HV *opt;
  PREINIT:
    ddl_encoder_t *enc;
  PPCODE:
    enc = build_encoder_struct(aTHX_ opt);
    ddl_dump_sv(aTHX_ enc, src);
    /* FIXME optimization: avoid copy by stealing string buffer if
     *                     it is not too large. */
    ST(0) = sv_2mortal(newSVpvn_utf8(enc->buf_start, (STRLEN)(enc->pos - enc->buf_start), 1));

 view all matches for this distribution


Data-Dumper

 view release on metacpan or  search on metacpan

Dumper.xs  view on Meta::CPAN


void
Data_Dumper_Dumpxs(href, ...)
	SV	*href;
	PROTOTYPE: $;$$
	PPCODE:
	{
	    HV *hv;
	    SV *retval, *valstr;
	    HV *seenhv = NULL;
	    AV *postav, *todumpav, *namesav;

 view all matches for this distribution


Data-Float-DoubleDouble

 view release on metacpan or  search on metacpan

DoubleDouble.xs  view on Meta::CPAN

DD2HEX (nv, fmt)
	SV *	nv
	char *	fmt
        PREINIT:
        I32* temp;
        PPCODE:
        temp = PL_markstack_ptr++;
        DD2HEX(aTHX_ nv, fmt);
        if (PL_markstack_ptr != temp) {
          /* truly void, because dXSARGS not invoked */
          PL_markstack_ptr = temp;

DoubleDouble.xs  view on Meta::CPAN

void
_NV2binary (nv)
	SV *	nv
        PREINIT:
        I32* temp;
        PPCODE:
        temp = PL_markstack_ptr++;
        _NV2binary(aTHX_ nv);
        if (PL_markstack_ptr != temp) {
          /* truly void, because dXSARGS not invoked */
          PL_markstack_ptr = temp;

DoubleDouble.xs  view on Meta::CPAN

_calculate (bin, exponent)
	SV *	bin
	SV *	exponent
        PREINIT:
        I32* temp;
        PPCODE:
        temp = PL_markstack_ptr++;
        _calculate(aTHX_ bin, exponent);
        if (PL_markstack_ptr != temp) {
          /* truly void, because dXSARGS not invoked */
          PL_markstack_ptr = temp;

DoubleDouble.xs  view on Meta::CPAN

void
_dd_bytes (sv)
	SV *	sv
        PREINIT:
        I32* temp;
        PPCODE:
        temp = PL_markstack_ptr++;
        _dd_bytes(aTHX_ sv);
        if (PL_markstack_ptr != temp) {
          /* truly void, because dXSARGS not invoked */
          PL_markstack_ptr = temp;

 view all matches for this distribution


Data-Graph-Shared

 view release on metacpan or  search on metacpan

Shared.xs  view on Meta::CPAN

neighbors(self, node)
    SV *self
    UV node
  PREINIT:
    EXTRACT_GRAPH(self);
  PPCODE:
    /* Collect edges under lock, then build Perl SVs outside it:
     * newAV/newSVuv/newSViv can longjmp on OOM, which would leak the
     * process-shared mutex to peers (no automatic cleanup for futex). */
    graph_mutex_lock(h->hdr);
    REQUIRE_NODE(h, node);

 view all matches for this distribution


Data-HashMap-Shared

 view release on metacpan or  search on metacpan

xs/i16.xs  view on Meta::CPAN

    OUTPUT:
        RETVAL

void
keys(SV* self_sv)
    PPCODE:
        EXTRACT_MAP("Data::HashMap::Shared::I16", self_sv);
        uint32_t ns = h->shard_handles ? h->num_shards : 1;
        for (uint32_t si = 0; si < ns; si++) {
            ShmHandle *sh = h->shard_handles ? h->shard_handles[si] : h;
            ShmHeader *hdr = sh->hdr;

xs/i16.xs  view on Meta::CPAN

            }
        }

void
values(SV* self_sv)
    PPCODE:
        EXTRACT_MAP("Data::HashMap::Shared::I16", self_sv);
        uint32_t ns = h->shard_handles ? h->num_shards : 1;
        for (uint32_t si = 0; si < ns; si++) {
            ShmHandle *sh = h->shard_handles ? h->shard_handles[si] : h;
            ShmHeader *hdr = sh->hdr;

xs/i16.xs  view on Meta::CPAN

        }


void
items(SV* self_sv)
    PPCODE:
        EXTRACT_MAP("Data::HashMap::Shared::I16", self_sv);
        uint32_t ns = h->shard_handles ? h->num_shards : 1;
        for (uint32_t si = 0; si < ns; si++) {
            ShmHandle *sh = h->shard_handles ? h->shard_handles[si] : h;
            ShmHeader *hdr = sh->hdr;

xs/i16.xs  view on Meta::CPAN

        }


void
each(SV* self_sv)
    PPCODE:
        EXTRACT_MAP("Data::HashMap::Shared::I16", self_sv);
        int16_t out_key, out_value;
        if (shm_i16_each(h, &out_key, &out_value)) {
            EXTEND(SP, 2);
            mXPUSHi(out_key);

xs/i16.xs  view on Meta::CPAN

    OUTPUT:
        RETVAL

void
pop(SV* self_sv)
    PPCODE:
        EXTRACT_MAP("Data::HashMap::Shared::I16", self_sv);
        int16_t out_key;
        int16_t out_val;
        if (!shm_i16_pop(h, &out_key, &out_val)) XSRETURN_EMPTY;
        EXTEND(SP, 2);
        mPUSHi(out_key);
        mPUSHi(out_val);

void
shift(SV* self_sv)
    PPCODE:
        EXTRACT_MAP("Data::HashMap::Shared::I16", self_sv);
        int16_t out_key;
        int16_t out_val;
        if (!shm_i16_shift(h, &out_key, &out_val)) XSRETURN_EMPTY;
        EXTEND(SP, 2);
        mPUSHi(out_key);
        mPUSHi(out_val);

void
drain(SV* self_sv, UV limit)
    PPCODE:
        EXTRACT_MAP("Data::HashMap::Shared::I16", self_sv);
        if (limit == 0) XSRETURN_EMPTY;
        shm_i16_drain_entry *entries;
        Newxz(entries, limit, shm_i16_drain_entry);

xs/i16.xs  view on Meta::CPAN

    OUTPUT:
        RETVAL

void
flush_expired_partial(SV* self_sv, UV limit)
    PPCODE:
        EXTRACT_MAP("Data::HashMap::Shared::I16", self_sv);
        int done = 0;
        uint32_t flushed = shm_i16_flush_expired_partial(h, (uint32_t)limit, &done);
        EXTEND(SP, 2);
        mPUSHu(flushed);

xs/i16.xs  view on Meta::CPAN

    OUTPUT:
        RETVAL

void
get_multi(SV* self_sv, ...)
    PPCODE:
        EXTRACT_MAP("Data::HashMap::Shared::I16", self_sv);
        int nkeys = items - 1;
        if (nkeys == 0) XSRETURN_EMPTY;
        EXTEND(SP, nkeys);
        if (h->shard_handles) {

xs/i16.xs  view on Meta::CPAN

            }
        }

void
get_with_ttl(SV* self_sv, int16_t key)
    PPCODE:
        EXTRACT_MAP("Data::HashMap::Shared::I16", self_sv);
        int16_t out_value;
        int64_t out_ttl;
        if (!shm_i16_get_with_ttl(h, key, &out_value, &out_ttl)) XSRETURN_EMPTY;
        EXTEND(SP, 2);

xs/i16.xs  view on Meta::CPAN

        if (h) shm_i16_flush_deferred(h);
        sv_setiv(SvRV(self_sv), 0);

void
next(SV* self_sv)
    PPCODE:
        EXTRACT_CURSOR("Data::HashMap::Shared::I16::Cursor", self_sv);
        int16_t out_key, out_value;
        if (shm_i16_cursor_next(c, &out_key, &out_value)) {
            EXTEND(SP, 2);
            mXPUSHi(out_key);

 view all matches for this distribution


Data-HashMap

 view release on metacpan or  search on metacpan

xs/i16.xsi  view on Meta::CPAN

    OUTPUT:
        RETVAL

void
keys(SV* self_sv)
    PPCODE:
        EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv);
        uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0;
        EXTEND(SP, self->size);
        size_t i;
        for (i = 0; i < self->capacity; i++) {

xs/i16.xsi  view on Meta::CPAN

                mXPUSHi(self->nodes[i].key);
        }

void
values(SV* self_sv)
    PPCODE:
        EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv);
        uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0;
        EXTEND(SP, self->size);
        size_t i;
        for (i = 0; i < self->capacity; i++) {

xs/i16.xsi  view on Meta::CPAN

                mXPUSHi(self->nodes[i].value);
        }

void
items(SV* self_sv)
    PPCODE:
        EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv);
        uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0;
        EXTEND(SP, self->size * 2);
        size_t i;
        for (i = 0; i < self->capacity; i++) {

xs/i16.xsi  view on Meta::CPAN

            }
        }

void
each(SV* self_sv)
    PPCODE:
        EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv);
        uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0;
        while (self->iter_pos < self->capacity) {
            size_t i = self->iter_pos++;
            if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) {

xs/i16.xsi  view on Meta::CPAN

        EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv);
        self->iter_pos = 0;

void
drain(SV* self_sv, UV count)
    PPCODE:
        EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv);
        uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0;
        UV n = 0;
        EXTEND(SP, (count < self->size ? count : self->size) * 2);
        while (self->iter_pos < self->capacity && n < count) {

xs/i16.xsi  view on Meta::CPAN

        if (self->iter_pos >= self->capacity) self->iter_pos = 0;
        HM_MAYBE_COMPACT_XS(self, hashmap_i16_compact);

void
pop(SV* self_sv)
    PPCODE:
        EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv);
        uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0;
        if (self->lru_prev) {
            while (self->lru_tail != HM_LRU_NONE) {
                uint32_t idx = self->lru_tail;

xs/i16.xsi  view on Meta::CPAN

            XSRETURN_EMPTY;
        }

void
shift(SV* self_sv)
    PPCODE:
        EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv);
        uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0;
        if (self->lru_prev) {
            while (self->lru_head != HM_LRU_NONE) {
                uint32_t idx = self->lru_head;

 view all matches for this distribution


Data-Heap-Shared

 view release on metacpan or  search on metacpan

Shared.xs  view on Meta::CPAN

void
pop(self)
    SV *self
  PREINIT:
    EXTRACT_HEAP(self);
  PPCODE:
    int64_t p, v;
    if (heap_pop(h, &p, &v)) {
        EXTEND(SP, 2);
        PUSHs(sv_2mortal(newSViv((IV)p)));
        PUSHs(sv_2mortal(newSViv((IV)v)));

Shared.xs  view on Meta::CPAN

pop_wait(self, ...)
    SV *self
  PREINIT:
    EXTRACT_HEAP(self);
    double timeout = -1;
  PPCODE:
    if (items > 1) timeout = SvNV(ST(1));
    int64_t p, v;
    if (heap_pop_wait(h, &p, &v, timeout)) {
        EXTEND(SP, 2);
        PUSHs(sv_2mortal(newSViv((IV)p)));

Shared.xs  view on Meta::CPAN

void
peek(self)
    SV *self
  PREINIT:
    EXTRACT_HEAP(self);
  PPCODE:
    int64_t p, v;
    if (heap_peek(h, &p, &v)) {
        EXTEND(SP, 2);
        PUSHs(sv_2mortal(newSViv((IV)p)));
        PUSHs(sv_2mortal(newSViv((IV)v)));

 view all matches for this distribution


Data-LetterTree

 view release on metacpan or  search on metacpan

LetterTree.xs  view on Meta::CPAN

	Node * tree
	char * word
    PREINIT:
	SV** data;
	int i = 0;
    PPCODE:
	data = get_data(tree, word);
	if (data) 
	    while (data[i]) 
		XPUSHs((SV*) data[i++]);

 view all matches for this distribution


Data-Locations

 view release on metacpan or  search on metacpan

Locations.xs  view on Meta::CPAN



void
_mortalize_(ref)
SV *	ref
PPCODE:
{
    GV *obj;

    if ( DATA_LOCATIONS_OBJECT(ref,obj) )
    {

Locations.xs  view on Meta::CPAN

}


void
Version(...)
PPCODE:
{
    if ((items >= 0) && (items <= 1))
    {
        EXTEND(sp,1);
        PUSHs(sv_2mortal(newSVpv((char *)"5.5",0)));

 view all matches for this distribution


Data-Log-Shared

 view release on metacpan or  search on metacpan

Shared.xs  view on Meta::CPAN

read_entry(self, offset, ...)
    SV *self
    UV offset
  PREINIT:
    EXTRACT_LOG(self);
  PPCODE:
    const uint8_t *out_data;
    uint32_t out_len;
    uint64_t next_off;
    /* Optional third arg: abandon_wait_us (default LOG_ABANDON_WAIT_US).
     * Pass 0 to immediately treat any uncommitted slot as abandoned. */

 view all matches for this distribution


Data-Password-passwdqc

 view release on metacpan or  search on metacpan

passwdqc.xs  view on Meta::CPAN

void
_test_params (packed_params)
        const char * packed_params
    PREINIT:
        const passwdqc_params_qc_t * params;
    PPCODE:
        params = (passwdqc_params_qc_t *)packed_params;
        EXTEND(SP, 10);
        PUSHs(sv_2mortal(newSViv(params->min[0])));
        PUSHs(sv_2mortal(newSViv(params->min[1])));
        PUSHs(sv_2mortal(newSViv(params->min[2])));

 view all matches for this distribution


( run in 3.308 seconds using v1.01-cache-2.11-cpan-71847e10f99 )