rpm  5.4.10
Macros | Typedefs | Functions | Variables
rpmperl.h File Reference
#include <rpmiotypes.h>
#include <rpmio.h>
Include dependency graph for rpmperl.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define rpmperlUnlink(_perl)   ((rpmperl)rpmioUnlinkPoolItem((rpmioItem)(_perl), __FUNCTION__, __FILE__, __LINE__))
#define rpmperlLink(_perl)   ((rpmperl)rpmioLinkPoolItem((rpmioItem)(_perl), __FUNCTION__, __FILE__, __LINE__))
#define rpmperlFree(_perl)   ((rpmperl)rpmioFreePoolItem((rpmioItem)(_perl), __FUNCTION__, __FILE__, __LINE__))

Typedefs

typedef struct rpmperl_s * rpmperl

Functions

rpmperl rpmperlUnlink (rpmperl perl)
 Unreference a perl interpreter instance.
rpmperl rpmperlLink (rpmperl perl)
 Reference a perl interpreter instance.
rpmperl rpmperlFree (rpmperl perl)
 Destroy a perl interpreter.
rpmperl rpmperlNew (char **av, uint32_t flags)
 Create and load a perl interpreter.
rpmRC rpmperlRun (rpmperl perl, const char *str, const char **resultp)
 Execute perl string.

Variables

int _rpmperl_debug
rpmperl _rpmperlI

Detailed Description

Definition in file rpmperl.h.

Macro Definition Documentation

#define rpmperlFree (   _perl)    ((rpmperl)rpmioFreePoolItem((rpmioItem)(_perl), __FUNCTION__, __FILE__, __LINE__))

Definition at line 65 of file rpmperl.h.

#define rpmperlLink (   _perl)    ((rpmperl)rpmioLinkPoolItem((rpmioItem)(_perl), __FUNCTION__, __FILE__, __LINE__))

Definition at line 53 of file rpmperl.h.

#define rpmperlUnlink (   _perl)    ((rpmperl)rpmioUnlinkPoolItem((rpmioItem)(_perl), __FUNCTION__, __FILE__, __LINE__))

Definition at line 42 of file rpmperl.h.

Typedef Documentation

typedef struct rpmperl_s* rpmperl

Definition at line 11 of file rpmperl.h.

Function Documentation

rpmperl rpmperlFree ( rpmperl  perl)

Destroy a perl interpreter.

Parameters
perlperl interpreter
Returns
NULL on last dereference

Referenced by expandMacro(), and rpmioClean().

rpmperl rpmperlLink ( rpmperl  perl)

Reference a perl interpreter instance.

Parameters
perlperl interpreter
Returns
new perl interpreter reference

Referenced by rpmperlNew().

rpmperl rpmperlNew ( char **  av,
uint32_t  flags 
)

Create and load a perl interpreter.

Parameters
avperl interpreter args (or NULL)
flagsperl interpreter flags ((1<<31): use global interpreter)
Returns
new perl interpreter

Definition at line 130 of file rpmperl.c.

References _free(), argvAdd(), argvAppend(), argvCount(), argvFree(), environ, my_perl, rpmExpand(), rpmperlGetPool(), rpmperlI(), and rpmperlLink().

Referenced by expandMacro(), and rpmperlI().

rpmRC rpmperlRun ( rpmperl  perl,
const char *  str,
const char **  resultp 
)

Execute perl string.

Parameters
perlperl interpreter (NULL uses global interpreter)
strperl string to execute (NULL returns RPMRC_FAIL)
*resultpperl exec result
Returns
RPMRC_OK on success

Definition at line 182 of file rpmperl.c.

References _rpmperl_debug, my_perl, rpmperlI(), RPMRC_FAIL, RPMRC_OK, STRLEN, and TRUE.

Referenced by expandMacro().

rpmperl rpmperlUnlink ( rpmperl  perl)

Unreference a perl interpreter instance.

Parameters
perlperl interpreter
Returns
NULL on last dereference

Variable Documentation

int _rpmperl_debug

Definition at line 25 of file rpmperl.c.

Referenced by rpmperlGetPool(), and rpmperlRun().

rpmperl _rpmperlI

Definition at line 28 of file rpmperl.c.

Referenced by rpmioClean(), rpmperlFini(), and rpmperlI().