00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 void compile_builtins();
00021
00022 LIST *compile_append( PARSE *parse, LOL *args, int *jmp );
00023 LIST *compile_break( PARSE *parse, LOL *args, int *jmp );
00024 LIST *compile_foreach( PARSE *parse, LOL *args, int *jmp );
00025 LIST *compile_if( PARSE *parse, LOL *args, int *jmp );
00026 LIST *compile_eval( PARSE *parse, LOL *args, int *jmp );
00027 LIST *compile_include( PARSE *parse, LOL *args, int *jmp );
00028 LIST *compile_list( PARSE *parse, LOL *args, int *jmp );
00029 LIST *compile_local( PARSE *parse, LOL *args, int *jmp );
00030 LIST *compile_null( PARSE *parse, LOL *args, int *jmp );
00031 LIST *compile_on( PARSE *parse, LOL *args, int *jmp );
00032 LIST *compile_rule( PARSE *parse, LOL *args, int *jmp );
00033 LIST *compile_rules( PARSE *parse, LOL *args, int *jmp );
00034 LIST *compile_set( PARSE *parse, LOL *args, int *jmp );
00035 LIST *compile_setcomp( PARSE *parse, LOL *args, int *jmp );
00036 LIST *compile_setexec( PARSE *parse, LOL *args, int *jmp );
00037 LIST *compile_settings( PARSE *parse, LOL *args, int *jmp );
00038 LIST *compile_switch( PARSE *parse, LOL *args, int *jmp );
00039 LIST *compile_while( PARSE *parse, LOL *args, int *jmp );
00040
00041 LIST *evaluate_rule( const char *rulename, LOL *args, LIST *result );
00042
00043
00044
00045 # define EXPR_NOT 0
00046 # define EXPR_AND 1
00047 # define EXPR_OR 2
00048
00049 # define EXPR_EXISTS 3
00050 # define EXPR_EQUALS 4
00051 # define EXPR_NOTEQ 5
00052 # define EXPR_LESS 6
00053 # define EXPR_LESSEQ 7
00054 # define EXPR_MORE 8
00055 # define EXPR_MOREEQ 9
00056 # define EXPR_IN 10
00057
00058
00059
00060 # define JMP_NONE 0
00061 # define JMP_BREAK 1
00062 # define JMP_CONTINUE 2
00063 # define JMP_RETURN 3