Skip to content

Package io.github.qishr.cascara.common.lang.processor

Interface AstParser

java.lang.Object
        io.github.qishr.cascara.common.lang.processor.AstParser

All Implemented Interfaces:
    Processor

All Known Implementing Classes:
    JsonAstParser, XmlAstParser, YamlAstParser


@io.github.qishr.cascara.common.lang.annotation.Beta
public interface AstParser

Method Summary

Modifier and Type Method Description
public abstract N parse(String text) Entry point for parsing a source string.
public abstract N parse(Reader reader)
public abstract N parse(InputStream is) Entry point for parsing an InputStream.
public abstract N parse(L tokenizer) Primary parsing core driven directly by the Tokenizer interface structure.
public abstract N parse(List tokens) Entry point for parsing a list of tokens.
public abstract List getTokens()
public abstract L getTokenizer()

Method Details

parse

public abstract N parse(String text)

Entry point for parsing a source string.

Parameters:

text - The raw text source.

Returns:

The root AstNode.


parse

public abstract N parse(Reader reader)


parse

public abstract N parse(InputStream is)

Entry point for parsing an InputStream.

Parameters:

is - is An input stream of the raw text source.

Returns:

The root AstNode.


parse

public abstract N parse(L tokenizer)

Primary parsing core driven directly by the Tokenizer interface structure.

Parameters:

tokenizer - the tokenizer instance.

Returns:

The root AstNode.


parse

public abstract N parse(List tokens)

Entry point for parsing a list of tokens.

Parameters:

tokens - A list of tokens representing the tokenized text source.

Returns:

The root AstNode.


getTokens

public abstract List getTokens()


getTokenizer

public abstract L getTokenizer()