Avro C#
Classes | Public Member Functions | List of all members
Avro.IO.Parsing.SkipParser Class Reference

A parser that capable of skipping as well read and write. This class is used by decoders who (unlike encoders) are required to implement methods to skip. More...

Inheritance diagram for Avro.IO.Parsing.SkipParser:
Avro.IO.Parsing.Parser

Classes

interface  ISkipHandler
 The clients implement this interface to skip symbols and actions. More...
 

Public Member Functions

 SkipParser (Symbol root, IActionHandler symbolHandler, ISkipHandler skipHandler)
 Initializes a new instance of the SkipParser class. More...
 
void SkipTo (int target)
 Skips data by calling More...
 
void SkipRepeater ()
 Skips the repeater at the top the stack. More...
 
void SkipSymbol (Symbol symToSkip)
 Pushes the given symbol on to the skip and skips it. More...
 
- Public Member Functions inherited from Avro.IO.Parsing.Parser
 Parser (Symbol root, IActionHandler symbolHandler)
 Initializes a new instance of the Parser class. More...
 
Symbol Advance (Symbol input)
 Recursively replaces the symbol at the top of the stack with its production, until the top is a terminal. Then checks if the top symbol matches the terminal symbol supplied input. More...
 
void ProcessImplicitActions ()
 Performs any implicit actions at the top the stack, expanding any production (other than the root) that may be encountered. This method will fail if there are any repeaters on the stack. More...
 
void ProcessTrailingImplicitActions ()
 Performs any "trailing" implicit actions at the top the stack. More...
 
void PushProduction (Symbol sym)
 Pushes the production for the given symbol sym. If sym is a repeater and input is either Symbol.ArrayEnd or Symbol.MapEnd pushes nothing. More...
 
virtual Symbol PopSymbol ()
 Pops and returns the top symbol from the stack. More...
 
virtual Symbol TopSymbol ()
 Returns the top symbol from the stack. More...
 
virtual void PushSymbol (Symbol sym)
 Pushes sym on to the stack. More...
 
virtual int Depth ()
 Returns the depth of the stack. More...
 
virtual void Reset ()
 Resets the stack. More...
 

Additional Inherited Members

- Protected Attributes inherited from Avro.IO.Parsing.Parser
Symbol[] Stack
 Stack of symbols. More...
 
int Pos
 Position of the stack. More...
 

Detailed Description

A parser that capable of skipping as well read and write. This class is used by decoders who (unlike encoders) are required to implement methods to skip.

Constructor & Destructor Documentation

◆ SkipParser()

Avro.IO.Parsing.SkipParser.SkipParser ( Symbol  root,
IActionHandler  symbolHandler,
ISkipHandler  skipHandler 
)
inline

Initializes a new instance of the SkipParser class.

Member Function Documentation

◆ SkipRepeater()

void Avro.IO.Parsing.SkipParser.SkipRepeater ( )
inline

Skips the repeater at the top the stack.

◆ SkipSymbol()

void Avro.IO.Parsing.SkipParser.SkipSymbol ( Symbol  symToSkip)
inline

Pushes the given symbol on to the skip and skips it.

Parameters
symToSkipThe symbol that should be skipped.

◆ SkipTo()

void Avro.IO.Parsing.SkipParser.SkipTo ( int  target)
inline

Skips data by calling

skipXyz or readXyz methods on this, until the parser stack reaches the target level.


The documentation for this class was generated from the following file: