#include "asterisk.h"
#include <sys/types.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <locale.h>
#include <unistd.h>
#include <ctype.h>
#include <errno.h>
#include <regex.h>
#include <limits.h>
#include "asterisk/ast_expr.h"
#include "asterisk/logger.h"
#include "asterisk/pbx.h"
Go to the source code of this file.
Data Structures | |
struct | expr_node |
struct | parse_io |
struct | val |
union | yyalloc |
struct | yyltype |
union | YYSTYPE |
Macros | |
#define | ast_yyerror(x) ast_yyerror(x,&yyloc,parseio) |
#define | ast_yyerror(x) ast_yyerror(x, YYLTYPE *yylloc, struct parse_io *parseio) |
#define | DESTROY(x) {if((x)->type == AST_EXPR_numeric_string || (x)->type == AST_EXPR_string) free((x)->u.s); (x)->u.s = 0; free(x);} |
#define | FP___PRINTF "%.16g" |
#define | FP___TYPE double |
#define | FUNC_ACOS acosl |
#define | FUNC_ASIN asinl |
#define | FUNC_ATAN atanl |
#define | FUNC_ATAN2 atan2l |
#define | FUNC_CEIL ceill |
#define | FUNC_COS cosl |
#define | FUNC_EXP expl |
#define | FUNC_EXP10 exp10l |
#define | FUNC_EXP2 exp2l |
#define | FUNC_FLOOR floorl |
#define | FUNC_FMOD fmodl |
#define | FUNC_LOG logl |
#define | FUNC_LOG10 log10l |
#define | FUNC_LOG2 log2l |
#define | FUNC_POW powl |
#define | FUNC_REMAINDER remainderl |
#define | FUNC_RINT rintl |
#define | FUNC_ROUND roundl |
#define | FUNC_SIN sinl |
#define | FUNC_SQRT sqrtl |
#define | FUNC_STRTOD strtold |
#define | FUNC_TAN tanl |
#define | FUNC_TRUNC truncl |
#define | QUAD_MAX (0x7fffffffffffffffLL) |
#define | QUAD_MIN (-0x7fffffffffffffffLL-1) |
#define | YY_(msgid) msgid |
#define | YY_LOCATION_PRINT(File, Loc) |
#define | YY_REDUCE_PRINT(Rule) |
#define | YY_STACK_PRINT(Bottom, Top) |
#define | YY_SYMBOL_PRINT(Title, Type, Value, Location) |
#define | YYABORT goto yyabortlab |
#define | YYACCEPT goto yyacceptlab |
#define | YYBACKUP(Token, Value) |
#define | YYBISON 1 |
#define | YYBISON_VERSION "2.5" |
#define | YYCASE_(N, S) |
#define | yychar ast_yychar |
#define | yyclearin (yychar = YYEMPTY) |
#define | YYCOPY(To, From, Count) |
#define | YYCOPY_NEEDED 1 |
#define | yydebug ast_yydebug |
#define | YYDEBUG 0 |
#define | YYDPRINTF(Args) |
#define | YYEMPTY (-2) |
#define | YYENABLE_NLS 0 |
#define | YYEOF 0 |
#define | YYERRCODE 256 |
#define | yyerrok (yyerrstatus = 0) |
#define | yyerror ast_yyerror |
#define | YYERROR goto yyerrorlab |
#define | YYERROR_VERBOSE 1 |
#define | YYERROR_VERBOSE 1 |
#define | YYFAIL goto yyerrlab |
#define | YYFINAL 11 |
#define | YYFREE free |
#define | YYID(n) (n) |
#define | YYINITDEPTH 200 |
#define | YYLAST 159 |
#define | yylex ast_yylex |
#define | YYLEX yylex (&yylval, &yylloc, YYLEX_PARAM) |
#define | YYLEX_PARAM ((struct parse_io *)parseio)->scanner |
#define | yylloc ast_yylloc |
#define | YYLLOC_DEFAULT(Current, Rhs, N) |
#define | YYLSP_NEEDED 1 |
#define | YYLTYPE yyltype |
#define | YYLTYPE_IS_TRIVIAL 1 |
#define | yylval ast_yylval |
#define | YYMALLOC malloc |
#define | YYMAXDEPTH 10000 |
#define | YYMAXUTOK 280 |
#define | yynerrs ast_yynerrs |
#define | YYNNTS 4 |
#define | YYNRULES 28 |
#define | YYNSTATES 54 |
#define | YYNTOKENS 26 |
#define | YYPACT_NINF -18 |
#define | yypact_value_is_default(yystate) ((yystate) == (-18)) |
#define | yyparse ast_yyparse |
#define | YYPARSE_PARAM parseio |
#define | YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N), yylsp -= (N)) |
#define | YYPULL 1 |
#define | YYPURE 1 |
#define | YYPUSH 0 |
#define | YYRECOVERING() (!!yyerrstatus) |
#define | YYRHSLOC(Rhs, K) ((Rhs)[K]) |
#define | YYSIZE_MAXIMUM ((YYSIZE_T) -1) |
#define | YYSIZE_T unsigned int |
#define | YYSKELETON_NAME "yacc.c" |
#define | YYSTACK_ALLOC YYMALLOC |
#define | YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM |
#define | YYSTACK_BYTES(N) |
#define | YYSTACK_FREE YYFREE |
#define | YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) |
#define | YYSTACK_RELOCATE(Stack_alloc, Stack) |
#define | yystype YYSTYPE /* obsolescent; will be withdrawn */ |
#define | YYSTYPE_IS_DECLARED 1 |
#define | YYSTYPE_IS_TRIVIAL 1 |
#define | YYSYNTAX_ERROR |
#define | YYTABLE_NINF -1 |
#define | yytable_value_is_error(yytable_value) YYID (0) |
#define | YYTERROR 1 |
#define | YYTOKEN_TABLE 0 |
#define | YYTOKENTYPE |
#define | YYTRANSLATE(YYX) ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) |
#define | YYUNDEFTOK 2 |
#define | YYUSE(e) ((void) (e)) |
Typedefs | |
typedef struct yyltype | yyltype |
typedef void * | yyscan_t |
typedef union YYSTYPE | YYSTYPE |
typedef short int | yytype_int16 |
typedef short int | yytype_int8 |
typedef unsigned short int | yytype_uint16 |
typedef unsigned char | yytype_uint8 |
Functions | |
static int chk_div | __P ((FP___TYPE, FP___TYPE)) |
static int chk_minus | __P ((FP___TYPE, FP___TYPE, FP___TYPE)) |
static void free_value | __P ((struct val *)) |
static struct val *make_number | __P ((FP___TYPE)) |
static struct val *make_str | __P ((const char *)) |
static struct val *op_and | __P ((struct val *, struct val *)) |
static struct val *op_cond | __P ((struct val *, struct val *, struct val *)) |
int ast_yylex | __P ((YYSTYPE *, YYLTYPE *, yyscan_t)) |
static struct expr_node * | alloc_expr_node (enum node_type) |
int | ast_yyerror (const char *, YYLTYPE *, struct parse_io *) |
static int | chk_div (FP___TYPE a, FP___TYPE b) |
static int | chk_minus (FP___TYPE a, FP___TYPE b, FP___TYPE r) |
static int | chk_plus (FP___TYPE a, FP___TYPE b, FP___TYPE r) |
static int | chk_times (FP___TYPE a, FP___TYPE b, FP___TYPE r) |
static char * | compose_func_args (struct expr_node *arglist) |
static void | destroy_arglist (struct expr_node *arglist) |
for (;;) | |
static void | free_value (struct val *vp) |
if (yyss+yystacksize-1<=yyssp) | |
if (yychar==YYEMPTY) | |
if (yychar<=YYEOF) | |
if (yyn<=0) | |
if (!yyerrstatus) | |
if (yyerrstatus==3) | |
static int | is_really_num (char *str) |
static int | is_zero_or_null (struct val *vp) |
static int | isstring (struct val *vp) |
static struct val * | make_number (FP___TYPE i) |
static struct val * | make_str (const char *s) |
static struct val * | op_and (struct val *a, struct val *b) |
static struct val * | op_colon (struct val *a, struct val *b) |
static struct val * | op_compl (struct val *a) |
static struct val * | op_cond (struct val *a, struct val *b, struct val *c) |
static struct val * | op_div (struct val *a, struct val *b) |
static struct val * | op_eq (struct val *a, struct val *b) |
static struct val * | op_eqtilde (struct val *a, struct val *b) |
static struct val * | op_func (struct val *funcname, struct expr_node *arglist, struct ast_channel *chan) |
static struct val * | op_ge (struct val *a, struct val *b) |
static struct val * | op_gt (struct val *a, struct val *b) |
static struct val * | op_le (struct val *a, struct val *b) |
static struct val * | op_lt (struct val *a, struct val *b) |
static struct val * | op_minus (struct val *a, struct val *b) |
static struct val * | op_ne (struct val *a, struct val *b) |
static struct val * | op_negate (struct val *a) |
static struct val * | op_or (struct val *a, struct val *b) |
static struct val * | op_plus (struct val *a, struct val *b) |
static struct val * | op_rem (struct val *a, struct val *b) |
static struct val * | op_tildetilde (struct val *a, struct val *b) |
static struct val * | op_times (struct val *a, struct val *b) |
static void | strip_quotes (struct val *vp) |
switch (yytype) | |
switch (yyn) | |
static int | to_number (struct val *vp) |
static void | to_string (struct val *vp) |
while (yyssp!=yyss) | |
YY_REDUCE_PRINT (yyn) | |
YY_STACK_PRINT (yyss, yyssp) | |
YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp) | |
YY_SYMBOL_PRINT ("Next token is", yytoken,&yylval,&yylloc) | |
YY_SYMBOL_PRINT ("Shifting", yytoken,&yylval,&yylloc) | |
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn],&yyval,&yyloc) | |
YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp) | |
yydestruct ("Cleanup: discarding lookahead", yytoken,&yylval,&yylloc) | |
YYDPRINTF ((stderr,"Starting parse\n")) | |
YYDPRINTF ((stderr,"Entering state %d\n", yystate)) | |
return | YYID (yyresult) |
YYLLOC_DEFAULT (yyloc,(yylsp-yylen), yylen) | |
YYLLOC_DEFAULT (yyloc, yyerror_range, 2) | |
int | yyparse () |
YYPOPSTACK (yylen) | |
YYSTACK_FREE (yyss) | |
YYSTACK_FREE (yymsg) | |
static int | yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, yytype_int16 *yyssp, int yytoken) |
static YYSIZE_T | yytnamerr (char *yyres, const char *yystr) |
YYUSE (yylocationp) | |
Definition at line 2785 of file ast_expr2.c.
Definition at line 2785 of file ast_expr2.c.
#define DESTROY | ( | x | ) | {if((x)->type == AST_EXPR_numeric_string || (x)->type == AST_EXPR_string) free((x)->u.s); (x)->u.s = 0; free(x);} |
Definition at line 412 of file ast_expr2.c.
Referenced by switch().
#define FP___PRINTF "%.16g" |
Definition at line 110 of file ast_expr2.c.
Referenced by compose_func_args(), and to_string().
#define FP___TYPE double |
Definition at line 111 of file ast_expr2.c.
Referenced by op_and(), op_colon(), op_eq(), op_eqtilde(), op_func(), op_ge(), op_gt(), op_le(), op_lt(), op_ne(), and to_number().
#define FUNC_ACOS acosl |
Definition at line 133 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_ASIN asinl |
Definition at line 139 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_ATAN atanl |
Definition at line 145 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_ATAN2 atan2l |
Definition at line 151 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_CEIL ceill |
Definition at line 211 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_COS cosl |
Definition at line 115 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_EXP expl |
Definition at line 175 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_EXP10 exp10l |
Definition at line 241 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_EXP2 exp2l |
Definition at line 233 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_FLOOR floorl |
Definition at line 205 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_FMOD fmodl |
Definition at line 193 of file ast_expr2.c.
Referenced by op_rem().
#define FUNC_LOG logl |
Definition at line 181 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_LOG10 log10l |
Definition at line 261 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_LOG2 log2l |
Definition at line 249 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_POW powl |
Definition at line 157 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_REMAINDER remainderl |
Definition at line 187 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_RINT rintl |
Definition at line 169 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_ROUND roundl |
Definition at line 217 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_SIN sinl |
Definition at line 121 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_SQRT sqrtl |
Definition at line 163 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_STRTOD strtold |
Definition at line 199 of file ast_expr2.c.
Referenced by op_func(), and to_number().
#define FUNC_TAN tanl |
Definition at line 127 of file ast_expr2.c.
Referenced by op_func().
#define FUNC_TRUNC truncl |
Definition at line 223 of file ast_expr2.c.
Referenced by op_func().
#define QUAD_MAX (0x7fffffffffffffffLL) |
Definition at line 308 of file ast_expr2.c.
#define QUAD_MIN (-0x7fffffffffffffffLL-1) |
Definition at line 305 of file ast_expr2.c.
Referenced by chk_div(), and chk_minus().
#define YY_ | ( | msgid | ) | msgid |
Definition at line 571 of file ast_expr2.c.
Referenced by if(), and yysyntax_error().
#define YY_LOCATION_PRINT | ( | File, | |
Loc | |||
) |
Definition at line 1042 of file ast_expr2.c.
#define YY_REDUCE_PRINT | ( | Rule | ) |
Definition at line 1226 of file ast_expr2.c.
#define YY_STACK_PRINT | ( | Bottom, | |
Top | |||
) |
Definition at line 1225 of file ast_expr2.c.
Referenced by for().
#define YY_SYMBOL_PRINT | ( | Title, | |
Type, | |||
Value, | |||
Location | |||
) |
Definition at line 1224 of file ast_expr2.c.
#define YYABORT goto yyabortlab |
Definition at line 968 of file ast_expr2.c.
#define YYACCEPT goto yyacceptlab |
Definition at line 967 of file ast_expr2.c.
#define YYBACKUP | ( | Token, | |
Value | |||
) |
Definition at line 989 of file ast_expr2.c.
#define YYBISON 1 |
Definition at line 44 of file ast_expr2.c.
#define YYBISON_VERSION "2.5" |
Definition at line 47 of file ast_expr2.c.
#define YYCASE_ | ( | N, | |
S | |||
) |
Referenced by yysyntax_error().
#define yychar ast_yychar |
Definition at line 69 of file ast_expr2.c.
Definition at line 963 of file ast_expr2.c.
#define YYCOPY | ( | To, | |
From, | |||
Count | |||
) |
Definition at line 720 of file ast_expr2.c.
#define YYCOPY_NEEDED 1 |
Definition at line 692 of file ast_expr2.c.
#define yydebug ast_yydebug |
Definition at line 70 of file ast_expr2.c.
#define YYDEBUG 0 |
Definition at line 420 of file ast_expr2.c.
#define YYDPRINTF | ( | Args | ) |
Definition at line 1223 of file ast_expr2.c.
Referenced by if().
#define YYEMPTY (-2) |
Definition at line 964 of file ast_expr2.c.
Referenced by if(), and yysyntax_error().
#define YYENABLE_NLS 0 |
Definition at line 310 of file ast_expr2.c.
#define YYEOF 0 |
Definition at line 965 of file ast_expr2.c.
Referenced by if().
#define YYERRCODE 256 |
Definition at line 1007 of file ast_expr2.c.
#define yyerrok (yyerrstatus = 0) |
Definition at line 962 of file ast_expr2.c.
#define yyerror ast_yyerror |
Definition at line 67 of file ast_expr2.c.
Referenced by if().
#define YYERROR goto yyerrorlab |
Definition at line 969 of file ast_expr2.c.
#define YYERROR_VERBOSE 1 |
Definition at line 426 of file ast_expr2.c.
#define YYERROR_VERBOSE 1 |
Definition at line 426 of file ast_expr2.c.
#define YYFAIL goto yyerrlab |
Definition at line 979 of file ast_expr2.c.
#define YYFINAL 11 |
Definition at line 733 of file ast_expr2.c.
#define YYFREE free |
Definition at line 660 of file ast_expr2.c.
#define YYID | ( | n | ) | (n) |
Definition at line 584 of file ast_expr2.c.
#define YYINITDEPTH 200 |
Definition at line 1232 of file ast_expr2.c.
#define YYLAST 159 |
Definition at line 735 of file ast_expr2.c.
Referenced by for(), and yysyntax_error().
#define yylex ast_yylex |
Definition at line 66 of file ast_expr2.c.
#define YYLEX yylex (&yylval, &yylloc, YYLEX_PARAM) |
Definition at line 1055 of file ast_expr2.c.
Referenced by if().
Definition at line 312 of file ast_expr2.c.
#define yylloc ast_yylloc |
Definition at line 72 of file ast_expr2.c.
Referenced by ael_yyget_lloc(), ael_yyset_lloc(), ast_yyget_lloc(), and ast_yyset_lloc().
#define YYLLOC_DEFAULT | ( | Current, | |
Rhs, | |||
N | |||
) |
Definition at line 1016 of file ast_expr2.c.
#define YYLSP_NEEDED 1 |
Definition at line 62 of file ast_expr2.c.
Definition at line 400 of file ast_expr2.c.
#define YYLTYPE_IS_TRIVIAL 1 |
Definition at line 401 of file ast_expr2.c.
#define yylval ast_yylval |
Definition at line 68 of file ast_expr2.c.
Referenced by ael_yyget_lval(), ael_yyset_lval(), ast_yyget_lval(), ast_yyset_lval(), and while().
#define YYMALLOC malloc |
Definition at line 653 of file ast_expr2.c.
#define YYMAXDEPTH 10000 |
Definition at line 1243 of file ast_expr2.c.
Referenced by if().
#define YYMAXUTOK 280 |
Definition at line 748 of file ast_expr2.c.
#define yynerrs ast_yynerrs |
Definition at line 71 of file ast_expr2.c.
Referenced by if().
#define YYNNTS 4 |
Definition at line 740 of file ast_expr2.c.
#define YYNRULES 28 |
Definition at line 742 of file ast_expr2.c.
#define YYNSTATES 54 |
Definition at line 744 of file ast_expr2.c.
#define YYNTOKENS 26 |
Definition at line 738 of file ast_expr2.c.
Referenced by yysyntax_error().
#define YYPACT_NINF -18 |
Definition at line 883 of file ast_expr2.c.
Definition at line 924 of file ast_expr2.c.
Referenced by for(), and yysyntax_error().
#define yyparse ast_yyparse |
Definition at line 65 of file ast_expr2.c.
#define YYPARSE_PARAM parseio |
Definition at line 311 of file ast_expr2.c.
Definition at line 1828 of file ast_expr2.c.
#define YYPULL 1 |
Definition at line 59 of file ast_expr2.c.
#define YYPURE 1 |
Definition at line 53 of file ast_expr2.c.
#define YYPUSH 0 |
Definition at line 56 of file ast_expr2.c.
#define YYRECOVERING | ( | ) | (!!yyerrstatus) |
Definition at line 987 of file ast_expr2.c.
#define YYRHSLOC | ( | Rhs, | |
K | |||
) | ((Rhs)[K]) |
Definition at line 1014 of file ast_expr2.c.
#define YYSIZE_MAXIMUM ((YYSIZE_T) -1) |
Definition at line 561 of file ast_expr2.c.
#define YYSIZE_T unsigned int |
Definition at line 557 of file ast_expr2.c.
Referenced by if(), yysyntax_error(), and yytnamerr().
#define YYSKELETON_NAME "yacc.c" |
Definition at line 50 of file ast_expr2.c.
#define YYSTACK_ALLOC YYMALLOC |
Definition at line 639 of file ast_expr2.c.
Referenced by if().
#define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM |
Definition at line 642 of file ast_expr2.c.
Referenced by yysyntax_error().
#define YYSTACK_BYTES | ( | N | ) |
Definition at line 688 of file ast_expr2.c.
Referenced by if().
#define YYSTACK_FREE YYFREE |
Definition at line 640 of file ast_expr2.c.
Referenced by if().
#define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) |
Definition at line 684 of file ast_expr2.c.
#define YYSTACK_RELOCATE | ( | Stack_alloc, | |
Stack | |||
) |
Definition at line 699 of file ast_expr2.c.
Referenced by if().
#define yystype YYSTYPE /* obsolescent; will be withdrawn */ |
Definition at line 487 of file ast_expr2.c.
#define YYSTYPE_IS_DECLARED 1 |
Definition at line 488 of file ast_expr2.c.
#define YYSTYPE_IS_TRIVIAL 1 |
Definition at line 486 of file ast_expr2.c.
#define YYSYNTAX_ERROR |
Referenced by if().
#define YYTABLE_NINF -1 |
Definition at line 903 of file ast_expr2.c.
#define yytable_value_is_error | ( | yytable_value | ) | YYID (0) |
Definition at line 927 of file ast_expr2.c.
Referenced by if(), and yysyntax_error().
#define YYTERROR 1 |
Definition at line 1006 of file ast_expr2.c.
Referenced by for(), and yysyntax_error().
#define YYTOKEN_TABLE 0 |
Definition at line 433 of file ast_expr2.c.
#define YYTOKENTYPE |
Definition at line 439 of file ast_expr2.c.
#define YYTRANSLATE | ( | YYX | ) | ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) |
Definition at line 750 of file ast_expr2.c.
#define YYUNDEFTOK 2 |
Definition at line 747 of file ast_expr2.c.
#define YYUSE | ( | e | ) | ((void) (e)) |
Definition at line 577 of file ast_expr2.c.
typedef void* yyscan_t |
Definition at line 346 of file ast_expr2.c.
typedef short int yytype_int16 |
Definition at line 544 of file ast_expr2.c.
typedef short int yytype_int8 |
Definition at line 532 of file ast_expr2.c.
typedef unsigned short int yytype_uint16 |
Definition at line 538 of file ast_expr2.c.
typedef unsigned char yytype_uint8 |
Definition at line 523 of file ast_expr2.c.
enum node_type |
Enumerator | |
---|---|
AST_EXPR_NODE_COMMA | |
AST_EXPR_NODE_STRING | |
AST_EXPR_NODE_VAL |
Definition at line 333 of file ast_expr2.c.
enum valtype |
Enumerator | |
---|---|
AST_EXPR_number | |
AST_EXPR_numeric_string | |
AST_EXPR_string | |
AST_EXPR_number | |
AST_EXPR_numeric_string | |
AST_EXPR_string |
Definition at line 317 of file ast_expr2.c.
enum yytokentype |
Definition at line 442 of file ast_expr2.c.
|
static |
Definition at line 2562 of file ast_expr2.c.
References ast_log(), calloc, LOG_ERROR, and expr_node::type.
Referenced by switch().
Definition at line 3378 of file ast_expr2.c.
References chk_plus(), and QUAD_MIN.
Referenced by op_minus(), and op_negate().
Definition at line 3335 of file ast_expr2.c.
Referenced by chk_minus(), and op_plus().
Definition at line 3500 of file ast_expr2.c.
Referenced by op_times().
|
static |
Definition at line 2809 of file ast_expr2.c.
References AST_EXPR_number, ast_log(), FP___PRINTF, val::i, LOG_NOTICE, malloc, expr_node::right, val::s, val::type, val::u, and expr_node::val.
Referenced by op_func().
|
static |
Definition at line 2792 of file ast_expr2.c.
References free, free_value(), expr_node::right, and expr_node::val.
Referenced by switch().
for | ( | ;; | ) |
Definition at line 2460 of file ast_expr2.c.
References YY_STACK_PRINT, YYABORT, yydestruct(), YYLAST, yylsp, yyn, yypact_value_is_default, YYPOPSTACK, yyssp, yystate, and YYTERROR.
Referenced by adsi_transmit_message_full(), isdn_msg_get_index(), measurenoise(), oss_read(), plc_fillin(), red_t140_to_red(), resample_frame(), stack_init(), tzload(), and udptl_build_packet().
|
static |
Definition at line 2624 of file ast_expr2.c.
References AST_EXPR_numeric_string, AST_EXPR_string, free, val::s, val::type, and val::u.
Referenced by destroy_arglist(), op_and(), op_colon(), op_compl(), op_cond(), op_div(), op_eq(), op_eqtilde(), op_ge(), op_gt(), op_le(), op_lt(), op_minus(), op_ne(), op_negate(), op_or(), op_plus(), op_rem(), op_tildetilde(), op_times(), and switch().
if | ( | yyss+yystacksize-1<= | yyssp | ) |
Definition at line 1874 of file ast_expr2.c.
References YY_, YYABORT, YYDPRINTF, yyls, yyalloc::yyls_alloc, YYMAXDEPTH, YYSIZE_T, yyss, yyalloc::yyss_alloc, YYSTACK_ALLOC, YYSTACK_BYTES, YYSTACK_FREE, YYSTACK_RELOCATE, yyvs, and yyalloc::yyvs_alloc.
Referenced by __ast_read(), __ast_str_helper(), __ast_str_helper2(), aji_client_connect(), ast_hashtab_dup(), ast_hashtab_resize(), ast_rtcp_read(), ast_str_make_space(), ast_stun_request(), cli_complete(), dahdi_accept_r2_call_exec(), dahdi_send_callrerouting_facility_exec(), dahdi_send_keypad_facility_exec(), defer_full_frame(), dundi_send(), g726_write(), get_filestream(), h263_read(), h264_read(), handle_bchan(), handle_cli_data_get(), handle_err(), handle_mgmt(), handle_request_subscribe(), history_get(), local_setoption(), MD5Update(), misdn_lib_get_free_bc(), misdn_lib_get_port_info(), misdn_lib_isdn_event_catcher(), ogg_vorbis_close(), ogg_vorbis_read(), ogg_vorbis_seek(), ogg_vorbis_tell(), ogg_vorbis_write(), oh323_answer(), oh323_call(), oh323_digit_begin(), oh323_digit_end(), oh323_hangup(), oh323_set_rtp_peer(), oh323_write(), oss_write(), park_call_full(), parse_release_complete(), pbx_builtin_background(), phone_write_buf(), pitch_shift(), send_trunk(), smdi_msg_find(), socket_read(), speex_callback(), switch_video_out(), tzload(), update(), wav_close(), wav_open(), wav_seek(), and wav_write().
if | ( | yychar<= | YYEOF | ) |
if | ( | yyn<= | 0 | ) |
Definition at line 1986 of file ast_expr2.c.
References yyerrlab, yyn, yyreduce, and yytable_value_is_error.
if | ( | ! | yyerrstatus | ) |
Definition at line 2368 of file ast_expr2.c.
References YY_, yyerror, yymsg, yymsgbuf, yynerrs, YYSTACK_ALLOC, YYSTACK_FREE, and YYSYNTAX_ERROR.
if | ( | yyerrstatus | = = 3 | ) |
Definition at line 2409 of file ast_expr2.c.
References YYABORT, yydestruct(), YYEMPTY, and YYEOF.
|
static |
|
static |
Definition at line 2718 of file ast_expr2.c.
References AST_EXPR_number, val::i, val::s, to_number(), val::type, and val::u.
Referenced by op_and(), and op_or().
|
static |
Definition at line 2710 of file ast_expr2.c.
References AST_EXPR_string, and val::type.
Referenced by op_cond(), op_eq(), op_ge(), op_gt(), op_le(), op_lt(), and op_ne().
Definition at line 2576 of file ast_expr2.c.
References AST_EXPR_number, ast_log(), val::i, LOG_WARNING, malloc, val::type, and val::u.
Referenced by op_and(), op_colon(), op_compl(), op_div(), op_eq(), op_eqtilde(), op_func(), op_ge(), op_gt(), op_le(), op_lt(), op_minus(), op_ne(), op_negate(), op_plus(), op_rem(), and op_times().
|
static |
Definition at line 2592 of file ast_expr2.c.
References AST_EXPR_numeric_string, AST_EXPR_string, ast_log(), free, val::i, LOG_WARNING, malloc, val::s, strdup, val::type, and val::u.
Referenced by op_colon(), op_eqtilde(), op_func(), op_tildetilde(), and switch().
Definition at line 3156 of file ast_expr2.c.
References FP___TYPE, free_value(), is_zero_or_null(), and make_number().
Referenced by switch().
Definition at line 3607 of file ast_expr2.c.
References ast_log(), FP___TYPE, free_value(), LOG_WARNING, make_number(), make_str(), val::s, strip_quotes(), to_string(), and val::u.
Referenced by switch().
Definition at line 3446 of file ast_expr2.c.
References AST_EXPR_number, AST_EXPR_numeric_string, AST_EXPR_string, free_value(), val::i, make_number(), val::s, val::type, and val::u.
Referenced by switch().
Definition at line 3276 of file ast_expr2.c.
References free_value(), val::i, isstring(), val::s, to_number(), and val::u.
Referenced by switch().
Definition at line 3545 of file ast_expr2.c.
References ast_log(), chk_div(), free_value(), val::i, LOG_WARNING, make_number(), to_number(), and val::u.
Referenced by switch().
Definition at line 3169 of file ast_expr2.c.
References ast_log(), FP___TYPE, free_value(), val::i, isstring(), LOG_WARNING, make_number(), val::s, to_number(), to_string(), and val::u.
Referenced by switch().
Definition at line 3658 of file ast_expr2.c.
References ast_log(), FP___TYPE, free_value(), LOG_WARNING, make_number(), make_str(), val::s, strip_quotes(), to_string(), and val::u.
Referenced by switch().
|
static |
Definition at line 2860 of file ast_expr2.c.
References ast_custom_function_find(), ast_log(), compose_func_args(), f, FP___TYPE, free, FUNC_ACOS, FUNC_ASIN, FUNC_ATAN, FUNC_ATAN2, FUNC_CEIL, FUNC_COS, FUNC_EXP, FUNC_EXP10, FUNC_EXP2, FUNC_FLOOR, FUNC_LOG, FUNC_LOG10, FUNC_LOG2, FUNC_POW, FUNC_REMAINDER, FUNC_RINT, FUNC_ROUND, FUNC_SIN, FUNC_SQRT, FUNC_STRTOD, FUNC_TAN, FUNC_TRUNC, val::i, is_really_num(), LOG_ERROR, LOG_WARNING, make_number(), make_str(), ast_custom_function::read, expr_node::right, val::s, to_number(), val::u, and expr_node::val.
Referenced by switch().
Definition at line 3236 of file ast_expr2.c.
References FP___TYPE, free_value(), val::i, isstring(), make_number(), val::s, to_number(), to_string(), and val::u.
Referenced by switch().
Definition at line 3196 of file ast_expr2.c.
References FP___TYPE, free_value(), val::i, isstring(), make_number(), val::s, to_number(), to_string(), and val::u.
Referenced by switch().
Definition at line 3256 of file ast_expr2.c.
References FP___TYPE, free_value(), val::i, isstring(), make_number(), val::s, to_number(), to_string(), and val::u.
Referenced by switch().
Definition at line 3216 of file ast_expr2.c.
References FP___TYPE, free_value(), val::i, isstring(), make_number(), val::s, to_number(), to_string(), and val::u.
Referenced by switch().
Definition at line 3392 of file ast_expr2.c.
References ast_log(), chk_minus(), free_value(), val::i, LOG_WARNING, make_number(), to_number(), and val::u.
Referenced by switch().
Definition at line 3315 of file ast_expr2.c.
References FP___TYPE, free_value(), val::i, isstring(), make_number(), val::s, to_number(), to_string(), and val::u.
Referenced by switch().
Definition at line 3426 of file ast_expr2.c.
References ast_log(), chk_minus(), free_value(), val::i, LOG_WARNING, make_number(), to_number(), and val::u.
Referenced by switch().
Definition at line 3144 of file ast_expr2.c.
References free_value(), and is_zero_or_null().
Referenced by switch().
Definition at line 3348 of file ast_expr2.c.
References ast_log(), chk_plus(), free_value(), val::i, LOG_WARNING, make_number(), to_number(), and val::u.
Referenced by switch().
Definition at line 3580 of file ast_expr2.c.
References ast_log(), free_value(), FUNC_FMOD, val::i, LOG_WARNING, make_number(), to_number(), and val::u.
Referenced by switch().
Definition at line 3708 of file ast_expr2.c.
References free_value(), make_str(), malloc, val::s, strip_quotes(), to_string(), and val::u.
Referenced by switch().
Definition at line 3512 of file ast_expr2.c.
References ast_log(), chk_times(), free_value(), val::i, LOG_WARNING, make_number(), to_number(), and val::u.
Referenced by switch().
|
static |
Definition at line 2667 of file ast_expr2.c.
References AST_EXPR_numeric_string, AST_EXPR_string, f, val::s, val::type, and val::u.
Referenced by op_colon(), op_eqtilde(), and op_tildetilde().
switch | ( | yytype | ) |
Definition at line 1510 of file ast_expr2.c.
References free_value(), and YYSTYPE::val.
Referenced by ast_stun_handle_packet(), handle_timers(), and manager_event_handler().
switch | ( | yyn | ) |
Definition at line 2041 of file ast_expr2.c.
References alloc_expr_node(), YYSTYPE::arglist, AST_EXPR_NODE_VAL, AST_EXPR_number, AST_EXPR_string, calloc, DESTROY, destroy_arglist(), first_column, first_line, free, val::i, make_str(), op_and(), op_colon(), op_compl(), op_cond(), op_div(), op_eq(), op_eqtilde(), op_func(), op_ge(), op_gt(), op_le(), op_lt(), op_minus(), op_ne(), op_negate(), op_or(), op_plus(), op_rem(), op_tildetilde(), op_times(), parseio, expr_node::right, val::s, strdup, type, val::u, expr_node::val, YYSTYPE::val, and yyloc.
|
static |
Definition at line 2636 of file ast_expr2.c.
References AST_EXPR_number, AST_EXPR_string, ast_log(), errno, FP___TYPE, free, FUNC_STRTOD, val::i, LOG_WARNING, val::s, val::type, and val::u.
Referenced by is_zero_or_null(), op_cond(), op_div(), op_eq(), op_func(), op_ge(), op_gt(), op_le(), op_lt(), op_minus(), op_ne(), op_negate(), op_plus(), op_rem(), and op_times().
|
static |
Definition at line 2690 of file ast_expr2.c.
References AST_EXPR_numeric_string, AST_EXPR_string, ast_log(), FP___PRINTF, val::i, LOG_WARNING, malloc, val::s, val::type, and val::u.
Referenced by op_colon(), op_eq(), op_eqtilde(), op_ge(), op_gt(), op_le(), op_lt(), op_ne(), and op_tildetilde().
while | ( | yyssp! | = yyss | ) |
Definition at line 2538 of file ast_expr2.c.
References yydestruct(), and YYPOPSTACK.
Referenced by timesub(), and tzload().
YY_REDUCE_PRINT | ( | yyn | ) |
YY_SYMBOL_PRINT | ( | yymsg | , |
yytype | , | ||
yyvaluep | , | ||
yylocationp | |||
) |
YY_SYMBOL_PRINT | ( | "Next token is" | , |
yytoken | , | ||
& | yylval, | ||
& | yylloc | ||
) |
YY_SYMBOL_PRINT | ( | "Shifting" | , |
yytoken | , | ||
& | yylval, | ||
& | yylloc | ||
) |
YY_SYMBOL_PRINT | ( | ) |
yydestruct | ( | "Cleanup: discarding lookahead" | , |
yytoken | , | ||
& | yylval, | ||
& | yylloc | ||
) |
YYDPRINTF | ( | (stderr,"Starting parse\n") | ) |
YYDPRINTF | ( | (stderr,"Entering state %d\n", yystate) | ) |
return YYID | ( | yyresult | ) |
YYLLOC_DEFAULT | ( | yyloc | , |
yyerror_range | , | ||
2 | |||
) |
int yyparse | ( | ) |
YYPOPSTACK | ( | yylen | ) |
YYSTACK_FREE | ( | yyss | ) |
YYSTACK_FREE | ( | yymsg | ) |
|
static |
Definition at line 1357 of file ast_expr2.c.
References YY_, YYCASE_, YYEMPTY, YYLAST, yymsg, yyn, YYNTOKENS, yypact_value_is_default, YYSIZE_T, yyssp, YYSTACK_ALLOC_MAXIMUM, yytable_value_is_error, YYTERROR, yytnamerr(), and yytoken.
|
static |
Definition at line 1309 of file ast_expr2.c.
References yyn, YYSIZE_T, and yystr.
Referenced by yysyntax_error().
YYUSE | ( | yylocationp | ) |
yynewstate __pad0__ |
Definition at line 1869 of file ast_expr2.c.
yyexhaustedlab __pad10__ |
Definition at line 2520 of file ast_expr2.c.
yyreturn __pad11__ |
Definition at line 2530 of file ast_expr2.c.
yysetstate __pad1__ |
Definition at line 1872 of file ast_expr2.c.
yybackup __pad2__ |
Definition at line 1956 of file ast_expr2.c.
yydefault __pad3__ |
Definition at line 2015 of file ast_expr2.c.
yyreduce __pad4__ |
Definition at line 2026 of file ast_expr2.c.
yyerrlab __pad5__ |
Definition at line 2365 of file ast_expr2.c.
yyerrorlab __pad6__ |
Definition at line 2442 of file ast_expr2.c.
yyerrlab1 __pad7__ |
Definition at line 2458 of file ast_expr2.c.
yyacceptlab __pad8__ |
Definition at line 2505 of file ast_expr2.c.
yyabortlab __pad9__ |
Definition at line 2512 of file ast_expr2.c.
continue |
else |
char extra_error_message[4095] |
Definition at line 2464 of file ast_expr2f.c.
int extra_error_message_supplied |
Definition at line 2465 of file ast_expr2f.c.
yylloc first_column = yylloc.last_column = 1 |
Definition at line 1858 of file ast_expr2.c.
yylloc first_line = yylloc.last_line = 1 |
Definition at line 1857 of file ast_expr2.c.
Referenced by make_email_file(), npval(), sendmail(), sendpage(), and switch().
YYACCEPT |
Definition at line 1943 of file ast_expr2.c.
goto yybackup |
Definition at line 1945 of file ast_expr2.c.
yychar = YYEMPTY |
Definition at line 1845 of file ast_expr2.c.
|
static |
Definition at line 930 of file ast_expr2.c.
return yyd |
Definition at line 1295 of file ast_expr2.c.
|
static |
Definition at line 865 of file ast_expr2.c.
goto yydefault |
Definition at line 1958 of file ast_expr2.c.
|
static |
Definition at line 876 of file ast_expr2.c.
|
static |
Definition at line 1285 of file ast_expr2.c.
goto yyerrlab |
Definition at line 2017 of file ast_expr2.c.
Referenced by if().
goto yyerrlab1 |
Definition at line 2430 of file ast_expr2.c.
yyerror_range[2] = yylloc |
Definition at line 1808 of file ast_expr2.c.
yyerrstatus = 0 |
Definition at line 1782 of file ast_expr2.c.
int yylen = 0 |
Definition at line 1267 of file ast_expr2.c.
YYLTYPE yylloc |
Definition at line 1775 of file ast_expr2.c.
YYLTYPE yyloc |
Definition at line 1819 of file ast_expr2.c.
Referenced by switch().
YYLTYPE* yylocationp |
Definition at line 1500 of file ast_expr2.c.
yyls = yylsa |
Definition at line 1804 of file ast_expr2.c.
Referenced by if().
YYLTYPE yylsa[YYINITDEPTH] |
Definition at line 1803 of file ast_expr2.c.
* yylsp = yyls |
Definition at line 1805 of file ast_expr2.c.
Referenced by for().
YYSTYPE yylval |
Definition at line 1767 of file ast_expr2.c.
|
static |
Definition at line 1497 of file ast_expr2.c.
Referenced by if(), and yysyntax_error().
Definition at line 1825 of file ast_expr2.c.
char yymsgbuf[128] |
Definition at line 1823 of file ast_expr2.c.
Referenced by if().
yyn = yytoken |
Definition at line 1812 of file ast_expr2.c.
Referenced by for(), if(), yysyntax_error(), and yytnamerr().
yynerrs = 0 |
Definition at line 1778 of file ast_expr2.c.
goto yynewstate |
Definition at line 2008 of file ast_expr2.c.
|
static |
Definition at line 884 of file ast_expr2.c.
int void* YYPARSE_PARAM |
Definition at line 1754 of file ast_expr2.c.
|
static |
Definition at line 895 of file ast_expr2.c.
|
static |
Definition at line 847 of file ast_expr2.c.
|
static |
Definition at line 855 of file ast_expr2.c.
goto yyreduce |
Definition at line 2018 of file ast_expr2.c.
Referenced by if().
yyresult = 2 |
Definition at line 1813 of file ast_expr2.c.
goto yyreturn |
Definition at line 2506 of file ast_expr2.c.
const char* yys = yysrc |
Definition at line 1290 of file ast_expr2.c.
goto yysetstate |
Definition at line 1861 of file ast_expr2.c.
const char* yysrc |
Definition at line 1286 of file ast_expr2.c.
yyss = yyssa |
Definition at line 1794 of file ast_expr2.c.
Referenced by if().
yytype_int16 yyssa[YYINITDEPTH] |
Definition at line 1793 of file ast_expr2.c.
yyssp = yyss |
Definition at line 1795 of file ast_expr2.c.
Referenced by for(), and yysyntax_error().
yystacksize = YYINITDEPTH |
Definition at line 1810 of file ast_expr2.c.
else yystate = 0 |
Definition at line 1780 of file ast_expr2.c.
Referenced by for().
|
static |
Definition at line 952 of file ast_expr2.c.
|
static |
Definition at line 1261 of file ast_expr2.c.
Referenced by yytnamerr().
|
static |
Definition at line 904 of file ast_expr2.c.
|
static |
Definition at line 825 of file ast_expr2.c.
yytoken = 0 |
Definition at line 1815 of file ast_expr2.c.
Referenced by yysyntax_error().
|
static |
Definition at line 754 of file ast_expr2.c.
int yytype |
Definition at line 1498 of file ast_expr2.c.
Definition at line 1818 of file ast_expr2.c.
YYSTYPE* yyvaluep |
Definition at line 1499 of file ast_expr2.c.
yyvs = yyvsa |
Definition at line 1799 of file ast_expr2.c.
Referenced by if().
YYSTYPE yyvsa[YYINITDEPTH] |
Definition at line 1798 of file ast_expr2.c.
* yyvsp = yyvs |
Definition at line 1800 of file ast_expr2.c.