Main Page | Alphabetical List | Data Structures | File List | Data Fields | Globals

production.c File Reference

Go to the source code of this file.

Functions

void init_production_utilities (void)
char first_letter_from_symbol (Symbol *sym)
char first_letter_from_test (test t)
listcopy_symbol_list_adding_references (list *sym_list)
void deallocate_symbol_list_removing_references (list *sym_list)
listcopy_test_list (cons *c)
test copy_test (test t)
test copy_test_removing_goal_impasse_tests (test t, bool *removed_goal, bool *removed_impasse)
void deallocate_test (test t)
void add_new_test_to_test (test *t, test add_me)
void add_new_test_to_test_if_not_already_there (test *t, test add_me)
bool tests_are_equal (test t1, test t2)
unsigned long hash_test (test t)
unsigned long canonical_test (test t)
bool canonical_cond_greater (condition *c1, condition *c2)
bool test_includes_equality_test_for_symbol (test t, Symbol *sym)
bool test_includes_goal_or_impasse_id_test (test t, bool look_for_goal, bool look_for_impasse)
test copy_of_equality_test_found_in_test (test t)
void deallocate_condition_list (condition *cond_list)
conditioncopy_condition (condition *cond)
void copy_condition_list (condition *top_cond, condition **dest_top, condition **dest_bottom)
bool conditions_are_equal (condition *c1, condition *c2)
unsigned long hash_condition (condition *cond)
void deallocate_rhs_value (rhs_value rv)
rhs_value copy_rhs_value (rhs_value rv)
void deallocate_action_list (action *actions)
char first_letter_from_rhs_value (rhs_value rv)
void deallocate_list_of_nots (not *nots)
tc_number get_new_tc_number (void)
void unmark_identifiers_and_free_list (list *id_list)
void unmark_variables_and_free_list (list *var_list)
void add_bound_variables_in_test (test t, tc_number tc, list **var_list)
void add_bound_variables_in_condition (condition *c, tc_number tc, list **var_list)
void add_bound_variables_in_condition_list (condition *cond_list, tc_number tc, list **var_list)
void add_all_variables_in_test (test t, tc_number tc, list **var_list)
void add_all_variables_in_condition_list (condition *cond_list, tc_number tc, list **var_list)
void add_all_variables_in_condition (condition *c, tc_number tc, list **var_list)
void add_all_variables_in_rhs_value (rhs_value rv, tc_number tc, list **var_list)
void add_all_variables_in_action (action *a, tc_number tc, list **var_list)
void add_all_variables_in_action_list (action *actions, tc_number tc, list **var_list)
void add_symbol_to_tc (Symbol *sym, tc_number tc, list **id_list, list **var_list)
void add_test_to_tc (test t, tc_number tc, list **id_list, list **var_list)
void add_cond_to_tc (condition *c, tc_number tc, list **id_list, list **var_list)
void add_action_to_tc (action *a, tc_number tc, list **id_list, list **var_list)
bool symbol_is_in_tc (Symbol *sym, tc_number tc)
bool test_is_in_tc (test t, tc_number tc)
bool cond_is_in_tc (condition *cond, tc_number tc)
bool action_is_in_tc (action *a, tc_number tc)
void reset_variable_generator (condition *conds_with_vars_to_avoid, action *actions_with_vars_to_avoid)
Symbolgenerate_new_variable (char *prefix)
productionmake_production (byte type, Symbol *name, condition **lhs_top, condition **lhs_bottom, action **rhs_top, bool reorder_nccs)
void deallocate_production (production *prod)
void excise_production (production *prod, bool print_sharp_sign)

Variables

tc_number current_tc_number = 0
char * name_of_production_being_reordered


Function Documentation

bool action_is_in_tc action a,
tc_number  tc
 

Definition at line 1437 of file production.c.

References action, action_struct::id, symbol_is_in_tc(), tc_number, and action_struct::type.

Referenced by add_tc_through_lhs_and_rhs(), and calculate_compile_time_o_support().

void add_action_to_tc action a,
tc_number  tc,
list **  id_list,
list **  var_list
 

Definition at line 1354 of file production.c.

References action, add_symbol_to_tc(), action_struct::id, list, action_struct::preference_type, action_struct::referent, tc_number, action_struct::type, and action_struct::value.

Referenced by add_tc_through_lhs_and_rhs().

void add_all_variables_in_action action a,
tc_number  tc,
list **  var_list
 

Definition at line 1261 of file production.c.

References action, add_all_variables_in_rhs_value(), action_struct::attr, action_struct::id, list, action_struct::preference_type, action_struct::referent, Symbol, tc_number, action_struct::type, and action_struct::value.

Referenced by add_all_variables_in_action_list(), and reorder_action_list().

void add_all_variables_in_action_list action actions,
tc_number  tc,
list **  var_list
 

Definition at line 1280 of file production.c.

References action, add_all_variables_in_action(), list, action_struct::next, and tc_number.

Referenced by reset_variable_generator().

void add_all_variables_in_condition condition c,
tc_number  tc,
list **  var_list
 

Definition at line 1210 of file production.c.

References add_all_variables_in_condition_list(), add_all_variables_in_test(), three_field_tests_struct::attr_test, condition, condition_struct::data, three_field_tests_struct::id_test, list, condition_struct::condition_main_data_union::ncc, tc_number, condition_struct::condition_main_data_union::tests, ncc_info_struct::top, condition_struct::type, and three_field_tests_struct::value_test.

Referenced by add_all_variables_in_condition_list().

void add_all_variables_in_condition_list condition cond_list,
tc_number  tc,
list **  var_list
 

Definition at line 1221 of file production.c.

References add_all_variables_in_condition(), condition, list, condition_struct::next, and tc_number.

Referenced by add_all_variables_in_condition(), and reset_variable_generator().

void add_all_variables_in_rhs_value rhs_value  rv,
tc_number  tc,
list **  var_list
 

Definition at line 1242 of file production.c.

References cons, cons_struct::first, list, cons_struct::rest, rhs_value, Symbol, and tc_number.

Referenced by add_all_variables_in_action().

void add_all_variables_in_test test  t,
tc_number  tc,
list **  var_list
 

Definition at line 1170 of file production.c.

References complex_test, complex_test_struct::test_info_union::conjunct_list, cons, complex_test_struct::data, cons_struct::first, list, complex_test_struct::test_info_union::referent, cons_struct::rest, Symbol, tc_number, test, and complex_test_struct::type.

Referenced by add_all_variables_in_condition().

void add_bound_variables_in_condition condition c,
tc_number  tc,
list **  var_list
 

Definition at line 1144 of file production.c.

References add_bound_variables_in_test(), three_field_tests_struct::attr_test, condition, condition_struct::data, three_field_tests_struct::id_test, list, tc_number, condition_struct::condition_main_data_union::tests, condition_struct::type, and three_field_tests_struct::value_test.

Referenced by add_bound_variables_in_condition_list(), fill_in_vars_requiring_bindings(), find_lowest_cost_lookahead(), and reorder_simplified_conditions().

void add_bound_variables_in_condition_list condition cond_list,
tc_number  tc,
list **  var_list
 

Definition at line 1153 of file production.c.

References add_bound_variables_in_condition(), condition, list, condition_struct::next, and tc_number.

Referenced by make_production().

void add_bound_variables_in_test test  t,
tc_number  tc,
list **  var_list
 

Definition at line 1121 of file production.c.

References complex_test, complex_test_struct::test_info_union::conjunct_list, cons, complex_test_struct::data, cons_struct::first, list, cons_struct::rest, Symbol, tc_number, test, and complex_test_struct::type.

Referenced by add_bound_variables_in_condition(), calculate_compile_time_o_support(), collect_root_variables(), find_known_goals(), find_thing_off_goal(), reorder_lhs(), and restore_and_deallocate_saved_tests().

void add_cond_to_tc condition c,
tc_number  tc,
list **  id_list,
list **  var_list
 

Definition at line 1346 of file production.c.

References add_test_to_tc(), condition, condition_struct::data, three_field_tests_struct::id_test, list, tc_number, condition_struct::condition_main_data_union::tests, condition_struct::type, and three_field_tests_struct::value_test.

Referenced by add_tc_through_lhs_and_rhs(), build_chunk_conds_for_grounds_and_add_negateds(), cond_is_in_tc(), and trace_grounded_potentials().

void add_new_test_to_test test t,
test  add_me
 

Definition at line 344 of file production.c.

References complex_test, complex_test_struct::test_info_union::conjunct_list, cons, complex_test_struct::data, cons_struct::first, cons_struct::rest, test, and complex_test_struct::type.

Referenced by add_gensymmed_equality_test(), add_goal_or_impasse_tests(), add_hash_info_to_id_test(), add_new_test_to_test_if_not_already_there(), add_rete_test_list_to_tests(), add_varnames_to_test(), copy_test_removing_goal_impasse_tests(), parse_attr_value_tests(), parse_head_of_conds_for_one_id(), parse_test(), parse_value_test_star(), and variablize_nots_and_insert_into_conditions().

void add_new_test_to_test_if_not_already_there test t,
test  add_me
 

Definition at line 389 of file production.c.

References add_new_test_to_test(), complex_test, complex_test_struct::test_info_union::conjunct_list, cons, complex_test_struct::data, deallocate_test(), cons_struct::first, cons_struct::rest, test, tests_are_equal(), and complex_test_struct::type.

Referenced by restore_saved_tests_to_test().

void add_symbol_to_tc Symbol sym,
tc_number  tc,
list **  id_list,
list **  var_list
 

Definition at line 1317 of file production.c.

References list, Symbol, and tc_number.

Referenced by add_action_to_tc(), add_test_to_tc(), and calculate_compile_time_o_support().

void add_test_to_tc test  t,
tc_number  tc,
list **  id_list,
list **  var_list
 

Definition at line 1326 of file production.c.

References add_symbol_to_tc(), complex_test, complex_test_struct::test_info_union::conjunct_list, cons, complex_test_struct::data, cons_struct::first, list, cons_struct::rest, tc_number, test, and complex_test_struct::type.

Referenced by add_cond_to_tc().

bool canonical_cond_greater condition c1,
condition c2
 

Definition at line 547 of file production.c.

References three_field_tests_struct::attr_test, condition, condition_struct::data, condition_struct::condition_main_data_union::tests, and three_field_tests_struct::value_test.

Referenced by reorder_simplified_conditions().

unsigned long canonical_test test  t  ) 
 

Definition at line 522 of file production.c.

References Symbol, and test.

bool cond_is_in_tc condition cond,
tc_number  tc
 

Definition at line 1396 of file production.c.

References add_cond_to_tc(), condition_struct::already_in_tc, condition, condition_struct::data, three_field_tests_struct::id_test, list, condition_struct::condition_main_data_union::ncc, condition_struct::next, tc_number, test_is_in_tc(), condition_struct::condition_main_data_union::tests, ncc_info_struct::top, condition_struct::type, unmark_identifiers_and_free_list(), and unmark_variables_and_free_list().

Referenced by add_tc_through_lhs_and_rhs(), build_chunk_conds_for_grounds_and_add_negateds(), and trace_grounded_potentials().

bool conditions_are_equal condition c1,
condition c2
 

Definition at line 820 of file production.c.

References three_field_tests_struct::attr_test, condition, condition_struct::data, three_field_tests_struct::id_test, condition_struct::condition_main_data_union::ncc, condition_struct::next, condition_struct::test_for_acceptable_preference, condition_struct::condition_main_data_union::tests, tests_are_equal(), ncc_info_struct::top, condition_struct::type, and three_field_tests_struct::value_test.

Referenced by add_to_chunk_cond_set(), and explain_find_cond().

condition* copy_condition condition cond  ) 
 

Definition at line 763 of file production.c.

References three_field_tests_struct::attr_test, condition_struct::bt, condition, copy_condition_list(), copy_test(), condition_struct::data, three_field_tests_struct::id_test, condition_struct::condition_main_data_union::ncc, condition_struct::test_for_acceptable_preference, condition_struct::condition_main_data_union::tests, ncc_info_struct::top, condition_struct::type, and three_field_tests_struct::value_test.

Referenced by build_chunk_conds_for_grounds_and_add_negateds(), copy_condition_list(), copy_conds_from_list(), and explain_add_temp_to_backtrace_list().

void copy_condition_list condition top_cond,
condition **  dest_top,
condition **  dest_bottom
 

Definition at line 794 of file production.c.

References condition, copy_condition(), condition_struct::next, and condition_struct::prev.

Referenced by chunk_instantiation(), copy_cond_list(), and copy_condition().

test copy_of_equality_test_found_in_test test  t  ) 
 

Definition at line 705 of file production.c.

References abort_with_fatal_error(), complex_test, complex_test_struct::test_info_union::conjunct_list, cons, copy_test(), complex_test_struct::data, cons_struct::first, cons_struct::rest, test, and complex_test_struct::type.

Referenced by fill_in_attr_tests(), fill_in_id_tests(), parse_conds_for_one_id(), parse_head_of_conds_for_one_id(), and print().

rhs_value copy_rhs_value rhs_value  rv  ) 
 

Definition at line 929 of file production.c.

References cons, cons_struct::first, list, cons_struct::rest, and rhs_value.

Referenced by parse_preferences(), and parse_preferences_soar8_non_operator().

list* copy_symbol_list_adding_references list sym_list  ) 
 

Definition at line 147 of file production.c.

References cons, cons_struct::first, list, cons_struct::rest, and Symbol.

Referenced by add_rete_test_list_to_tests(), add_rete_tests_for_test(), and copy_test().

test copy_test test  t  ) 
 

Definition at line 209 of file production.c.

References complex_test, complex_test_struct::test_info_union::conjunct_list, copy_symbol_list_adding_references(), copy_test_list(), complex_test_struct::data, complex_test_struct::test_info_union::disjunction_list, complex_test_struct::test_info_union::referent, Symbol, test, and complex_test_struct::type.

Referenced by copy_condition(), copy_of_equality_test_found_in_test(), copy_test_list(), copy_test_removing_goal_impasse_tests(), fill_in_attr_tests(), fill_in_id_tests(), parse_attr_value_tests(), and tests_are_equal_with_bindings().

list* copy_test_list cons c  ) 
 

Definition at line 193 of file production.c.

References cons, copy_test(), cons_struct::first, list, and cons_struct::rest.

Referenced by copy_test().

test copy_test_removing_goal_impasse_tests test  t,
bool removed_goal,
bool removed_impasse
 

Definition at line 251 of file production.c.

References add_new_test_to_test(), complex_test, complex_test_struct::test_info_union::conjunct_list, cons, copy_test(), complex_test_struct::data, destructively_reverse_list(), cons_struct::first, cons_struct::rest, test, and complex_test_struct::type.

Referenced by print(), remove_isa_state_tests_for_non_roots(), and tests_are_equal_with_bindings().

void deallocate_action_list action actions  ) 
 

Definition at line 961 of file production.c.

References action, action_struct::attr, deallocate_rhs_value(), action_struct::id, action_struct::next, action_struct::preference_type, action_struct::referent, action_struct::type, and action_struct::value.

Referenced by chunk_instantiation(), deallocate_production(), free_explain_chunk(), parse_attr_value_make(), parse_preferences(), parse_preferences_soar8_non_operator(), parse_production(), parse_rhs(), parse_rhs_action(), print(), and read_rhs_pattern_and_get_matching_productions().

void deallocate_condition_list condition cond_list  ) 
 

Definition at line 740 of file production.c.

References three_field_tests_struct::attr_test, condition, condition_struct::data, three_field_tests_struct::id_test, condition_struct::condition_main_data_union::ncc, condition_struct::next, condition_struct::condition_main_data_union::tests, ncc_info_struct::top, condition_struct::type, and three_field_tests_struct::value_test.

Referenced by chunk_instantiation(), deallocate_inst_members_to_be_rewritten(), deallocate_instantiation(), free_backtrace_list(), free_explain_chunk(), parse_attr_value_tests(), parse_cond(), parse_cond_plus(), parse_production(), parse_tail_of_conds_for_one_id(), parse_value_test_star(), print(), print_partial_match_information(), read_pattern_and_get_matching_productions(), read_rhs_pattern_and_get_matching_productions(), and second_stage_chunk_instantiation().

void deallocate_list_of_nots not nots  ) 
 

Definition at line 1004 of file production.c.

References not_struct::next, not, not_struct::s1, and not_struct::s2.

Referenced by deallocate_inst_members_to_be_rewritten(), and deallocate_instantiation().

void deallocate_production production prod  ) 
 

Definition at line 1606 of file production.c.

References abort_with_fatal_error(), production_struct::action_list, deallocate_action_list(), deallocate_symbol_list_removing_references(), production_struct::documentation, production_struct::filename, free_memory_block_for_string(), production_struct::instantiations, production_struct::name, print_with_symbols(), production, and production_struct::rhs_unbound_variables.

void deallocate_rhs_value rhs_value  rv  ) 
 

Definition at line 906 of file production.c.

References cons, cons_struct::first, free_list(), list, cons_struct::rest, and rhs_value.

Referenced by deallocate_action_list(), parse_attr_value_make(), and parse_function_call_after_lparen().

void deallocate_symbol_list_removing_references list sym_list  ) 
 

Definition at line 174 of file production.c.

References cons, cons_struct::first, list, cons_struct::rest, and Symbol.

Referenced by add_production_to_rete(), deallocate_production(), deallocate_rete_test_list(), deallocate_test(), deallocate_trace_format_list(), deallocate_varnames(), and parse_attribute_path_in_brackets().

void deallocate_test test  t  ) 
 

Definition at line 293 of file production.c.

References complex_test, complex_test_struct::test_info_union::conjunct_list, cons, complex_test_struct::data, deallocate_symbol_list_removing_references(), complex_test_struct::test_info_union::disjunction_list, cons_struct::first, complex_test_struct::test_info_union::referent, cons_struct::rest, test, and complex_test_struct::type.

Referenced by add_new_test_to_test_if_not_already_there(), fill_in_attr_tests(), fill_in_id_tests(), parse_attr_value_tests(), parse_conds_for_one_id(), parse_disjunction_test(), parse_head_of_conds_for_one_id(), parse_test(), print(), and remove_isa_state_tests_for_non_roots().

void excise_production production prod,
bool  print_sharp_sign
 

Definition at line 1629 of file production.c.

References excise_production_from_rete(), production_struct::name, production_struct::p_node, print(), print_with_symbols(), production, sym_constant_struct::production, production_struct::reference_count, remove_pwatch(), symbol_union::sc, production_struct::trace_firings, and production_struct::type.

Referenced by chunk_instantiation(), parse_production(), retract_instantiation(), soar_cExciseAllProductionsOfType(), and soar_cExciseProductionByName().

char first_letter_from_rhs_value rhs_value  rv  ) 
 

Definition at line 987 of file production.c.

References first_letter_from_symbol(), and rhs_value.

Referenced by copy_action_list_and_substitute_varnames(), and parse_attr_value_make().

char first_letter_from_symbol Symbol sym  ) 
 

Definition at line 94 of file production.c.

References symbol_union::id, variable_struct::name, sym_constant_struct::name, identifier_struct::name_letter, symbol_union::sc, Symbol, and symbol_union::var.

Referenced by execute_action(), first_letter_from_rhs_value(), and first_letter_from_test().

char first_letter_from_test test  t  ) 
 

Definition at line 113 of file production.c.

References complex_test, complex_test_struct::test_info_union::conjunct_list, cons, complex_test_struct::data, cons_struct::first, first_letter_from_symbol(), cons_struct::rest, test, and complex_test_struct::type.

Referenced by add_rete_test_list_to_tests(), parse_attr_value_tests(), and rete_node_to_conditions().

Symbol* generate_new_variable char *  prefix  ) 
 

Definition at line 1489 of file production.c.

References make_variable(), Symbol, and tolower().

Referenced by add_gensymmed_equality_test(), copy_rhs_value_and_substitute_varnames(), simplify_test(), substitute_for_placeholders_in_symbol(), and variablize_symbol().

tc_number get_new_tc_number void   ) 
 

Definition at line 1041 of file production.c.

References current_tc_number, reset_id_and_variable_tc_numbers(), and tc_number.

Referenced by add_goal_or_impasse_tests(), add_production_to_rete(), backtrace_through_instantiation(), begin_os_tc(), calculate_compile_time_o_support(), calculate_output_link_tc_info(), chunk_instantiation(), do_demotion(), do_print_for_identifier(), do_print_for_wme(), dougs_calculate_support_for_instantiation_preferences(), find_compile_time_match_goal(), find_known_goals(), find_thing_off_goal(), get_results_for_instantiation(), make_production(), print_object_trace(), print_object_trace_using_provided_format_string(), print_stack_trace(), reorder_lhs(), reset_variable_generator(), second_stage_chunk_instantiation(), trace_grounded_potentials(), and update_for_top_state_wme_addition().

unsigned long hash_condition condition cond  ) 
 

Definition at line 852 of file production.c.

References abort_with_fatal_error(), three_field_tests_struct::attr_test, condition, condition_struct::data, hash_test(), three_field_tests_struct::id_test, condition_struct::condition_main_data_union::ncc, condition_struct::next, condition_struct::test_for_acceptable_preference, condition_struct::condition_main_data_union::tests, ncc_info_struct::top, condition_struct::type, and three_field_tests_struct::value_test.

Referenced by make_chunk_cond_for_condition().

unsigned long hash_test test  t  ) 
 

Definition at line 465 of file production.c.

References abort_with_fatal_error(), complex_test, complex_test_struct::test_info_union::conjunct_list, cons, complex_test_struct::data, complex_test_struct::test_info_union::disjunction_list, cons_struct::first, complex_test_struct::test_info_union::referent, cons_struct::rest, Symbol, test, and complex_test_struct::type.

Referenced by hash_condition().

void init_production_utilities void   ) 
 

Definition at line 60 of file production.c.

References action, complex_test, condition, init_memory_pool(), init_reorderer(), not, and production.

Referenced by init_soar_agent().

production* make_production byte  type,
Symbol name,
condition **  lhs_top,
condition **  lhs_bottom,
action **  rhs_top,
bool  reorder_nccs
 

Definition at line 1538 of file production.c.

References action, production_struct::action_list, add_bound_variables_in_condition_list(), byte, calculate_compile_time_o_support(), condition, production_struct::declared_support, production_struct::documentation, production_struct::filename, production_struct::firing_count, get_new_tc_number(), production_struct::instantiations, production_struct::interrupt, sym_constant_struct::name, production_struct::name, name_of_production_being_reordered, action_struct::next, production_struct::p_node, print(), print_with_symbols(), production, sym_constant_struct::production, production_struct::reference_count, reorder_action_list(), reorder_lhs(), reset_variable_generator(), production_struct::rhs_unbound_variables, symbol_union::sc, action_struct::support, Symbol, tc_number, production_struct::trace_firings, action_struct::type, and production_struct::type.

Referenced by chunk_instantiation(), and parse_production().

void reset_variable_generator condition conds_with_vars_to_avoid,
action actions_with_vars_to_avoid
 

Definition at line 1462 of file production.c.

References action, add_all_variables_in_action_list(), add_all_variables_in_condition_list(), condition, cons, cons_struct::first, free_list(), get_new_tc_number(), list, reset_variable_gensym_numbers(), cons_struct::rest, Symbol, and tc_number.

Referenced by chunk_instantiation(), make_production(), p_node_to_conditions_and_nots(), parse_production(), and second_stage_chunk_instantiation().

bool symbol_is_in_tc Symbol sym,
tc_number  tc
 

Definition at line 1366 of file production.c.

References symbol_union::id, Symbol, identifier_struct::tc_num, variable_struct::tc_num, tc_number, and symbol_union::var.

Referenced by action_is_in_tc(), and test_is_in_tc().

bool test_includes_equality_test_for_symbol test  t,
Symbol sym
 

Definition at line 649 of file production.c.

References complex_test, complex_test_struct::test_info_union::conjunct_list, cons, complex_test_struct::data, cons_struct::first, cons_struct::rest, Symbol, test, and complex_test_struct::type.

Referenced by add_rete_test_list_to_tests(), collect_root_variables(), condition_list_has_id_test_for_sym(), id_or_value_of_condition_list_is_in_os_tc(), match_state_tests_non_operator_slot(), parse_attr_value_tests(), parse_head_of_conds_for_one_id(), parse_value_test_star(), restore_saved_tests_to_test(), rete_node_to_conditions(), and variablize_nots_and_insert_into_conditions().

bool test_includes_goal_or_impasse_id_test test  t,
bool  look_for_goal,
bool  look_for_impasse
 

Definition at line 678 of file production.c.

References complex_test, complex_test_struct::test_info_union::conjunct_list, cons, complex_test_struct::data, cons_struct::first, cons_struct::rest, test, and complex_test_struct::type.

Referenced by collect_root_variables(), find_known_goals(), remove_isa_state_tests_for_non_roots(), reorder_lhs(), and tests_are_equal_with_bindings().

bool test_is_in_tc test  t,
tc_number  tc
 

Definition at line 1375 of file production.c.

References complex_test, complex_test_struct::test_info_union::conjunct_list, cons, complex_test_struct::data, cons_struct::first, cons_struct::rest, symbol_is_in_tc(), tc_number, test, and complex_test_struct::type.

Referenced by cond_is_in_tc().

bool tests_are_equal test  t1,
test  t2
 

Definition at line 416 of file production.c.

References complex_test, complex_test_struct::test_info_union::conjunct_list, cons, complex_test_struct::data, complex_test_struct::test_info_union::disjunction_list, cons_struct::first, complex_test_struct::test_info_union::referent, cons_struct::rest, test, and complex_test_struct::type.

Referenced by add_new_test_to_test_if_not_already_there(), conditions_are_equal(), and print().

void unmark_identifiers_and_free_list list id_list  ) 
 

Definition at line 1084 of file production.c.

References cons, cons_struct::first, symbol_union::id, list, cons_struct::rest, Symbol, and identifier_struct::tc_num.

Referenced by cond_is_in_tc().

void unmark_variables_and_free_list list var_list  ) 
 

Definition at line 1098 of file production.c.

References cons, cons_struct::first, list, cons_struct::rest, Symbol, variable_struct::tc_num, and symbol_union::var.

Referenced by collect_root_variables(), cond_is_in_tc(), fill_in_vars_requiring_bindings(), find_lowest_cost_lookahead(), reorder_action_list(), reorder_simplified_conditions(), and restore_and_deallocate_saved_tests().


Variable Documentation

tc_number current_tc_number = 0
 

Definition at line 1039 of file production.c.

Referenced by get_new_tc_number().

char* name_of_production_being_reordered
 

Definition at line 1536 of file production.c.

Referenced by collect_root_variables(), make_production(), reorder_action_list(), reorder_lhs(), reorder_simplified_conditions(), and restore_and_deallocate_saved_tests().


Generated on Thu Dec 11 13:00:28 2003 for Soar Kernel by doxygen 1.3.5