CIAO-Lib-Param
view release on metacpan or search on metacpan
PREINIT:
int argc = 0;
char **argv = NULL;
CODE:
argc = items - 2;
if ( argc )
{
int i;
argv = get_mortalspace( argc * sizeof(*argv) );
for ( i = 2 ; i < items ; i++ )
{
argv[i-2] = SvOK(ST(i)) ? (char*)SvPV_nolen(ST(i)) : (char*)NULL;
}
}
RETVAL = New( 0, RETVAL, 1, PFile );
RETVAL->pf = paramopen(filename, argv, argc, mode);
if ( NULL == RETVAL->pf )
{
Safefree(RETVAL);
RETVAL = NULL;
croak_on_parerr();
}
OUTPUT:
RETVAL
char *
pfind(name, mode, extn, path)
char * name
char * mode
char * extn
char * path
CODE:
RETVAL = paramfind( name, mode, extn, path );
croak_on_parerr();
OUTPUT:
RETVAL
MODULE = CIAO::Lib::Param PACKAGE = CIAO::Lib::ParamPtr
void
DESTROY(pfile)
CIAO_Lib_ParamPtr pfile
CODE:
if ( pfile->pf )
paramclose(pfile->pf);
Safefree(pfile);
croak_on_parerr();
void
info( pfile, name )
CIAO_Lib_ParamPtr pfile
char * name
PREINIT:
char * mode = get_mortalspace( SZ_PFLINE );
char * type = get_mortalspace( SZ_PFLINE );
char * value = get_mortalspace( SZ_PFLINE );
char * min = get_mortalspace( SZ_PFLINE );
char * max = get_mortalspace( SZ_PFLINE );
char * prompt = get_mortalspace( SZ_PFLINE );
int result;
PPCODE:
if ( ParamInfo( pfile->pf, name, mode, type,
value, min, max, prompt ) )
{
EXTEND(SP, 6);
PUSHs(sv_2mortal(newSVpv(mode, 0)));
PUSHs(sv_2mortal(newSVpv(type, 0)));
PUSHs(sv_2mortal(newSVpv(value, 0)));
PUSHs(sv_2mortal(newSVpv(min, 0)));
PUSHs(sv_2mortal(newSVpv(max, 0)));
PUSHs(sv_2mortal(newSVpv(prompt, 0)));
}
else
{
croak( "parameter %s doesn't exist", name );
}
croak_on_parerr();
CIAO_Lib_Param_MatchPtr
match(pfile, ptemplate)
CIAO_Lib_ParamPtr pfile
char * ptemplate
CODE:
RETVAL = pmatchopen( pfile->pf, ptemplate );
croak_on_parerr();
OUTPUT:
RETVAL
MODULE = CIAO::Lib::Param PACKAGE = CIAO::Lib::ParamPtr PREFIX = param
char *
paramgetpath(pfile)
CIAO_Lib_ParamPtr pfile
CODE:
paramgetpath( pfile->pf );
CLEANUP:
if (RETVAL) Safefree(RETVAL);
croak_on_parerr();
MODULE = CIAO::Lib::Param PACKAGE = CIAO::Lib::ParamPtr PREFIX = p
int
paccess(pfile, pname)
CIAO_Lib_ParamPtr pfile
char * pname
CODE:
paccess( pfile->pf, pname );
CLEANUP:
croak_on_parerr();
SV*
pgetb(pfile, pname)
CIAO_Lib_ParamPtr pfile
char * pname
CODE:
ST(0) = sv_newmortal();
( run in 1.355 second using v1.01-cache-2.11-cpan-71847e10f99 )