|
Data Structures |
| struct | InstructionPlusTypeFrame |
| struct | Basic_Trie_Node |
| struct | Time_Stamped_Trie_Node |
| struct | Answer_List_Node |
| struct | Tabled_Call_Info_Record |
| struct | Call_Check_Insert_Results |
| struct | VariantContinuation |
| struct | VariantContinuation::subterms_desc |
| struct | VariantContinuation::subterms_desc::termstack_desc |
| struct | VariantContinuation::bindings_desc |
| struct | VariantContinuation::bindings_desc::trail_desc |
| struct | VariantContinuation::bindings_desc::trail_desc::frame |
| struct | tstCallChoicePointFrame |
| struct | tstCCPStack_t |
| struct | tstChoicePointFrame |
| struct | tstCPStack_t |
| struct | InternGarbageLeafFrame |
| struct | InternGarbageRootFrame |
Defines |
| #define | TN_Instr(pTN) TSC_Instr(pTN) |
| #define | TN_Status(pTN) TSC_Status(pTN) |
| #define | TN_TrieType(pTN) TSC_TrieType(pTN) |
| #define | TN_NodeType(pTN) TSC_NodeType(pTN) |
| #define | TN_Parent(pTN) ( (pTN)->parent ) |
| #define | TN_Child(pTN) ( (pTN)->child ) |
| #define | TN_Sibling(pTN) ( (pTN)->sibling ) |
| #define | TN_Symbol(pTN) ( (pTN)->symbol ) |
| #define | TSC_Instr(pTSC) IPT_Instr((pTSC)->info) |
| #define | TSC_Status(pTSC) IPT_Status((pTSC)->info) |
| #define | TSC_TrieType(pTSC) IPT_TrieType((pTSC)->info) |
| #define | TSC_NodeType(pTSC) IPT_NodeType((pTSC)->info) |
| #define | TN_SetHashHdr(pTN, pTHT) TN_Child(pTN) = (void *)(pTHT) |
| #define | TN_GetHashHdr(pTN) TN_Child(pTN) |
| #define | FREE_TRIE_NODE_MARK -1 |
| #define | FREE_TRIE_BLOCK_MARK -2 |
| #define | IPT_Instr(IPT) ((IPT).instr) |
| #define | IPT_Status(IPT) ((IPT).status) |
| #define | IPT_TrieType(IPT) ((IPT).trie_type) |
| #define | IPT_NodeType(IPT) ((IPT).node_type) |
| #define | BTN_NAME 0 |
| #define | BTHT_NAME 1 |
| #define | PRODSF_NAME 2 |
| #define | CONSSF_NAME 3 |
| #define | TSTNSF_NAME 4 |
| #define | TSINSF_NAME 5 |
| #define | TSTHT_NAME 6 |
| #define | BTN_Instr(pBTN) TN_Instr(pBTN) |
| #define | BTN_Status(pBTN) TN_Status(pBTN) |
| #define | BTN_TrieType(pBTN) TN_TrieType(pBTN) |
| #define | BTN_NodeType(pBTN) TN_NodeType(pBTN) |
| #define | BTN_Parent(pBTN) TN_Parent(pBTN) |
| #define | BTN_Child(pBTN) TN_Child(pBTN) |
| #define | BTN_Sibling(pBTN) TN_Sibling(pBTN) |
| #define | BTN_Symbol(pBTN) TN_Symbol(pBTN) |
| #define | Instr(X) BTN_Instr(X) |
| #define | TrieType(X) BTN_TrieType(X) |
| #define | NodeType(X) BTN_NodeType(X) |
| #define | Parent(X) BTN_Parent(X) |
| #define | Child(X) BTN_Child(X) |
| #define | Sibl(X) BTN_Sibling(X) |
| #define | Atom(X) BTN_Symbol(X) |
| #define | TSTN_Instr(pTSTN) TN_Instr(pTSTN) |
| #define | TSTN_Status(pTSTN) TN_Status(pTSTN) |
| #define | TSTN_TrieType(pTSTN) TN_TrieType(pTSTN) |
| #define | TSTN_NodeType(pTSTN) TN_NodeType(pTSTN) |
| #define | TSTN_Parent(pTSTN) TN_Parent(pTSTN) |
| #define | TSTN_Child(pTSTN) TN_Child(pTSTN) |
| #define | TSTN_Sibling(pTSTN) TN_Sibling(pTSTN) |
| #define | TSTN_Symbol(pTSTN) TN_Symbol(pTSTN) |
| #define | TSTN_TimeStamp(pTSTN) ( (pTSTN)->ts ) |
| #define | ALN_Next(pALN) ((pALN)->link) |
| #define | ALN_Answer(pALN) ((pALN)->answer_leaf) |
| #define | CallInfo_TableInfo(CallInfo) ( (CallInfo).table_info_record ) |
| #define | CallInfo_CallArity(CallInfo) ( (CallInfo).call_arity ) |
| #define | CallInfo_Arguments(CallInfo) ( (CallInfo).arg_vector ) |
| #define | CallInfo_VarVectorLoc(CallInfo) ( (CallInfo).var_vector_loc ) |
| #define | CallLUR_Leaf(CLUR) ( (CLUR).call_trie_term ) |
| #define | CallLUR_Subsumer(CLUR) ( (CLUR).subsumers_sgf ) |
| #define | CallLUR_VariantFound(CLUR) ( (CLUR).variant_found ) |
| #define | CallLUR_VarVector(CLUR) ( (CLUR).var_vector ) |
| #define | trie_expand_array(ArrType, ArrayNam, ArraySz, NeededSz, Nam) |
| #define | will_overflow_reg_array(x) |
| #define | pushreg(X) |
| #define | NUM_TRIEVARS 400 |
| #define | DEFAULT_ARRAYSIZ 16 |
| #define | CALL_CPSTACK_SIZE 1024 |
| #define | TST_CPSTACK_SIZE 1024 |
Typedefs |
| typedef InstructionPlusTypeFrame | InstrPlusType |
| typedef Basic_Trie_Node * | BTNptr |
| typedef Basic_Trie_Node | BasicTrieNode |
| typedef Basic_Trie_Node * | NODEptr |
| typedef unsigned long | TimeStamp |
| typedef Time_Stamped_Trie_Node * | TSTNptr |
| typedef Time_Stamped_Trie_Node | TS_TrieNode |
| typedef Answer_List_Node * | ALNptr |
| typedef Answer_List_Node | AnsListNode |
| typedef Tabled_Call_Info_Record | TabledCallInfo |
| typedef Call_Check_Insert_Results | CallLookupResults |
| typedef enum Trie_Path_Type | TriePathType |
| typedef tstCallChoicePointFrame * | pCPFrame |
| typedef InternGarbageRootFrame * | IGRptr |
| typedef InternGarbageLeafFrame * | IGLptr |
| typedef InternGarbageLeafFrame | InternGarbageLeaf |
| typedef InternGarbageRootFrame | InternGarbageRoot |
Enumerations |
| enum | Trie_Path_Type { NO_PATH,
VARIANT_PATH,
SUBSUMPTIVE_PATH
} |
Functions |
| BTNptr | newBasicTrie (Cell, int) |
| byte * | trie_get_calls (void) |
| Cell | get_lastnode_cs_retskel (Cell) |
| byte * | trie_get_returns (struct subgoal_frame *, Cell) |
| void | remove_incomplete_tries (CPtr) |
| void | init_trie_aux_areas (void) |
| void | free_trie_aux_areas (void) |
| void | load_solution_trie (int, int, CPtr, BTNptr) |
| void | variant_call_search (TabledCallInfo *, CallLookupResults *) |
| BTNptr | one_term_chk_ins (CPtr, BTNptr, int *) |
| BTNptr | whole_term_chk_ins (Cell, BTNptr *, int *) |
| BTNptr | variant_answer_search (int, int, CPtr, struct subgoal_frame *, xsbBool *) |
| BTNptr | delay_chk_insert (int, CPtr, CPtr *) |
| void | undo_answer_bindings (void) |
| void | load_delay_trie (int, CPtr, BTNptr) |
| xsbBool | bottom_up_unify (void) |
| void | consume_subsumptive_answer (BTNptr, int, CPtr) |
| ALNptr | tst_collect_relevant_answers (TSTNptr, TimeStamp, int, CPtr) |
| void | delete_subsumptive_table (struct Table_Info_Frame *) |
| void | tstShrinkDynStacks (void) |
| TSTNptr | subsumptive_tst_search (TSTNptr, int, CPtr, xsbBool, xsbBool *) |
| BTNptr | subsumptive_bt_search (BTNptr, int, CPtr, xsbBool *) |
| TSTNptr | variant_tst_search (TSTNptr, int, CPtr, xsbBool, xsbBool *) |
| BTNptr | variant_bt_search (BTNptr, int, CPtr, xsbBool *) |
| void * | subsumptive_trie_lookup (void *root, int, CPtr, TriePathType *, Cell[]) |
| void * | variant_trie_lookup (void *root, int, CPtr, Cell[]) |
Variables |
| char * | trie_node_type_table [9] |
| char * | trie_trie_type_table [6] |
| char * | TrieSMNameTable [7] |
| BTNptr | get_next_trie_solution (ALNptr *) |
| CPtr | ans_var_pos_reg |
| int | num_vars_in_var_regs |
| int | global_num_vars |
| long | subg_chk_ins |
| long | subg_inserts |
| long | ans_chk_ins |
| long | ans_inserts |
| BTNptr | Last_Nod_Sav |
| BTNptr | Paren |
| CPtr | reg_arrayptr |
| CPtr | var_regs [] |
| int | num_heap_term_vars |
| CPtr * | var_addr |
| int | var_addr_arraysz |
| Cell * | reg_array |
| int | reg_array_size |
| int | delay_it |
| CPtr * | copy_of_var_addr |
| int | copy_of_num_heap_term_vars |