| Asterisk - The Open Source Telephony Project GIT-master-27fb039
    | 
#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 | ASTMM_LIBC ASTMM_REDIRECT | 
| #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) ((void) 0) | 
| #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.4.1" | 
| #define | yychar ast_yychar | 
| #define | yyclearin (yychar = YYEMPTY) | 
| #define | YYCOPY(To, From, Count) | 
| #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 | 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 | YYTABLE_NINF -1 | 
| #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 | 
| Enumerations | |
| enum | node_type { AST_EXPR_NODE_COMMA , AST_EXPR_NODE_STRING , AST_EXPR_NODE_VAL } | 
| enum | valtype { AST_EXPR_number , AST_EXPR_numeric_string , AST_EXPR_string } | 
| enum | yytokentype { TOK_COMMA = 258 , TOK_COLONCOLON = 259 , TOK_COND = 260 , TOK_OR = 261 , TOK_AND = 262 , TOK_NE = 263 , TOK_LE = 264 , TOK_GE = 265 , TOK_LT = 266 , TOK_GT = 267 , TOK_EQ = 268 , TOK_MINUS = 269 , TOK_PLUS = 270 , TOK_MOD = 271 , TOK_DIV = 272 , TOK_MULT = 273 , TOK_COMPL = 274 , TOK_TILDETILDE = 275 , TOK_EQTILDE = 276 , TOK_COLON = 277 , TOK_LP = 278 , TOK_RP = 279 , TOKEN = 280 } | 
| Functions | |
| static struct val *make_str | __P ((const char *)) | 
| static struct val *make_number | __P ((FP___TYPE)) | 
| 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 *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) | 
| static void | free_value (struct val *vp) | 
| 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) | 
| static int | to_number (struct val *vp) | 
| static void | to_string (struct val *vp) | 
| static void | yydestruct (char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp) const | 
| int | yyparse (void *YYPARSE_PARAM) | 
| Variables | |
| char | extra_error_message [4095] | 
| int | extra_error_message_supplied | 
| static const yytype_int8 | yycheck [] | 
| static const yytype_uint8 | yydefact [] | 
| static const yytype_int8 | yydefgoto [] | 
| static const yytype_int16 | yypact [] | 
| static const yytype_int8 | yypgoto [] | 
| static const yytype_uint8 | yyr1 [] | 
| static const yytype_uint8 | yyr2 [] | 
| static const yytype_uint8 | yystos [] | 
| static const yytype_uint8 | yytable [] | 
| static const yytype_uint8 | yytranslate [] | 
| #define ast_yyerror | ( | x | ) | ast_yyerror(x,&yyloc,parseio) | 
Definition at line 411 of file ast_expr2.c.
Definition at line 411 of file ast_expr2.c.
| #define ASTMM_LIBC ASTMM_REDIRECT | 
Definition at line 94 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.
| #define FP___PRINTF "%.16g" | 
Definition at line 110 of file ast_expr2.c.
| #define FP___TYPE double | 
Definition at line 111 of file ast_expr2.c.
| #define FUNC_ACOS acosl | 
Definition at line 133 of file ast_expr2.c.
| #define FUNC_ASIN asinl | 
Definition at line 139 of file ast_expr2.c.
| #define FUNC_ATAN atanl | 
Definition at line 145 of file ast_expr2.c.
| #define FUNC_ATAN2 atan2l | 
Definition at line 151 of file ast_expr2.c.
| #define FUNC_CEIL ceill | 
Definition at line 211 of file ast_expr2.c.
| #define FUNC_COS cosl | 
Definition at line 115 of file ast_expr2.c.
| #define FUNC_EXP expl | 
Definition at line 175 of file ast_expr2.c.
| #define FUNC_EXP10 exp10l | 
Definition at line 241 of file ast_expr2.c.
| #define FUNC_EXP2 exp2l | 
Definition at line 233 of file ast_expr2.c.
| #define FUNC_FLOOR floorl | 
Definition at line 205 of file ast_expr2.c.
| #define FUNC_FMOD fmodl | 
Definition at line 193 of file ast_expr2.c.
| #define FUNC_LOG logl | 
Definition at line 181 of file ast_expr2.c.
| #define FUNC_LOG10 log10l | 
Definition at line 261 of file ast_expr2.c.
| #define FUNC_LOG2 log2l | 
Definition at line 249 of file ast_expr2.c.
| #define FUNC_POW powl | 
Definition at line 157 of file ast_expr2.c.
| #define FUNC_REMAINDER remainderl | 
Definition at line 187 of file ast_expr2.c.
| #define FUNC_RINT rintl | 
Definition at line 169 of file ast_expr2.c.
| #define FUNC_ROUND roundl | 
Definition at line 217 of file ast_expr2.c.
| #define FUNC_SIN sinl | 
Definition at line 121 of file ast_expr2.c.
| #define FUNC_SQRT sqrtl | 
Definition at line 163 of file ast_expr2.c.
| #define FUNC_STRTOD strtold | 
Definition at line 199 of file ast_expr2.c.
| #define FUNC_TAN tanl | 
Definition at line 127 of file ast_expr2.c.
| #define FUNC_TRUNC truncl | 
Definition at line 223 of file ast_expr2.c.
| #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.
| #define YY_ | ( | msgid | ) | msgid | 
Definition at line 571 of file ast_expr2.c.
| #define YY_LOCATION_PRINT | ( | File, | |
| Loc | |||
| ) | ((void) 0) | 
Definition at line 1030 of file ast_expr2.c.
| #define YY_REDUCE_PRINT | ( | Rule | ) | 
Definition at line 1209 of file ast_expr2.c.
| #define YY_STACK_PRINT | ( | Bottom, | |
| Top | |||
| ) | 
Definition at line 1208 of file ast_expr2.c.
| #define YY_SYMBOL_PRINT | ( | Title, | |
| Type, | |||
| Value, | |||
| Location | |||
| ) | 
Definition at line 1207 of file ast_expr2.c.
| #define YYABORT goto yyabortlab | 
Definition at line 959 of file ast_expr2.c.
| #define YYACCEPT goto yyacceptlab | 
Definition at line 958 of file ast_expr2.c.
| #define YYBACKUP | ( | Token, | |
| Value | |||
| ) | 
| #define YYBISON 1 | 
Definition at line 46 of file ast_expr2.c.
| #define YYBISON_VERSION "2.4.1" | 
Definition at line 49 of file ast_expr2.c.
| #define yychar ast_yychar | 
Definition at line 71 of file ast_expr2.c.
Definition at line 954 of file ast_expr2.c.
| #define YYCOPY | ( | To, | |
| From, | |||
| Count | |||
| ) | 
Definition at line 699 of file ast_expr2.c.
| #define yydebug ast_yydebug | 
Definition at line 72 of file ast_expr2.c.
| #define YYDEBUG 0 | 
Definition at line 420 of file ast_expr2.c.
| #define YYDPRINTF | ( | Args | ) | 
Definition at line 1206 of file ast_expr2.c.
| #define YYEMPTY (-2) | 
Definition at line 955 of file ast_expr2.c.
| #define YYENABLE_NLS 0 | 
Definition at line 310 of file ast_expr2.c.
| #define YYEOF 0 | 
Definition at line 956 of file ast_expr2.c.
| #define YYERRCODE 256 | 
Definition at line 990 of file ast_expr2.c.
| #define yyerrok (yyerrstatus = 0) | 
Definition at line 953 of file ast_expr2.c.
| #define yyerror ast_yyerror | 
Definition at line 69 of file ast_expr2.c.
| #define YYERROR goto yyerrorlab | 
Definition at line 960 of file ast_expr2.c.
| #define YYERROR_VERBOSE 1 | 
Definition at line 313 of file ast_expr2.c.
| #define YYERROR_VERBOSE 1 | 
Definition at line 313 of file ast_expr2.c.
| #define YYFAIL goto yyerrlab | 
Definition at line 967 of file ast_expr2.c.
| #define YYFINAL 11 | 
Definition at line 729 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 1215 of file ast_expr2.c.
| #define YYLAST 159 | 
Definition at line 731 of file ast_expr2.c.
| #define yylex ast_yylex | 
Definition at line 68 of file ast_expr2.c.
| #define YYLEX yylex (&yylval, &yylloc, YYLEX_PARAM) | 
Definition at line 1038 of file ast_expr2.c.
| #define YYLEX_PARAM ((struct parse_io *)parseio)->scanner | 
Definition at line 312 of file ast_expr2.c.
| #define yylloc ast_yylloc | 
Definition at line 74 of file ast_expr2.c.
| #define YYLLOC_DEFAULT | ( | Current, | |
| Rhs, | |||
| N | |||
| ) | 
Definition at line 999 of file ast_expr2.c.
| #define YYLSP_NEEDED 1 | 
Definition at line 64 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 70 of file ast_expr2.c.
| #define YYMALLOC malloc | 
Definition at line 653 of file ast_expr2.c.
| #define YYMAXDEPTH 10000 | 
Definition at line 1226 of file ast_expr2.c.
| #define YYMAXUTOK 280 | 
Definition at line 744 of file ast_expr2.c.
| #define yynerrs ast_yynerrs | 
Definition at line 73 of file ast_expr2.c.
| #define YYNNTS 4 | 
Definition at line 736 of file ast_expr2.c.
| #define YYNRULES 28 | 
Definition at line 738 of file ast_expr2.c.
| #define YYNSTATES 54 | 
Definition at line 740 of file ast_expr2.c.
| #define YYNTOKENS 26 | 
Definition at line 734 of file ast_expr2.c.
| #define YYPACT_NINF -18 | 
Definition at line 879 of file ast_expr2.c.
| int yyparse ast_yyparse | 
Definition at line 67 of file ast_expr2.c.
| #define YYPARSE_PARAM parseio | 
Definition at line 311 of file ast_expr2.c.
| #define YYPOPSTACK | ( | N | ) | (yyvsp -= (N), yyssp -= (N), yylsp -= (N)) | 
| #define YYPULL 1 | 
Definition at line 61 of file ast_expr2.c.
| #define YYPURE 1 | 
Definition at line 55 of file ast_expr2.c.
| #define YYPUSH 0 | 
Definition at line 58 of file ast_expr2.c.
| #define YYRECOVERING | ( | ) | (!!yyerrstatus) | 
Definition at line 969 of file ast_expr2.c.
| #define YYRHSLOC | ( | Rhs, | |
| K | |||
| ) | ((Rhs)[K]) | 
Definition at line 997 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.
| #define YYSKELETON_NAME "yacc.c" | 
Definition at line 52 of file ast_expr2.c.
| #define YYSTACK_ALLOC YYMALLOC | 
Definition at line 639 of file ast_expr2.c.
| #define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM | 
Definition at line 642 of file ast_expr2.c.
| #define YYSTACK_BYTES | ( | N | ) | 
Definition at line 688 of file ast_expr2.c.
| #define YYSTACK_FREE YYFREE | 
Definition at line 640 of file ast_expr2.c.
| #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 715 of file ast_expr2.c.
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 YYTABLE_NINF -1 | 
Definition at line 900 of file ast_expr2.c.
| #define YYTERROR 1 | 
Definition at line 989 of file ast_expr2.c.
| #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 746 of file ast_expr2.c.
| #define YYUNDEFTOK 2 | 
Definition at line 743 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 | |
Definition at line 317 of file ast_expr2.c.
| enum yytokentype | 
Definition at line 442 of file ast_expr2.c.
| 
 | static | 
Definition at line 2502 of file ast_expr2.c.
References ast_log, LOG_ERROR, and expr_node::type.
Referenced by yyparse().
Definition at line 3325 of file ast_expr2.c.
References a, b, chk_plus(), and QUAD_MIN.
Referenced by op_minus(), and op_negate().
Definition at line 3282 of file ast_expr2.c.
Referenced by chk_minus(), and op_plus().
Definition at line 3447 of file ast_expr2.c.
Referenced by op_times().
| 
 | static | 
Definition at line 2747 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 2730 of file ast_expr2.c.
References free(), free_value(), expr_node::right, and expr_node::val.
Referenced by yyparse().
| 
 | static | 
Definition at line 2564 of file ast_expr2.c.
References AST_EXPR_numeric_string, AST_EXPR_string, free(), NULL, 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 yydestruct().
| 
 | static | 
Definition at line 2789 of file ast_expr2.c.
References str.
Referenced by op_func().
| 
 | static | 
Definition at line 2656 of file ast_expr2.c.
References AST_EXPR_number, val::i, val::s, to_number(), val::type, and val::u.
| 
 | static | 
Definition at line 2516 of file ast_expr2.c.
References AST_EXPR_number, ast_log, val::i, LOG_WARNING, malloc(), NULL, 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 2532 of file ast_expr2.c.
References AST_EXPR_numeric_string, AST_EXPR_string, ast_log, free(), val::i, LOG_WARNING, malloc(), NULL, val::s, val::type, and val::u.
Referenced by op_colon(), op_eqtilde(), op_func(), op_tildetilde(), and yyparse().
Definition at line 3103 of file ast_expr2.c.
References a, b, FP___TYPE, free_value(), is_zero_or_null(), and make_number().
Referenced by yyparse().
Definition at line 3554 of file ast_expr2.c.
References a, ast_log, b, FP___TYPE, free_value(), LOG_WARNING, make_number(), make_str(), strip_quotes(), and to_string().
Referenced by yyparse().
Definition at line 3393 of file ast_expr2.c.
References a, AST_EXPR_number, AST_EXPR_numeric_string, AST_EXPR_string, free_value(), and make_number().
Referenced by yyparse().
Definition at line 3223 of file ast_expr2.c.
References a, b, c, free_value(), isstring(), and to_number().
Referenced by yyparse().
Definition at line 3492 of file ast_expr2.c.
References a, ast_log, b, chk_div(), extra_error_message_supplied, free_value(), LOG_WARNING, make_number(), and to_number().
Referenced by yyparse().
Definition at line 3116 of file ast_expr2.c.
References a, ast_log, b, FP___TYPE, free_value(), isstring(), LOG_WARNING, make_number(), to_number(), and to_string().
Referenced by yyparse().
Definition at line 3605 of file ast_expr2.c.
References a, ast_log, b, FP___TYPE, free_value(), LOG_WARNING, make_number(), make_str(), strip_quotes(), and to_string().
Referenced by yyparse().
| 
 | static | 
Definition at line 2798 of file ast_expr2.c.
References ast_custom_function_find(), ast_log, compose_func_args(), 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(), NULL, ast_custom_function::read, result, expr_node::right, val::s, to_number(), val::u, and expr_node::val.
Referenced by yyparse().
Definition at line 3183 of file ast_expr2.c.
References a, b, FP___TYPE, free_value(), isstring(), make_number(), to_number(), and to_string().
Referenced by yyparse().
Definition at line 3143 of file ast_expr2.c.
References a, b, FP___TYPE, free_value(), isstring(), make_number(), to_number(), and to_string().
Referenced by yyparse().
Definition at line 3203 of file ast_expr2.c.
References a, b, FP___TYPE, free_value(), isstring(), make_number(), to_number(), and to_string().
Referenced by yyparse().
Definition at line 3163 of file ast_expr2.c.
References a, b, FP___TYPE, free_value(), isstring(), make_number(), to_number(), and to_string().
Referenced by yyparse().
Definition at line 3339 of file ast_expr2.c.
References a, ast_log, b, chk_minus(), extra_error_message_supplied, free_value(), val::i, LOG_WARNING, make_number(), to_number(), and val::u.
Referenced by yyparse().
Definition at line 3262 of file ast_expr2.c.
References a, b, FP___TYPE, free_value(), isstring(), make_number(), to_number(), and to_string().
Referenced by yyparse().
Definition at line 3373 of file ast_expr2.c.
References a, ast_log, chk_minus(), extra_error_message_supplied, free_value(), val::i, LOG_WARNING, make_number(), to_number(), and val::u.
Referenced by yyparse().
Definition at line 3091 of file ast_expr2.c.
References a, b, free_value(), and is_zero_or_null().
Referenced by yyparse().
Definition at line 3295 of file ast_expr2.c.
References a, ast_log, b, chk_plus(), extra_error_message_supplied, free_value(), val::i, LOG_WARNING, make_number(), to_number(), and val::u.
Referenced by yyparse().
Definition at line 3527 of file ast_expr2.c.
References a, ast_log, b, extra_error_message_supplied, free_value(), FUNC_FMOD, LOG_WARNING, make_number(), and to_number().
Referenced by yyparse().
Definition at line 3655 of file ast_expr2.c.
References a, ast_log, b, free(), free_value(), LOG_WARNING, make_str(), malloc(), NULL, strip_quotes(), and to_string().
Referenced by yyparse().
Definition at line 3459 of file ast_expr2.c.
References a, ast_log, b, chk_times(), extra_error_message_supplied, free_value(), val::i, LOG_WARNING, make_number(), to_number(), and val::u.
Referenced by yyparse().
| 
 | static | 
Definition at line 2607 of file ast_expr2.c.
References AST_EXPR_numeric_string, AST_EXPR_string, val::s, val::type, and val::u.
Referenced by op_colon(), op_eqtilde(), and op_tildetilde().
| 
 | static | 
Definition at line 2576 of file ast_expr2.c.
References AST_EXPR_number, AST_EXPR_string, ast_log, errno, FP___TYPE, free(), FUNC_STRTOD, val::i, LOG_WARNING, NULL, 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 2630 of file ast_expr2.c.
References asprintf(), AST_EXPR_numeric_string, AST_EXPR_string, ast_log, FP___PRINTF, val::i, LOG_WARNING, 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().
| 
 | static | 
Definition at line 1453 of file ast_expr2.c.
References free_value(), YYSTYPE::val, YY_SYMBOL_PRINT, and YYUSE.
Referenced by yyparse().
| int yyparse | ( | void * | YYPARSE_PARAM | ) | 
Definition at line 1712 of file ast_expr2.c.
References alloc_expr_node(), YYSTYPE::arglist, AST_EXPR_NODE_VAL, AST_EXPR_number, AST_EXPR_string, DESTROY, destroy_arglist(), YYLTYPE::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(), expr_node::right, val::s, type, val::u, expr_node::val, YYSTYPE::val, YY_, YY_REDUCE_PRINT, YY_STACK_PRINT, YY_SYMBOL_PRINT, YYABORT, YYACCEPT, yychar, yycheck, yydefact, yydefgoto, yydestruct(), YYDPRINTF, YYEMPTY, YYEOF, yyerror, YYFINAL, YYID, YYINITDEPTH, YYLAST, YYLEX, yylloc, YYLLOC_DEFAULT, yyalloc::yyls_alloc, yylval, YYMAXDEPTH, yynerrs, YYNTOKENS, yypact, YYPACT_NINF, yypgoto, YYPOPSTACK, yyr1, yyr2, YYSIZE_T, yyalloc::yyss_alloc, YYSTACK_ALLOC, YYSTACK_ALLOC_MAXIMUM, YYSTACK_BYTES, YYSTACK_FREE, YYSTACK_RELOCATE, yystos, yytable, YYTABLE_NINF, YYTERROR, YYTRANSLATE, and yyalloc::yyvs_alloc.
| 
 | extern | 
Definition at line 2458 of file ast_expr2f.c.
Referenced by ast_expr_clear_extra_error_info(), ast_expr_register_extra_error_info(), and ast_yyerror().
| 
 | extern | 
Definition at line 2459 of file ast_expr2f.c.
Referenced by ast_expr_clear_extra_error_info(), ast_expr_register_extra_error_info(), ast_yyerror(), op_div(), op_minus(), op_negate(), op_plus(), op_rem(), and op_times().
| 
 | static | 
Definition at line 921 of file ast_expr2.c.
Referenced by yyparse().
| 
 | static | 
Definition at line 861 of file ast_expr2.c.
Referenced by yyparse().
| 
 | static | 
Definition at line 872 of file ast_expr2.c.
Referenced by yyparse().
| 
 | static | 
Definition at line 880 of file ast_expr2.c.
Referenced by yyparse().
| 
 | static | 
Definition at line 891 of file ast_expr2.c.
Referenced by yyparse().
| 
 | static | 
Definition at line 843 of file ast_expr2.c.
Referenced by yyparse().
| 
 | static | 
Definition at line 851 of file ast_expr2.c.
Referenced by yyparse().
| 
 | static | 
Definition at line 943 of file ast_expr2.c.
Referenced by yyparse().
| 
 | static | 
Definition at line 901 of file ast_expr2.c.
Referenced by yyparse().
| 
 | static | 
Definition at line 750 of file ast_expr2.c.