Class AbstractCommandParser<T>

java.lang.Object
com.github.rvesse.airline.parser.AbstractParser<T>
com.github.rvesse.airline.parser.AbstractCommandParser<T>
Type Parameters:
T - Command type
Direct Known Subclasses:
CliParser, SingleCommandParser, SuggestionParser

public abstract class AbstractCommandParser<T> extends AbstractParser<T>
Abstract implementation of a parser for commands that can cope with both CLI and Single Command parsing
  • Constructor Details

    • AbstractCommandParser

      public AbstractCommandParser()
  • Method Details

    • tryParse

      protected ParseState<T> tryParse(GlobalMetadata<T> metadata, String... args)
      Tries to parse the arguments
      Parameters:
      metadata - Global Metadata
      args - Arguments
      Returns:
      Parser State
    • tryParse

      protected ParseState<T> tryParse(GlobalMetadata<T> metadata, Iterable<String> args)
      Tries to parse the arguments
      Parameters:
      metadata - Global Metadata
      args - Arguments
      Returns:
      Parser State
    • applyAliases

      protected org.apache.commons.collections4.iterators.PeekingIterator<String> applyAliases(org.apache.commons.collections4.iterators.PeekingIterator<String> tokens, ParseState<T> state)
    • tryParse

      protected ParseState<T> tryParse(ParserMetadata<T> parserConfig, CommandMetadata command, Iterable<String> args)
      Tries to parse the arguments
      Parameters:
      parserConfig - Parser Configuration
      command - Command meta-data
      args - Arguments
      Returns:
      Parser State
    • parseCommand

      protected ParseState<T> parseCommand(org.apache.commons.collections4.iterators.PeekingIterator<String> tokens, ParseState<T> state)
    • parseCommandOptionsAndArguments

      protected ParseState<T> parseCommandOptionsAndArguments(org.apache.commons.collections4.iterators.PeekingIterator<String> tokens, ParseState<T> state, CommandMetadata command)
    • parseGroup

      protected ParseState<T> parseGroup(org.apache.commons.collections4.iterators.PeekingIterator<String> tokens, ParseState<T> state)