DBD-MaxDB

 view release on metacpan or  search on metacpan

MaxDB.xs  view on Meta::CPAN

			SvREFCNT_dec (hv2);
			hv_store (hv1, dbname, strlen (dbname), rv, 0);
			Safefree (dbname);
			continue;
		}

		if (curr0->val == 0) {
			hv_store (
			hv0, curr0->key, strlen (curr0->key),
			newSVpv ("", 0), 0);
			continue;
		}

		if (strcmp (curr0->key, "progdir") == 0 ||
		    strcmp (curr0->key, "datadir") == 0 ||
		    strcmp (curr0->key, "uid") == 0 ||
		    strcmp (curr0->key, "gid") == 0 ||
		    strcmp (curr0->key, "user") == 0 ||
		    strcmp (curr0->key, "group") == 0) {
			char *ptr;

			for (ptr = curr0->val; *ptr != 0; ptr++)
				if (*ptr == '\\')
					*ptr = '/';
		}

		hv_store (
		hv0, curr0->key, strlen (curr0->key),
		newSVpv (curr0->val, strlen (curr0->val)), 0);
	}

	if (hv1 != 0) {
		rv = newRV ((SV *) hv1);
		SvREFCNT_dec (hv1);
		hv_store (hv0, "database", 8, rv, 0);
	}

	infofree (info);

	rv = sv_2mortal (newRV ((SV *) hv0));
	SvREFCNT_dec (hv0);

	XPUSHs (rv);
	XSRETURN (1);
	
MODULE = DBD::MaxDB    PACKAGE = DBD::MaxDB

INCLUDE: MaxDB.xsi

MODULE = DBD::MaxDB    PACKAGE = DBD::MaxDB::dr

MODULE = DBD::MaxDB    PACKAGE = DBD::MaxDB::db

void
_ping(dbh)
  SV *  dbh
  CODE:
  ST(0) = dbd_maxdb_db_ping(dbh)? &sv_yes : &sv_no;

void
_isunicode(dbh)
  SV *  dbh
  CODE:
  ST(0) = dbd_maxdb_db_isunicode(dbh)? &sv_yes : &sv_no;

void
_getSQLMode(dbh)
    SV *  dbh
    CODE:
  ST(0) = dbd_maxdb_db_getSQLMode(dbh);

void
_getVersion(dbh)
    SV *  dbh
    CODE:
  ST(0) = dbd_maxdb_db_getVersion(dbh);

void
_executeUpdate( dbh, stmt )
SV *        dbh
SV *        stmt
CODE:
{
   ST(0) = sv_2mortal(newSViv((IV)dbd_maxdb_db_executeUpdate(dbh, stmt)));
}
  
MODULE = DBD::MaxDB    PACKAGE = DBD::MaxDB::st

void
_Cancel(sth)
    SV *  sth

    CODE:
  ST(0) = dbd_maxdb_st_cancel(sth);

void
_executeInternal( dbh, sth, stmt )
SV *        dbh
SV*         sth
SV *        stmt
CODE:
{
   STRLEN lna;
   char *pstmt = SvOK(stmt) ? SvPV(stmt,lna) : "";
   ST(0) = sv_2mortal(newSViv((IV)dbd_maxdb_db_executeInternal(dbh, sth, pstmt)));
}



( run in 1.076 second using v1.01-cache-2.11-cpan-39bf76dae61 )