74 switch (op_stack[i]) {
110 perr(
"*** Parser error ");
112 perr(
": stack full.\n");
366 perr(
": bad symbol for end of list '");
377 perr(
": bad symbol in list '");
425 long count=0,f=
TRUE,f2,v;
485 (
void)snprintf(s,10,
"%ld",v);
497 (void)snprintf(s,10,
"%ld",count);
594 if (
equ_tokch((*tok),
':') && arg1 && arg2) {
683 printf(
"*** Parser: ooops, NOP expected.\n");
695 printf(
"*** Parser: ugh, NOP expected.\n");
702 printf(
"*** Parser: yuck, weirdo operator.\n");
731 long limit,pr_op,pr_1,pr_2,start=0;
964 while((c=
read_char()) && c!=EOF && c!=
'.' && c!=
'?' && c!=
EOLN) {}
973 else if (c<0 || c>32) {
977 }
while(c && c!=EOF);
ptr_definition disjunction
symbol in bi module
ptr_psi_term heap_copy_psi_term(psi_term t)
heap_copy_psi_term
ptr_definition alist
symbol in bi module
void psi_term_error()
psi_term_error
#define yfx
was enum (operator) but va_arg could not handle - now typedef
#define FEATCMP
indicates to use featcmp for comparison (in trees.c)
ptr_definition apply
symbol in bi module
#define PARSER_STACK_SIZE
Maximum depth of the parser stack.
void put_back_char(long c)
put_back_char
void read_token(ptr_psi_term tok)
read_token
ptr_definition integer
symbol in bi module
ptr_definition functor
symbol in bi module
ptr_definition final_question
symbol in syntax module
#define xfx
was enum (operator) but va_arg could not handle - now typedef
ptr_module current_module
The current module for the tokenizer.
void show(long limit)
show
void push_psi_ptr_value(ptr_psi_term q, GENERIC *p)
push_psi_ptr_value
#define fx
was enum (operator) but va_arg could not handle - now typedef
#define NOP
returned by precedence if token is not an operator
#define FACT
Fact Kind of user input.
void push(psi_term tok, long prec, long op)
push
void mark_nonstrict(ptr_psi_term t)
mark_nonstrict
void display_psi_stdout(ptr_psi_term t)
display_psi_stdout
long precedence(psi_term tok, long typ)
precedence
ptr_definition add_module3
symbol in bi module for feature_values
#define xfy
was enum (operator) but va_arg could not handle - now typedef
ptr_definition add_module2
symbol in bi module for str2psi
#define REAL
Which C type to use to represent reals and integers in Wild_Life.
psi_term parse_list(ptr_definition typ, char e, char s)
parse_list
long parse_ok
indicates whether there was a syntax error
#define nop
was enum (operator) but va_arg could not handle - now typedef
void display_psi_stderr(ptr_psi_term t)
display_psi_stderr
#define QUERY
Query Kind of user input.
#define ERROR
Error Kind of user input.
void put_back_token(psi_term t)
put_back_token
ptr_definition real
symbol in bi module
unsigned long * GENERIC
unsigned long *GENERIC
psi_term read_life_form(char ch1, char ch2)
read_life_form
void feature_insert(char *keystr, ptr_node *tree, ptr_psi_term psi)
feature_insert
ptr_definition variable
symbol in bi module
ptr_node stack_insert(long comp, char *keystr, ptr_node *tree, GENERIC info)
stack_insert
char * heap_copy_string(char *s)
heap_copy_string
ptr_definition final_dot
symbol in syntax module
void Syntaxerrorline(char *format,...)
Syntaxerrorline.
#define TRUE
Standard boolean.
long pop(ptr_psi_term tok, long *op)
pop
void crunch(long prec, long limit)
crunch
ptr_definition minus_symbol
symbol in syntax module
psi_term parse(long *q)
parse
ptr_definition eof
symbol in syntax module
int bad_psi_term(ptr_psi_term t)
bad_psi_term
#define FALSE
Standard boolean.
ptr_definition add_module1
symbol in bi module for features
ptr_psi_term stack_psi_term(long stat)
stack_psi_term
ptr_definition nil
symbol in bi module
ptr_psi_term stack_copy_psi_term(psi_term t)
stack_copy_psi_term
ptr_definition disj_nil
symbol in syntax module
#define equal_types(A, B)
#define xf
was enum (operator) but va_arg could not handle - now typedef
ptr_node find(long comp, char *keystr, ptr_node tree)
find
#define yf
was enum (operator) but va_arg could not handle - now typedef
ptr_psi_term saved_psi_term
ptr_psi_term error_psi_term
symbol in bi module
#define MAX_PRECEDENCE
Maximum operator precedence.
ptr_definition top
symbol in syntax module
psi_term list_nil(ptr_definition type)
list_nil
psi_term make_life_form(ptr_psi_term tok, ptr_psi_term arg1, ptr_psi_term arg2)
make_life_form
long read_char()
read_char
unsigned long global_time_stamp
long parser_stack_index
index to parser stack
psi_term read_psi_term()
read_psi_term
ptr_definition quoted_string
symbol in bi module
ptr_operator_data op_data
GENERIC heap_alloc(long s)
heap_alloc
void stack_insert_copystr(char *keystr, ptr_node *tree, GENERIC info)
stack_insert_copystr
long int_stack[PARSER_STACK_SIZE]
psi_term psi_term_stack[PARSER_STACK_SIZE]
#define fy
was enum (operator) but va_arg could not handle - now typedef