ALPM
view release on metacpan or search on metacpan
av_push(get_av("ALPM::DB::Sync::ISA", GV_ADD), newSVpv("ALPM::DB", 0));
av_push(get_av("ALPM::DB::Local::ISA", GV_ADD), newSVpv("ALPM::DB", 0));
MODULE = ALPM PACKAGE = ALPM::PackageFree
void
DESTROY(self)
ALPM_PackageFree self;
PPCODE:
alpm_pkg_free(self);
#---------------------
# PUBLIC ALPM METHODS
#---------------------
MODULE = ALPM PACKAGE = ALPM
ALPM_Handle
new(class, root, dbpath)
SV * class
char * root
char * dbpath
PREINIT:
alpm_errno_t err;
ALPM_Handle h;
CODE:
h = alpm_initialize(root, dbpath, &err);
if(h == NULL){
croak("ALPM Error: %s", alpm_strerror(err));
}
RETVAL = h;
OUTPUT:
RETVAL
void
DESTROY(self)
ALPM_Handle self;
PREINIT:
int ret;
CODE:
ret = alpm_release(self);
if(ret == -1){
croak("ALPM Error: failed to release ALPM handle");
}
# errno is only inside a handle, which was just released...
void
caps(class)
SV * class
PREINIT:
enum alpm_caps c;
PPCODE:
c = alpm_capabilities();
if(c & ALPM_CAPABILITY_NLS){
XPUSHs(sv_2mortal(newSVpv("nls", 0)));
}
if(c & ALPM_CAPABILITY_DOWNLOADER){
XPUSHs(sv_2mortal(newSVpv("download", 0)));
}
if(c & ALPM_CAPABILITY_SIGNATURES){
XPUSHs(sv_2mortal(newSVpv("signatures", 0)));
}
const char *
version(class)
SV * class
CODE:
RETVAL = alpm_version();
OUTPUT:
RETVAL
const char *
strerror(self)
ALPM_Handle self;
CODE:
RETVAL = alpm_strerror(alpm_errno(self));
OUTPUT:
RETVAL
int
errno(self)
ALPM_Handle self
CODE:
RETVAL = alpm_errno(self);
OUTPUT:
RETVAL
ALPM_Package
find_satisfier(self, depstr, ...)
SV * self
const char * depstr
PREINIT:
alpm_list_t *pkgs;
int i;
CODE:
i = 2;
STACK2LIST(i, pkgs, p2c_pkg);
RETVAL = alpm_find_satisfier(pkgs, depstr);
alpm_list_free(pkgs);
OUTPUT:
RETVAL
ALPM_Package
find_dbs_satisfier(self, depstr, ...)
ALPM_Handle self
const char * depstr
PREINIT:
alpm_list_t *dbs;
int i;
CODE:
i = 2;
STACK2LIST(i, dbs, p2c_db);
RETVAL = alpm_find_dbs_satisfier(self, dbs, depstr);
alpm_list_free(dbs);
OUTPUT:
RETVAL
void
check_conflicts(self, ...)
ALPM_Handle self
PREINIT:
( run in 0.658 second using v1.01-cache-2.11-cpan-99c4e6809bf )