C:/Users/Dennis/src/lang/Life_start/Life/life-1.02/source/trees.c File Reference

#include "extern.h"
#include "print.h"
#include "memory.h"
#include "login.h"

Go to the source code of this file.

Functions

long intcmp (long a, long b)
long is_int (char **s, long *len, long *sgn)
long featcmp (char *str1, char *str2)
char * heap_ncopy_string (char *s, int n)
char * heap_copy_string (char *s)
char * stack_copy_string (char *s)
ptr_node general_insert (long(*comp)(), char *keystr, ptr_node *tree, GENERIC info, long heapflag, long copystr, long bkflag)
void heap_insert_copystr (char *keystr, ptr_node *tree, GENERIC info)
void stack_insert_copystr (char *keystr, ptr_node *tree, GENERIC info)
ptr_node heap_insert (long(*comp)(), char *keystr, ptr_node *tree, GENERIC info)
ptr_node stack_insert (long(*comp)(), char *keystr, ptr_node *tree, GENERIC info)
ptr_node bk_stack_insert (long(*comp)(), char *keystr, ptr_node *tree, GENERIC info)
ptr_node bk2_stack_insert (long(*comp)(), char *keystr, ptr_node *tree, GENERIC info)
ptr_node find (long(*comp)(), char *keystr, ptr_node tree)
ptr_node find_data (GENERIC p, ptr_node t)
void delete_attr (char *s, ptr_node *n)

Variables

static char vcid [] = "$Id: trees.c,v 1.3 1995/07/27 21:22:21 duchier Exp $"


Function Documentation

ptr_node bk2_stack_insert ( long (*)()  comp,
char *  keystr,
ptr_node tree,
GENERIC  info 
)

Definition at line 304 of file trees.c.

References FALSE, general_insert(), and STACK.

Referenced by read_name().

ptr_node bk_stack_insert ( long (*)()  comp,
char *  keystr,
ptr_node tree,
GENERIC  info 
)

Definition at line 287 of file trees.c.

References FALSE, general_insert(), and STACK.

Referenced by bk_stack_add_psi_attr(), and c_project().

void delete_attr ( char *  s,
ptr_node n 
)

Definition at line 435 of file trees.c.

References wl_node::data, featcmp(), heap_insert(), wl_node::key, wl_node::left, and wl_node::right.

Referenced by c_apply().

long featcmp ( char *  str1,
char *  str2 
)

Definition at line 73 of file trees.c.

References is_int().

Referenced by apply1_internal(), bk_stack_add_psi_attr(), c_append_file(), c_apply(), c_close(), c_concatenate(), c_cond(), c_deref_length(), c_exist_feature(), c_exists(), c_initrandom(), c_parse(), c_project(), c_random(), c_read(), c_replace(), c_string_length(), c_sub_string(), call_primitive(), check_legal_cons(), check_opargs(), declare_operator(), delete_attr(), feature_insert(), get_arg(), get_attr(), get_one_arg(), get_one_arg_addr(), get_two_args(), global_unify_attr(), heap_add_int_attr(), heap_add_psi_attr(), heap_add_str_attr(), heap_insert_copystr(), heap_mod_int_attr(), heap_mod_str_attr(), in_set(), lazy_project_internal(), make_life_form(), match_attr1(), match_attr2(), match_attr3(), merge2(), my_wait_on_feature_internal(), only_arg1(), parse_list(), read_psi_term(), regexp_execute_internal(), replace_attr(), save_state(), set_parse_queryflag(), stack_add_int_attr(), stack_add_psi_attr(), stack_add_str_attr(), stack_cons(), stack_insert_copystr(), stack_pair(), unify_pterm_result(), wait_on_feature_internal(), and WFGetFeature().

ptr_node find ( long (*)()  comp,
char *  keystr,
ptr_node  tree 
)

Definition at line 319 of file trees.c.

References FALSE, wl_node::key, wl_node::left, NULL, wl_node::right, and TRUE.

Referenced by c_append_file(), c_apply(), c_close(), c_concatenate(), c_cond(), c_deref_length(), c_exist_feature(), c_exists(), c_initrandom(), c_parse(), c_project(), c_random(), c_read(), c_replace(), c_string_length(), c_sub_string(), call_primitive(), check_legal_cons(), check_pointer(), declare_operator(), feature_insert(), find_module(), get_arg(), get_attr(), get_one_arg(), get_one_arg_addr(), get_two_args(), heap_mod_int_attr(), heap_mod_str_attr(), insert_variables(), lazy_project_internal(), my_wait_on_feature_internal(), pretty_list(), pretty_tag_or_psi_term(), pretty_variables(), read_name(), read_psi_term(), regexp_execute_internal(), save_state(), set_parse_queryflag(), unique_name(), wait_on_feature_internal(), WFGetFeature(), and WFGetVar().

ptr_node find_data ( GENERIC  p,
ptr_node  t 
)

Definition at line 368 of file trees.c.

References wl_node::data, wl_node::left, NULL, and wl_node::right.

ptr_node general_insert ( long (*)()  comp,
char *  keystr,
ptr_node tree,
GENERIC  info,
long  heapflag,
long  copystr,
long  bkflag 
)

Definition at line 174 of file trees.c.

References Errorline(), FALSE, HEAP, HEAP_ALLOC, heap_copy_string(), int_ptr, wl_node::key, NULL, push_ptr_value(), push_ptr_value_global(), STACK_ALLOC, and TRUE.

Referenced by bk2_stack_insert(), bk_stack_insert(), heap_insert(), heap_insert_copystr(), stack_insert(), and stack_insert_copystr().

char* heap_copy_string ( char *  s  ) 

Definition at line 132 of file trees.c.

References heap_ncopy_string().

Referenced by apply1_internal(), bk_stack_add_psi_attr(), c_args(), c_combined_name(), c_current_module(), c_exist_feature(), c_int2string(), c_module_name(), c_project(), c_psi2string(), create_module(), general_insert(), get_numeric_feature(), heap_add_int_attr(), heap_add_psi_attr(), heap_add_str_attr(), heap_mod_str_attr(), heap_nice_name(), import_symbol_internal(), main(), read_name(), read_psi_term(), read_string(), stack_add_int_attr(), stack_add_psi_attr(), stack_add_str_attr(), stack_string(), update_symbol(), and WFInit().

ptr_node heap_insert ( long (*)()  comp,
char *  keystr,
ptr_node tree,
GENERIC  info 
)

Definition at line 256 of file trees.c.

References FALSE, general_insert(), and HEAP.

Referenced by c_project(), check_pointer(), create_module(), delete_attr(), forbid_variables(), heap_add_int_attr(), heap_add_psi_attr(), heap_add_str_attr(), and pretty_tag_or_psi_term().

void heap_insert_copystr ( char *  keystr,
ptr_node tree,
GENERIC  info 
)

Definition at line 226 of file trees.c.

References featcmp(), general_insert(), HEAP, and TRUE.

char* heap_ncopy_string ( char *  s,
int  n 
)

Definition at line 113 of file trees.c.

References heap_alloc(), one, and two.

Referenced by heap_copy_string(), and stack_bytes().

long intcmp ( long  a,
long  b 
)

Definition at line 20 of file trees.c.

Referenced by check_pointer(), forbid_variables(), insert_variables(), pretty_list(), pretty_tag_or_psi_term(), and pretty_variables().

long is_int ( char **  s,
long *  len,
long *  sgn 
)

Definition at line 31 of file trees.c.

References FALSE, and TRUE.

Referenced by featcmp().

char* stack_copy_string ( char *  s  ) 

Definition at line 142 of file trees.c.

References one, stack_alloc(), and two.

Referenced by stack_add_str_attr().

ptr_node stack_insert ( long (*)()  comp,
char *  keystr,
ptr_node tree,
GENERIC  info 
)

Definition at line 270 of file trees.c.

References FALSE, general_insert(), and STACK.

Referenced by apply1_internal(), make_life_form(), parse_list(), read_psi_term(), replace_attr(), stack_add_int_attr(), stack_add_psi_attr(), stack_add_str_attr(), stack_cons(), stack_pair(), and unify_pterm_result().

void stack_insert_copystr ( char *  keystr,
ptr_node tree,
GENERIC  info 
)

Definition at line 241 of file trees.c.

References featcmp(), general_insert(), STACK, and TRUE.

Referenced by feature_insert(), and regexp_execute_internal().


Variable Documentation

char vcid[] = "$Id: trees.c,v 1.3 1995/07/27 21:22:21 duchier Exp $" [static]

Definition at line 7 of file trees.c.


Generated on Sat Jan 26 08:48:09 2008 for WildLife by  doxygen 1.5.4