QuakeForge  0.7.2.210-815cf
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
exp.c File Reference

Functions

void EXP_DestroyTokens (token *chain)
 
double EXP_Evaluate (char *str)
 
const char * EXP_GetErrorMsg (void)
 
void EXP_InsertTokenAfter (token *spot, token *new)
 
tokenEXP_ParseString (char *str)
 
void EXP_PrintTokens (token *chain)
 
void EXP_RemoveToken (token *tok)
 
exp_error_t EXP_SimplifyTokens (token *chain)
 
exp_error_t EXP_Validate (token *chain)
 

Variables

exp_error_t EXP_ERROR
 
char * exp_error_msg = 0
 
functable_t functable []
 
optable_t optable []
 

Function Documentation

void EXP_DestroyTokens ( token chain)
double EXP_Evaluate ( char *  str)
const char* EXP_GetErrorMsg ( void  )
void EXP_InsertTokenAfter ( token spot,
token new 
)
token* EXP_ParseString ( char *  str)
void EXP_PrintTokens ( token chain)
void EXP_RemoveToken ( token tok)
exp_error_t EXP_SimplifyTokens ( token chain)
exp_error_t EXP_Validate ( token chain)

Variable Documentation

exp_error_t EXP_ERROR
char* exp_error_msg = 0
functable_t functable[]
Initial value:
= {
{"sqrt", Func_Sqrt, 1},
{"abs", Func_Abs, 1},
{"sin", Func_Sin, 1},
{"cos", Func_Cos, 1},
{"tan", Func_Tan, 1},
{"asin", Func_Asin, 1},
{"acos", Func_Acos, 1},
{"atan", Func_Atan, 1},
{"rand", Func_Rand, 2},
{"trunc", Func_Trunc, 1},
{"", 0, 0}
}
double Func_Abs(double *oplist, unsigned int numops)
Definition: ops.c:184
double Func_Rand(double *oplist, unsigned int numops)
Definition: ops.c:190
double Func_Asin(double *oplist, unsigned int numops)
Definition: ops.c:160
double Func_Cos(double *oplist, unsigned int numops)
Definition: ops.c:148
double Func_Sin(double *oplist, unsigned int numops)
Definition: ops.c:142
double Func_Trunc(double *oplist, unsigned int numops)
Definition: ops.c:196
double Func_Tan(double *oplist, unsigned int numops)
Definition: ops.c:154
double Func_Acos(double *oplist, unsigned int numops)
Definition: ops.c:166
double Func_Sqrt(double *oplist, unsigned int numops)
Definition: ops.c:178
double Func_Atan(double *oplist, unsigned int numops)
Definition: ops.c:172
optable_t optable[]
Initial value:
= {
{"~", OP_BitInv, 1},
{"!", OP_Not, 1},
{"&", OP_BitAnd, 2},
{"|", OP_BitOr, 2},
{"^", OP_BitXor, 2},
{"**", OP_Exp, 2},
{"/", OP_Div, 2},
{"neg", OP_Negate, 1},
{"*", OP_Mult, 2},
{"+", OP_Add, 2},
{"-", OP_Sub, 2},
{"==", OP_Eq, 2},
{"!=", OP_Neq, 2},
{">=", OP_GreaterThanEqual, 2},
{">", OP_GreaterThan, 2},
{"<=", OP_LessThanEqual, 2},
{"<", OP_LessThan, 2},
{"||", OP_Or, 2},
{"or", OP_Or, 2},
{"&&", OP_And, 2},
{"and", OP_And, 2},
{"", 0, 0}
}
double OP_Mult(double op1, double op2)
Definition: ops.c:52
double OP_Sub(double op1, double op2)
Definition: ops.c:46
double OP_Add(double op1, double op2)
Definition: ops.c:40
double OP_Exp(double op1, double op2)
Definition: ops.c:64
double OP_GreaterThanEqual(double op1, double op2)
Definition: ops.c:106
double OP_Negate(double op1, double op2)
Definition: ops.c:34
double OP_BitInv(double op1, double op2)
Definition: ops.c:136
double OP_Not(double op1, double op2)
Definition: ops.c:28
double OP_Neq(double op1, double op2)
Definition: ops.c:76
double OP_GreaterThan(double op1, double op2)
Definition: ops.c:94
double OP_BitOr(double op1, double op2)
Definition: ops.c:124
double OP_Or(double op1, double op2)
Definition: ops.c:82
double OP_LessThanEqual(double op1, double op2)
Definition: ops.c:112
double OP_Eq(double op1, double op2)
Definition: ops.c:70
double OP_LessThan(double op1, double op2)
Definition: ops.c:100
double OP_BitAnd(double op1, double op2)
Definition: ops.c:118
double OP_Div(double op1, double op2)
Definition: ops.c:58
double OP_BitXor(double op1, double op2)
Definition: ops.c:130
double OP_And(double op1, double op2)
Definition: ops.c:88