Soar Kernel
9.3.2 08-06-12
|
#include <portability.h>
#include <stdlib.h>
#include "tempmem.h"
#include "kernel.h"
#include "symtab.h"
#include "gdatastructs.h"
#include "mem.h"
#include "agent.h"
Go to the source code of this file.
Functions | |
slot * | find_slot (Symbol *id, Symbol *attr) |
slot * | make_slot (agent *thisAgent, Symbol *id, Symbol *attr) |
void | mark_slot_as_changed (agent *thisAgent, slot *s) |
void | mark_slot_for_possible_removal (agent *thisAgent, slot *s) |
void | remove_garbage_slots (agent *thisAgent) |
Definition at line 55 of file tempmem.cpp.
References slot_struct::attr, symbol_union::id, slot_struct::next, NIL, and identifier_struct::slots.
Referenced by add_values_of_attribute_path(), elaborate_gds(), find_name_of_object(), process_o_rejects_and_deallocate_them(), soar_module::remove_module_wme(), and rl_tabulate_reward_value_for_goal().
Definition at line 64 of file tempmem.cpp.
References slot_struct::acceptable_preference_changed, slot_struct::acceptable_preference_wmes, slot_struct::all_preferences, slot_struct::attr, slot_struct::changed, FALSE, symbol_union::id, slot_struct::id, slot_struct::impasse_id, slot_struct::impasse_type, insert_at_head_of_dll, slot_struct::isa_context_slot, identifier_struct::isa_goal, slot_struct::marked_for_possible_removal, slot_struct::next, NIL, NONE_IMPASSE_TYPE, NUM_PREFERENCE_TYPES, agent_struct::operator_symbol, slot_struct::preferences, agent_struct::slot_pool, identifier_struct::slots, symbol_add_ref(), TRUE, slot_struct::wma_val_references, and slot_struct::wmes.
Referenced by soar_module::add_module_wme(), add_preference_to_tm(), and create_new_context().
Definition at line 119 of file tempmem.cpp.
References slot_struct::changed, agent_struct::changed_slots, agent_struct::dl_cons_pool, agent_struct::highest_goal_whose_context_changed, symbol_union::id, slot_struct::id, insert_at_head_of_dll, slot_struct::isa_context_slot, dl_cons_struct::item, and identifier_struct::level.
Referenced by add_preference_to_tm(), and remove_preference_from_tm().
Definition at line 157 of file tempmem.cpp.
References slot_struct::marked_for_possible_removal, push(), agent_struct::slots_for_possible_removal, and TRUE.
Referenced by garbage_collect_id(), and run_preference_semantics().
void remove_garbage_slots | ( | agent * | thisAgent | ) |
Definition at line 163 of file tempmem.cpp.
References slot_struct::all_preferences, slot_struct::attr, slot_struct::changed, agent_struct::changed_slots, agent_struct::dl_cons_pool, FALSE, cons_struct::first, free_cons(), symbol_union::id, slot_struct::id, slot_struct::isa_context_slot, slot_struct::marked_for_possible_removal, NIL, print_with_symbols(), remove_from_dll, cons_struct::rest, agent_struct::slot_pool, identifier_struct::slots, agent_struct::slots_for_possible_removal, symbol_remove_ref(), agent_struct::wma_slot_refs_pool, slot_struct::wma_val_references, and slot_struct::wmes.
Referenced by do_buffered_wm_and_ownership_changes().