Go to the source code of this file.
Variables | |
static long | attr_missing |
static long | check_func_flag |
static long | deref_flag |
void append_resid | ( | ptr_psi_term | u, |
ptr_psi_term | v | ||
) |
Definition at line 434 of file lefun.c.
References push_ptr_value(), and resid_ptr.
void check_disj | ( | ptr_psi_term | t | ) |
Definition at line 845 of file lefun.c.
References disj, fail, NULL, push_goal(), traceline(), and TRUE.
void check_func | ( | ptr_psi_term | t | ) |
Definition at line 861 of file lefun.c.
References check_func_flag, check_out(), copy(), disjunction, eval, eval_args(), get_one_arg(), iff, push_goal(), push_psi_ptr_value(), RMASK, wl_definition::rule, stack_copy_psi_term(), stack_psi_term(), wl_psi_term::status, such_that, traceline(), TRUE, and wl_psi_term::type.
long check_out | ( | ptr_psi_term | t | ) |
Definition at line 999 of file lefun.c.
References check_func(), check_func_flag, check_type(), deref_ptr, eval_args(), eval_global_var(), FALSE, function_it, global, heap_pointer, RMASK, traceline(), TRUE, and type_it.
long check_type | ( | ptr_psi_term | t | ) |
Definition at line 922 of file lefun.c.
References eval_args(), FALSE, fetch_def(), int_ptr, push2_ptr_value(), RMASK, SMASK, and TRUE.
void deref2_eval | ( | ptr_psi_term | t | ) |
Definition at line 1224 of file lefun.c.
References check_func(), deref_ptr, eval_global_var(), function_it, and global.
void deref2_rec_eval | ( | ptr_psi_term | t | ) |
long deref_args_eval | ( | ptr_psi_term | t, |
long | set | ||
) |
Definition at line 1175 of file lefun.c.
References aim, deref_flag, deref_rec_args_exc(), FALSE, and goal_stack.
long deref_eval | ( | ptr_psi_term | t | ) |
Definition at line 1087 of file lefun.c.
References aim, check_func(), deref_flag, deref_ptr, eval_global_var(), FALSE, function_it, global, goal_stack, heap_pointer, int_ptr, push_ptr_value(), and TRUE.
void deref_rec_args | ( | ptr_node | n | ) |
Definition at line 1159 of file lefun.c.
References deref_ptr, and deref_rec_body().
void deref_rec_args_exc | ( | ptr_node | n, |
long | set | ||
) |
Definition at line 1203 of file lefun.c.
References deref_ptr, deref_rec_body(), and in_set().
void deref_rec_body | ( | ptr_psi_term | t | ) |
Definition at line 1135 of file lefun.c.
References check_func(), deref_flag, deref_ptr, deref_rec_args(), eval_global_var(), function_it, global, heap_pointer, int_ptr, push_ptr_value(), and TRUE.
long deref_rec_eval | ( | ptr_psi_term | t | ) |
Definition at line 1123 of file lefun.c.
References aim, deref_flag, deref_rec_body(), FALSE, and goal_stack.
void do_currying | ( | ) |
Definition at line 359 of file lefun.c.
References wl_goal::aaaa_1, wl_goal::bbbb_1, goal_stack, wl_goal::next, NULL, push_goal(), resid_aim, traceline(), and unify_noeval.
long do_residuation | ( | ) |
Definition at line 313 of file lefun.c.
References wl_goal::aaaa_1, deref_ptr, FALSE, wl_resid_list::next, wl_resid_list::othervar, print_resid_message(), resid_aim, resid_vars, residuateGoalOnVar(), trace, traceline(), tracing(), TRUE, and wl_resid_list::var.
long do_residuation_user | ( | ) |
Definition at line 306 of file lefun.c.
References do_residuation(), goal_stack, wl_goal::next, and resid_aim.
long eval_aim | ( | ) |
Definition at line 456 of file lefun.c.
References wl_goal::aaaa_1, wl_pair_list::aaaa_2, aim, wl_goal::bbbb_1, wl_pair_list::bbbb_2, c_rule, can_curry, wl_goal::cccc_1, choice_stack, clear_copy(), curried, deref_ptr, do_currying(), do_residuation(), eval, eval_copy(), eval_cut, FALSE, int_ptr, match, MAX_BUILT_INS, wl_pair_list::next, NULL, push2_ptr_value(), push_choice_point(), push_goal(), quote_copy(), resid_aim, resid_vars, save_resid(), SMASK, STACK, STACK_ALLOC, stack_pointer, wl_psi_term::status, traceline(), TRUE, and unify.
long eval_args | ( | ptr_node | n | ) |
Definition at line 826 of file lefun.c.
References check_out(), and TRUE.
void eval_global_var | ( | ptr_psi_term | t | ) |
Definition at line 1291 of file lefun.c.
References wl_stack::aaaa_3, wl_stack::bbbb_3, clear_copy(), deref_ptr, eval_copy(), global, wl_stack::next, NULL, psi_term_ptr, push_psi_ptr_value(), STACK, STACK_ALLOC, traceline(), wl_stack::type, and undo_stack.
long f_check_out | ( | ptr_psi_term | t | ) |
ptr_psi_term heap_psi_term | ( | long | stat | ) |
Definition at line 63 of file lefun.c.
References wl_psi_term::attr_list, wl_psi_term::coref, FALSE, wl_psi_term::flags, global_time_stamp, HEAP_ALLOC, NULL, QUOTED_TRUE, wl_psi_term::resid, wl_psi_term::status, top, wl_psi_term::type, and wl_psi_term::value_3.
long i_check_out | ( | ptr_psi_term | t | ) |
long i_eval_args | ( | ptr_node | n | ) |
long in_set | ( | char * | str, |
long | set | ||
) |
void init_global_vars | ( | ) |
Definition at line 1337 of file lefun.c.
References first_definition, wl_definition::global_value, heap_pointer, wl_definition::next, and NULL.
long match_aim | ( | ) |
Definition at line 712 of file lefun.c.
References wl_goal::aaaa_1, aim, wl_psi_term::attr_list, attr_missing, wl_goal::bbbb_1, can_curry, wl_goal::cccc_1, wl_psi_term::coref, curried, cut, deref_ptr, FALSE, FUNC_ARG, integer, match_attr(), matches(), NULL, overlap_type(), quoted_string, REAL, real, resid_aim, residuate_double(), restore_resid(), save_resid(), sys_bytedata, TRUE, wl_psi_term::type, and wl_psi_term::value_3.
void match_attr | ( | ptr_node * | u, |
ptr_node | v, | ||
ptr_resid_block | rb | ||
) |
void match_attr1 | ( | ptr_node * | u, |
ptr_node | v, | ||
ptr_resid_block | rb | ||
) |
Definition at line 552 of file lefun.c.
References attr_missing, featcmp(), wl_node::left, match, NULL, push_goal(), wl_node::right, and TRUE.
void match_attr2 | ( | ptr_node * | u, |
ptr_node | v, | ||
ptr_resid_block | rb | ||
) |
Definition at line 592 of file lefun.c.
References deref2_rec_eval(), featcmp(), wl_node::left, match_attr1(), NULL, and wl_node::right.
void match_attr3 | ( | ptr_node * | u, |
ptr_node | v, | ||
ptr_resid_block | rb | ||
) |
Definition at line 643 of file lefun.c.
References attr_missing, deref2_eval(), featcmp(), wl_node::left, NULL, wl_node::right, and TRUE.
ptr_psi_term real_stack_psi_term | ( | long | stat, |
REAL | thereal | ||
) |
Definition at line 38 of file lefun.c.
References wl_psi_term::attr_list, wl_psi_term::coref, FALSE, wl_psi_term::flags, global_time_stamp, heap_alloc(), integer, NULL, QUOTED_TRUE, REAL, real, wl_psi_term::resid, STACK_ALLOC, wl_psi_term::status, wl_psi_term::type, and wl_psi_term::value_3.
void release_resid | ( | ptr_psi_term | t | ) |
void release_resid_main | ( | ptr_psi_term | t, |
long | trailflag | ||
) |
Definition at line 384 of file lefun.c.
References wl_goal::aaaa_1, FALSE, wl_residuation::goal, goal_ptr, goal_stack, int_ptr, wl_residuation::next, wl_goal::next, NULL, wl_goal::pending, push_ptr_value(), resid_ptr, and traceline().
void release_resid_notrail | ( | ptr_psi_term | t | ) |
void residuate | ( | ptr_psi_term | t | ) |
Definition at line 113 of file lefun.c.
References wl_resid_list::next, NULL, wl_resid_list::othervar, resid_vars, STACK_ALLOC, and wl_resid_list::var.
void residuate2 | ( | ptr_psi_term | u, |
ptr_psi_term | v | ||
) |
void residuate3 | ( | ptr_psi_term | u, |
ptr_psi_term | v, | ||
ptr_psi_term | w | ||
) |
void residuate_double | ( | ptr_psi_term | t, |
ptr_psi_term | u | ||
) |
Definition at line 95 of file lefun.c.
References wl_resid_list::next, wl_resid_list::othervar, resid_vars, STACK_ALLOC, and wl_resid_list::var.
long residuateGoalOnVar | ( | ptr_goal | g, |
ptr_psi_term | var, | ||
ptr_psi_term | othervar | ||
) |
Definition at line 172 of file lefun.c.
References code_ptr, def_ptr, Errorline(), FALSE, glb_code(), glb_value(), heap_pointer, int_ptr, NULL, push_ptr_value(), wl_psi_term::resid, resid_ptr, STACK_ALLOC, TRUE, wl_psi_term::type, and wl_psi_term::value_3.
void restore_resid | ( | ptr_resid_block | rb, |
ptr_psi_term * | match_date | ||
) |
void save_resid | ( | ptr_resid_block | rb, |
ptr_psi_term | match_date | ||
) |
ptr_psi_term stack_psi_term | ( | long | stat | ) |
Definition at line 15 of file lefun.c.
References wl_psi_term::attr_list, wl_psi_term::coref, FALSE, wl_psi_term::flags, global_time_stamp, NULL, QUOTED_TRUE, wl_psi_term::resid, STACK_ALLOC, wl_psi_term::status, top, wl_psi_term::type, and wl_psi_term::value_3.