Apache HTTPD
Classes | Macros | Enumerations | Functions
util_expr_private.h File Reference
#include "httpd.h"
#include "apr_strings.h"
#include "apr_tables.h"
#include "ap_expr.h"

Go to the source code of this file.

Classes

struct  ap_expr_node
 
struct  ap_expr_parse_ctx_t
 

Macros

#define YY_NULL   0
 
#define MIN(a, b)   (((a)<(b))?(a):(b))
 
#define YY_NO_UNISTD_H
 
#define YYDEBUG   0
 

Enumerations

enum  ap_expr_node_op_e {
  op_NOP , op_True , op_False , op_Not ,
  op_Or , op_And , op_Comp , op_EQ ,
  op_NE , op_LT , op_LE , op_GT ,
  op_GE , op_IN , op_REG , op_NRE ,
  op_STR_EQ , op_STR_NE , op_STR_LT , op_STR_LE ,
  op_STR_GT , op_STR_GE , op_Concat , op_Digit ,
  op_String , op_Regex , op_RegexBackref , op_Var ,
  op_ListElement , op_UnaryOpCall , op_UnaryOpInfo , op_BinaryOpCall ,
  op_BinaryOpInfo , op_BinaryOpArgs , op_StringFuncCall , op_StringFuncInfo ,
  op_ListFuncCall , op_ListFuncInfo
}
 

Functions

int ap_expr_yyparse (ap_expr_parse_ctx_t *context)
 
void ap_expr_yyerror (ap_expr_parse_ctx_t *context, const char *err)
 
int ap_expr_yylex_init (void **scanner)
 
int ap_expr_yylex_destroy (void *scanner)
 
void ap_expr_yyset_extra (ap_expr_parse_ctx_t *context, void *scanner)
 
ap_expr_tap_expr_make (ap_expr_node_op_e op, const void *arg1, const void *arg2, ap_expr_parse_ctx_t *ctx)
 
ap_expr_tap_expr_str_func_make (const char *name, const ap_expr_t *arg, ap_expr_parse_ctx_t *ctx)
 
ap_expr_tap_expr_list_func_make (const char *name, const ap_expr_t *arg, ap_expr_parse_ctx_t *ctx)
 
ap_expr_tap_expr_var_make (const char *name, ap_expr_parse_ctx_t *ctx)
 
ap_expr_tap_expr_unary_op_make (const char *name, const ap_expr_t *arg, ap_expr_parse_ctx_t *ctx)
 
ap_expr_tap_expr_binary_op_make (const char *name, const ap_expr_t *arg1, const ap_expr_t *arg2, ap_expr_parse_ctx_t *ctx)
 

Macro Definition Documentation

◆ MIN

#define MIN (   a,
  b 
)    (((a)<(b))?(a):(b))

Definition at line 30 of file util_expr_private.h.

◆ YY_NO_UNISTD_H

#define YY_NO_UNISTD_H

Definition at line 34 of file util_expr_private.h.

◆ YY_NULL

#define YY_NULL   0

Definition at line 26 of file util_expr_private.h.

◆ YYDEBUG

#define YYDEBUG   0

Definition at line 44 of file util_expr_private.h.

Enumeration Type Documentation

◆ ap_expr_node_op_e

The operations in a parse tree node

Enumerator
op_NOP 
op_True 
op_False 
op_Not 
op_Or 
op_And 
op_Comp 
op_EQ 
op_NE 
op_LT 
op_LE 
op_GT 
op_GE 
op_IN 
op_REG 
op_NRE 
op_STR_EQ 
op_STR_NE 
op_STR_LT 
op_STR_LE 
op_STR_GT 
op_STR_GE 
op_Concat 
op_Digit 
op_String 
op_Regex 
op_RegexBackref 
op_Var 
op_ListElement 
op_UnaryOpCall 
op_UnaryOpInfo 
op_BinaryOpCall 
op_BinaryOpInfo 
op_BinaryOpArgs 
op_StringFuncCall 
op_StringFuncInfo 
op_ListFuncCall 
op_ListFuncInfo 

Definition at line 48 of file util_expr_private.h.

Function Documentation

◆ ap_expr_binary_op_make()

ap_expr_t * ap_expr_binary_op_make ( const char name,
const ap_expr_t arg1,
const ap_expr_t arg2,
ap_expr_parse_ctx_t ctx 
)

Definition at line 511 of file util_expr_eval.c.

◆ ap_expr_list_func_make()

ap_expr_t * ap_expr_list_func_make ( const char name,
const ap_expr_t arg,
ap_expr_parse_ctx_t ctx 
)

Definition at line 489 of file util_expr_eval.c.

◆ ap_expr_make()

ap_expr_t * ap_expr_make ( ap_expr_node_op_e  op,
const void *  arg1,
const void *  arg2,
ap_expr_parse_ctx_t ctx 
)

Definition at line 448 of file util_expr_eval.c.

◆ ap_expr_str_func_make()

ap_expr_t * ap_expr_str_func_make ( const char name,
const ap_expr_t arg,
ap_expr_parse_ctx_t ctx 
)

Definition at line 478 of file util_expr_eval.c.

◆ ap_expr_unary_op_make()

ap_expr_t * ap_expr_unary_op_make ( const char name,
const ap_expr_t arg,
ap_expr_parse_ctx_t ctx 
)

Definition at line 500 of file util_expr_eval.c.

◆ ap_expr_var_make()

ap_expr_t * ap_expr_var_make ( const char name,
ap_expr_parse_ctx_t ctx 
)

Definition at line 526 of file util_expr_eval.c.

◆ ap_expr_yyerror()

void ap_expr_yyerror ( ap_expr_parse_ctx_t context,
const char err 
)

Definition at line 2126 of file util_expr_parse.c.

◆ ap_expr_yylex_destroy()

int ap_expr_yylex_destroy ( void *  scanner)

Definition at line 2587 of file util_expr_scan.c.

◆ ap_expr_yylex_init()

int ap_expr_yylex_init ( void **  scanner)

Definition at line 2496 of file util_expr_scan.c.

◆ ap_expr_yyparse()

int ap_expr_yyparse ( ap_expr_parse_ctx_t context)

unused

unused

unused

unused

use a case-insensitive match

Definition at line 1250 of file util_expr_parse.c.

◆ ap_expr_yyset_extra()

void ap_expr_yyset_extra ( ap_expr_parse_ctx_t user_defined,
yyscan_t  yyscanner 
)

Set the user-defined data. This data is never touched by the scanner.

Parameters
user_definedThe data to be associated with this scanner.
yyscannerThe scanner object.

Definition at line 2419 of file util_expr_scan.c.