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. More...
 
rpmperl rpmperlLink (rpmperl perl)
 Reference a perl interpreter instance. More...
 
rpmperl rpmperlFree (rpmperl perl)
 Destroy a perl interpreter. More...
 
rpmperl rpmperlNew (char **av, uint32_t flags)
 Create and load a perl interpreter. More...
 
rpmRC rpmperlRun (rpmperl perl, const char *str, const char **resultp)
 Execute perl string. More...
 

Variables

int _rpmperl_debug
 
rpmperl _rpmperlI
 

Macro Definition Documentation

§ rpmperlFree

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

Definition at line 65 of file rpmperl.h.

§ rpmperlLink

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

Definition at line 53 of file rpmperl.h.

§ rpmperlUnlink

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

Definition at line 42 of file rpmperl.h.

Typedef Documentation

§ rpmperl

typedef struct rpmperl_s* rpmperl

Definition at line 11 of file rpmperl.h.

Function Documentation

§ rpmperlFree()

rpmperl rpmperlFree ( rpmperl  perl)

Destroy a perl interpreter.

Parameters
perlperl interpreter
Returns
NULL on last dereference

Referenced by expandMacro(), psmWait(), and rpmioClean().

§ rpmperlLink()

rpmperl rpmperlLink ( rpmperl  perl)

Reference a perl interpreter instance.

Parameters
perlperl interpreter
Returns
new perl interpreter reference

Referenced by rpmperlNew().

§ 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(), psmWait(), and rpmperlI().

§ rpmperlRun()

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(), and psmWait().

§ rpmperlUnlink()

rpmperl rpmperlUnlink ( rpmperl  perl)

Unreference a perl interpreter instance.

Parameters
perlperl interpreter
Returns
NULL on last dereference

Variable Documentation

§ _rpmperl_debug

int _rpmperl_debug

Definition at line 25 of file rpmperl.c.

Referenced by rpmperlGetPool(), and rpmperlRun().

§ _rpmperlI

rpmperl _rpmperlI

Definition at line 28 of file rpmperl.c.

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