lojix/logic/src/main/com/thesett/aima/logic/fol/compiler/TermWalker.java
public void walk(Term term)
    {
        // Set up the traverser on the term to walk over.
        term.setTermTraverser(traverser);

        // Create a fresh search starting from the term.
        search.reset();

        if (goalPredicate != null)
        {
            search.setGoalPredicate(goalPredicate);
        }

        search.addStartState(term);

        Iterator<Term> treeWalker = Searches.allSolutions(search);

        // If the traverser is a term visitor, allow it to visit the top-level term in the walk to establish
        // an initial context.
        if (traverser instanceof TermVisitor)
        {
            term.accept((TermVisitor) traverser);
        }

        // Visit every goal node discovered in the walk over the term.
        while (treeWalker.hasNext())
        {
            Term nextTerm = treeWalker.next();
            nextTerm.accept(visitor);
        }

        // Remote the traverser on the term to walk over.
        term.setTermTraverser(null);
    }
public void walk(Term term)
    {
        // Set up the traverser on the term to walk over.
        term.setTermTraverser(traverser);

        // Create a fresh search starting from the term.
        search.reset();

        if (goalPredicate != null)
        {
            search.setGoalPredicate(goalPredicate);
        }

        search.addStartState(term);

        Iterator<Term> treeWalker = Searches.allSolutions(search);

        // If the traverser is a term visitor, allow it to visit the top-level term in the walk to establish
        // an initial context.
        if (traverser instanceof TermVisitor)
        {
            term.accept((TermVisitor) traverser);
        }

        // Visit every goal node discovered in the walk over the term.
        while (treeWalker.hasNext())
        {
            Term nextTerm = treeWalker.next();
            nextTerm.accept(visitor);
        }

        // Remote the traverser on the term to walk over.
        term.setTermTraverser(null);
    }
public void walk ( Term term ) { // Set up the traverser on the term to walk over. term . setTermTraverser ( traverser ) ; // Create a fresh search starting from the term. search . reset ( ) ; if ( goalPredicate != null ) { search . setGoalPredicate ( goalPredicate ) ; } search . addStartState ( term ) ; Iterator < Term > treeWalker = Searches . allSolutions ( search ) ; // If the traverser is a term visitor, allow it to visit the top-level term in the walk to establish // an initial context. if ( traverser instanceof TermVisitor ) { term . accept ( ( TermVisitor ) traverser ) ; } // Visit every goal node discovered in the walk over the term. while ( treeWalker . hasNext ( ) ) { Term nextTerm = treeWalker . next ( ) ; nextTerm . accept ( visitor ) ; } // Remote the traverser on the term to walk over. term . setTermTraverser ( null ) ; }
Walks over the supplied term.

@param term The term to walk over.
Walks over the supplied term .