Module aya.base

Interface TermConsumer

All Superinterfaces:
Consumer<Term>
All Known Subinterfaces:
DefConsumer, VarConsumer
All Known Implementing Classes:
CallResolver, VarConsumer.ScopeChecker, VarConsumer.Scoped

public interface TermConsumer extends Consumer<Term>
A convenient interface to consume a `Term`. This is desirable when you only need to inspect a term and produce some side effects. One can specify the `pre` and `post` method which represents a recursive step in pre- and post-order respectively. The overall traversal is obtained by recursively traversing the term in pre-order followed by a post-order traversal.
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
    accept(@NotNull Term term)
     
    default void
    post(@NotNull Term term)
     
    default void
    pre(@NotNull Term term)
     

    Methods inherited from interface java.util.function.Consumer

    andThen
  • Method Details

    • pre

      default void pre(@NotNull @NotNull Term term)
    • post

      default void post(@NotNull @NotNull Term term)
    • accept

      default void accept(@NotNull @NotNull Term term)
      Specified by:
      accept in interface Consumer<Term>