Interface Term<S>

All Known Implementing Classes:
Dictionary.Reference, StringReaderTerms.TerminalCharacters, StringReaderTerms.TerminalWord, Term.Alternative, Term.LookAhead, Term.Marker, Term.Maybe, Term.Repeated, Term.RepeatedWithSeparator, Term.Sequence

public interface Term<S>
  • Method Details

    • parse

      boolean parse(ParseState<S> pParseState, Scope pScope, Control pControl)
    • marker

      static <S, T> Term<S> marker(Atom<T> pName, T pValue)
    • sequence

      @SafeVarargs static <S> Term<S> sequence(Term<S>... pElements)
    • alternative

      @SafeVarargs static <S> Term<S> alternative(Term<S>... pElements)
    • optional

      static <S> Term<S> optional(Term<S> pTerm)
    • repeated

      static <S, T> Term<S> repeated(NamedRule<S,T> pElement, Atom<List<T>> pListName)
    • repeated

      static <S, T> Term<S> repeated(NamedRule<S,T> pElement, Atom<List<T>> pListName, int pMinRepetitions)
    • repeatedWithTrailingSeparator

      static <S, T> Term<S> repeatedWithTrailingSeparator(NamedRule<S,T> pElement, Atom<List<T>> pListName, Term<S> pSeparator)
    • repeatedWithTrailingSeparator

      static <S, T> Term<S> repeatedWithTrailingSeparator(NamedRule<S,T> pElement, Atom<List<T>> pListName, Term<S> pSeperator, int pMinRepetitions)
    • repeatedWithoutTrailingSeparator

      static <S, T> Term<S> repeatedWithoutTrailingSeparator(NamedRule<S,T> pElement, Atom<List<T>> pListName, Term<S> pSeperator)
    • repeatedWithoutTrailingSeparator

      static <S, T> Term<S> repeatedWithoutTrailingSeparator(NamedRule<S,T> pElement, Atom<List<T>> pListName, Term<S> pSeperator, int pMinRepetitions)
    • positiveLookahead

      static <S> Term<S> positiveLookahead(Term<S> pTerm)
    • negativeLookahead

      static <S> Term<S> negativeLookahead(Term<S> pTerm)
    • cut

      static <S> Term<S> cut()
    • empty

      static <S> Term<S> empty()
    • fail

      static <S> Term<S> fail(Object pReason)