org.apache.avro.compiler.schema

## Interface SchemaVisitor<T>

- All Known Implementing Classes:
    CloningVisitor

      public interface SchemaVisitor<T>

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `SchemaVisitorAction` | `afterVisitNonTerminal(Schema nonTerminal)` Invoked for schemas with children after its children have been visited.
    `T` | `get()` Invoked when visiting is complete.
    `SchemaVisitorAction` | `visitNonTerminal(Schema nonTerminal)` Invoked for schema with children before proceeding to visit the children.
    `SchemaVisitorAction` | `visitTerminal(Schema terminal)` Invoked for schemas that do not have "child" schemas (like string, int ...) or for a previously encountered schema with children, which will be treated as a terminal.

- - ### Method Detail

    - #### visitTerminal

          SchemaVisitorAction visitTerminal(Schema terminal)

      Invoked for schemas that do not have "child" schemas (like string, int ...) or for a previously encountered schema with children, which will be treated as a terminal. (to avoid circular recursion)
      Parameters:
        `terminal` -

    - #### visitNonTerminal

          SchemaVisitorAction visitNonTerminal(Schema nonTerminal)

      Invoked for schema with children before proceeding to visit the children.
      Parameters:
        `nonTerminal` -

    - #### afterVisitNonTerminal

          SchemaVisitorAction afterVisitNonTerminal(Schema nonTerminal)

      Invoked for schemas with children after its children have been visited.
      Parameters:
        `nonTerminal` -

    - #### get

          T get()

      Invoked when visiting is complete.
      Returns:
        a value which will be returned by the visit method.

Copyright © 2009–2024 The Apache Software Foundation. All rights reserved.