private void initialiseSymbolTable ( Term clause ) { // Run the symbol key traverser over the clause, to ensure that all terms have their symbol keys correctly // set up. SymbolKeyTraverser symbolKeyTraverser = new SymbolKeyTraverser ( interner , symbolTable , null ) ; symbolKeyTraverser . setContextChangeVisitor ( symbolKeyTraverser ) ; TermWalker symWalker = new TermWalker ( new DepthFirstBacktrackingSearch < Term , Term > ( ) , symbolKeyTraverser , symbolKeyTraverser ) ; symWalker . walk ( clause ) ; }
Runs a symbol key traverser over the clause to be compiled to ensure that all of its terms and sub - terms have their symbol keys initialised .