ifparser.c File Reference

#include "ifparser.h"
#include <ctype.h>
#include <string.h>

Go to the source code of this file.

Defines

#define DO(val)   if (!(val)) return NULL
#define CALLFUNC(ggg, fff)   (*((ggg)->funcs.fff))
#define SKIPSPACE(ccc)   while (isspace(*ccc)) ccc++
#define isvarfirstletter(ccc)   (isalpha(ccc) || (ccc) == '_')

Functions

long strtol (const char *nptr, char **endptr, int base)
static const char * parse_variable (IfParser *g, const char *cp, const char **varp)
static const char * parse_number (IfParser *g, const char *cp, long *valp)
static const char * parse_character (IfParser *g, const char *cp, long *valp)
static const char * parse_value (IfParser *g, const char *cp, long *valp)
static const char * parse_product (IfParser *g, const char *cp, long *valp)
static const char * parse_sum (IfParser *g, const char *cp, long *valp)
static const char * parse_shift (IfParser *g, const char *cp, long *valp)
static const char * parse_inequality (IfParser *g, const char *cp, long *valp)
static const char * parse_equality (IfParser *g, const char *cp, long *valp)
static const char * parse_band (IfParser *g, const char *cp, long *valp)
static const char * parse_bxor (IfParser *g, const char *cp, long *valp)
static const char * parse_bor (IfParser *g, const char *cp, long *valp)
static const char * parse_land (IfParser *g, const char *cp, long *valp)
static const char * parse_lor (IfParser *g, const char *cp, long *valp)
static const char * parse_cond (IfParser *g, const char *cp, long *valp)
const char * ParseIfExpression (IfParser *g, const char *cp, long *valp)


Define Documentation

#define CALLFUNC ( ggg,
fff   )     (*((ggg)->funcs.fff))

Definition at line 74 of file ifparser.c.

Referenced by parse_cond(), parse_land(), parse_lor(), parse_number(), parse_value(), and parse_variable().

#define DO ( val   )     if (!(val)) return NULL

Definition at line 73 of file ifparser.c.

Referenced by parse_band(), parse_bor(), parse_bxor(), parse_cond(), parse_equality(), parse_inequality(), parse_land(), parse_lor(), parse_product(), parse_shift(), parse_sum(), and parse_value().

#define isvarfirstletter ( ccc   )     (isalpha(ccc) || (ccc) == '_')

Definition at line 76 of file ifparser.c.

#define SKIPSPACE ( ccc   )     while (isspace(*ccc)) ccc++

Definition at line 75 of file ifparser.c.

Referenced by parse_band(), parse_bor(), parse_bxor(), parse_character(), parse_cond(), parse_equality(), parse_inequality(), parse_land(), parse_lor(), parse_number(), parse_product(), parse_shift(), parse_sum(), parse_value(), and parse_variable().


Function Documentation

static const char* parse_band ( IfParser g,
const char *  cp,
long valp 
) [static]

Definition at line 428 of file ifparser.c.

References DO, parse_equality(), and SKIPSPACE.

Referenced by parse_bxor().

static const char* parse_bor ( IfParser g,
const char *  cp,
long valp 
) [static]

Definition at line 472 of file ifparser.c.

References DO, parse_bxor(), and SKIPSPACE.

Referenced by parse_land().

static const char* parse_bxor ( IfParser g,
const char *  cp,
long valp 
) [static]

Definition at line 451 of file ifparser.c.

References DO, parse_band(), and SKIPSPACE.

Referenced by parse_bor().

static const char* parse_character ( IfParser g,
const char *  cp,
long valp 
) [static]

Definition at line 120 of file ifparser.c.

References long, NULL, SKIPSPACE, strtol(), and val.

Referenced by parse_value().

static const char* parse_cond ( IfParser g,
const char *  cp,
long valp 
) [static]

Definition at line 541 of file ifparser.c.

References CALLFUNC, DO, parse_lor(), and SKIPSPACE.

Referenced by ParseIfExpression().

static const char* parse_equality ( IfParser g,
const char *  cp,
long valp 
) [static]

Definition at line 398 of file ifparser.c.

References DO, parse_inequality(), and SKIPSPACE.

Referenced by parse_band().

static const char* parse_inequality ( IfParser g,
const char *  cp,
long valp 
) [static]

Definition at line 362 of file ifparser.c.

References DO, parse_shift(), and SKIPSPACE.

Referenced by parse_equality().

static const char* parse_land ( IfParser g,
const char *  cp,
long valp 
) [static]

Definition at line 495 of file ifparser.c.

References CALLFUNC, DO, parse_bor(), and SKIPSPACE.

Referenced by parse_lor().

static const char* parse_lor ( IfParser g,
const char *  cp,
long valp 
) [static]

Definition at line 518 of file ifparser.c.

References CALLFUNC, DO, parse_land(), and SKIPSPACE.

Referenced by parse_cond().

static const char* parse_number ( IfParser g,
const char *  cp,
long valp 
) [static]

Definition at line 98 of file ifparser.c.

References CALLFUNC, SKIPSPACE, and strtol().

Referenced by parse_value().

static const char* parse_product ( IfParser g,
const char *  cp,
long valp 
) [static]

Definition at line 273 of file ifparser.c.

References DO, parse_value(), and SKIPSPACE.

Referenced by parse_sum().

static const char* parse_shift ( IfParser g,
const char *  cp,
long valp 
) [static]

Definition at line 332 of file ifparser.c.

References DO, parse_sum(), and SKIPSPACE.

Referenced by parse_inequality().

static const char* parse_sum ( IfParser g,
const char *  cp,
long valp 
) [static]

Definition at line 306 of file ifparser.c.

References DO, parse_product(), and SKIPSPACE.

Referenced by parse_shift().

static const char* parse_value ( IfParser g,
const char *  cp,
long valp 
) [static]

Definition at line 179 of file ifparser.c.

References CALLFUNC, DO, isvarfirstletter, len, parse_character(), parse_number(), parse_variable(), ParseIfExpression(), and SKIPSPACE.

Referenced by parse_product().

static const char* parse_variable ( IfParser g,
const char *  cp,
const char **  varp 
) [static]

Definition at line 80 of file ifparser.c.

References CALLFUNC, isvarfirstletter, and SKIPSPACE.

Referenced by parse_value().

const char* ParseIfExpression ( IfParser g,
const char *  cp,
long valp 
)

Definition at line 570 of file ifparser.c.

References parse_cond().

Referenced by cppsetup(), and parse_value().

long strtol ( const char *  nptr,
char **  endptr,
int  base 
)

Referenced by XrdOuca2x::a2fm(), XrdOuca2x::a2i(), XrdOuca2x::a2vp(), XrdOucString::atoi(), TAuthenticate::CheckProofAuth(), XrdOfs::Configure(), RooStreamParser::convertToInteger(), create_asvisual(), TXProofServ::CreateServer(), XrdXrootdProtocol::do_Bind(), XrdXrootdAdmin::do_Disc(), XrdXrootdAdmin::do_Pause(), XrdXrootdAdmin::do_Red(), XrdProofdProtCfg::DoDirective(), XrdProofdNetMgr::DoDirectiveAdminReqTO(), XrdProofdNetMgr::DoDirectiveBonjour(), XrdProofdClientMgr::DoDirectiveClientMgr(), DoDirectiveInt(), XrdProofdManager::DoDirectiveMaxOldLogs(), XrdProofdManager::DoDirectiveMultiUser(), XrdProofdManager::DoDirectivePort(), XrdProofdPriorityMgr::DoDirectivePriority(), XrdProofdProofServMgr::DoDirectiveProofServMgr(), XrdProofSched::DoDirectiveResource(), XrdProofSched::DoDirectiveSchedParam(), XrdProofdProofServMgr::DoDirectiveShutdown(), RooAbsArg::getCloningAncestors(), GetCoords(), XrdCnsDaemon::getEvents(), XrdProofdAux::GetLong(), XrdCmsNode::getMode(), XrdSecsssID::getObj(), XrdProofdAux::GetProcesses(), getXDate(), GlobusCleanupShm(), GlobusGetLocalEnv(), handle_asxml_tag_composite(), handle_asxml_tag_text(), XrdOucEnv::Import(), XrdFrmCID::Init(), XrdSecProtocolsss::Init_Client(), XrdPosixXrootd::initEnv(), XrdOucReqID::isMine(), XrdCnsSsi::List(), XrdSecProtocolsss::Load_Server(), RooAbsCategory::lookupType(), main(), my_eval_variable(), OldProofServAuthSetup(), parse_character(), parse_number(), ParseArguments(), TGFontPool::ParseFontName(), XrdOssPath::posCname(), TAuthenticate::ProofAuthSetup(), ReadPasswd(), XrdFrmReqBoss::Register(), XrdProofWorker::Reset(), SetMaxMemLimits(), XrdPssSys::T2UID(), XrdClientUrlInfo::TakeUrl(), TProofServ::TProofServ(), XrdProofdSandbox::TrimSessionDirs(), XrdPssSys::xconf(), XpdSessionTagComp(), XrdBwm::XrdBwm(), XrdCryptolocalKDFun(), XrdCryptosslKDFun(), XrdSecProtocolpwdInit(), XrdSslgsiX509SignProxyReq(), and XrdPssSys::xsopt().


Generated on Tue Jul 5 15:56:10 2011 for ROOT_528-00b_version by  doxygen 1.5.1