# Package org.apache.avro.io.parsing

Implementation of Avro schemas as LL(1) grammars.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  Parser.ActionHandler | The parser knows how to handle the terminal and non-terminal symbols.
  SkipParser.SkipHandler | The clients implement this interface to skip symbols and actions.

- Class Summary
  Class | Description
  --- | ---
  JsonGrammarGenerator | The class that generates a grammar suitable to parse Avro data in JSON format.
  Parser | Parser is the class that maintains the stack for parsing.
  ResolvingGrammarGenerator | The class that generates a resolving grammar to resolve between two schemas.
  SkipParser | A parser that capable of skipping as well read and write.
  Symbol | Symbol is the base of all symbols (terminals and non-terminals) of the grammar.
  Symbol.Alternative |
  Symbol.DefaultStartAction |
  Symbol.EnumAdjustAction |
  Symbol.EnumLabelsAction |
  Symbol.ErrorAction |
  Symbol.FieldAdjustAction |
  Symbol.FieldOrderAction |
  Symbol.ImplicitAction |
  Symbol.IntCheckAction |
  Symbol.Repeater |
  Symbol.ResolvingAction |
  Symbol.Root |
  Symbol.Sequence |
  Symbol.SkipAction |
  Symbol.UnionAdjustAction |
  Symbol.WriterUnionAction |
  ValidatingGrammarGenerator | The class that generates validating grammar.

- Enum Summary
  Enum | Description
  --- | ---
  Symbol.Kind |

## Package org.apache.avro.io.parsing Description

Implementation of Avro schemas as LL(1) grammars.

See parser documentation for details on how this is achieved.

The classes in this package are used by `ValidatingEncoder`, `ValidatingDecoder`, `ResolvingDecoder`, `JsonEncoder` and `JsonDecoder`,

Unless one plans to generate a variation of the grammar or use a grammar, one not need to understand these classes.

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