Parsers { @SuppressWarnings("unchecked") public static <T> Parser<T> always() { return ALWAYS; } private  Parsers(); @SuppressWarnings("unchecked") static Parser<T> always(); @SuppressWarnings("unchecked") static Parser<T> never(); static Parser<T> fail(final String message); @Deprecated static Parser<?> runnable(final Runnable runnable); static Parser<T> constant(final T v); static Parser<T> sequence(Parser<?> p1, Parser<T> p2); static Parser<T> sequence(Parser<?> p1, Parser<?> p2, Parser<T> p3); static Parser<T> sequence(
      Parser<?> p1, Parser<?> p2, Parser<?> p3, Parser<T> p4); static Parser<T> sequence(
      Parser<?> p1, Parser<?> p2, Parser<?> p3, Parser<?> p4, Parser<T> p5); @Deprecated static Parser<Pair<A,B>> pair(Parser<? extends A> p1, Parser<? extends B> p2); @Deprecated static Parser<Pair<A,B>> tuple(Parser<? extends A> p1, Parser<? extends B> p2); @Deprecated static Parser<Tuple3<A,B,C>> tuple(
      Parser<? extends A> p1, Parser<? extends B> p2, Parser<? extends C> p3); @Deprecated static Parser<Tuple4<A,B,C,D>> tuple(
      Parser<? extends A> p1, Parser<? extends B> p2,
      Parser<? extends C> p3, Parser<? extends D> p4); @Deprecated static Parser<Tuple5<A,B,C,D,E>> tuple(
      Parser<? extends A> p1, Parser<? extends B> p2, Parser<? extends C> p3,
      Parser<? extends D> p4, Parser<? extends E> p5); static Parser<Object[]> array(final Parser<?>... parsers); static Parser<List<T>> list(Iterable<? extends Parser<? extends T>> parsers); static Parser<T> between(Parser<?> before, Parser<T> parser, Parser<?> after); static Parser<T> sequence(
      final Parser<A> p1, final Parser<B> p2, final BiFunction<? super A, ? super B, ? extends T> map); static Parser<T> sequence(
      final Parser<A> p1, final Parser<B> p2, final Parser<C> p3,
      final Map3<? super A, ? super B, ? super C, ? extends T> map); static Parser<T> sequence(
      final Parser<A> p1, final Parser<B> p2, final Parser<C> p3, final Parser<D> p4,
      final Map4<? super A, ? super B, ? super C, ? super D, ? extends T> map); static Parser<T> sequence(
      final Parser<A> p1, final Parser<B> p2, final Parser<C> p3, final Parser<D> p4, final Parser<E> p5,
      final Map5<? super A, ? super B, ? super C, ? super D, ? super E, ? extends T> map); static Parser<T> sequence(
      final Parser<A> p1, final Parser<B> p2, final Parser<C> p3,
      final Parser<D> p4, final Parser<E> p5, final Parser<F> p6,
      final Map6<? super A, ? super B, ? super C, ? super D, ? super E, ? super F, ? extends T> map); static Parser<T> sequence(
      final Parser<A> p1, final Parser<B> p2, final Parser<C> p3,
      final Parser<D> p4, final Parser<E> p5, final Parser<F> p6, final Parser<G> p7,
      final Map7<? super A, ? super B, ? super C, ? super D, ? super E, ? super F, ? super G, ? extends T> map); static Parser<T> sequence(
      final Parser<A> p1, final Parser<B> p2, final Parser<C> p3, final Parser<D> p4,
      final Parser<E> p5, final Parser<F> p6, final Parser<G> p7, final Parser<H> p8,
      final Map8<? super A, ? super B, ? super C, ? super D, ? super E, ? super F, ? super G, ? super H, ? extends T> map); static Parser<Object> sequence(final Parser<?>... parsers); static Parser<Object> sequence(Iterable<? extends Parser<?>> parsers); static Parser<T> or(Parser<? extends T> p1, Parser<? extends T> p2); static Parser<T> or(
      Parser<? extends T> p1, Parser<? extends T> p2, Parser<? extends T> p3); static Parser<T> or(
      Parser<? extends T> p1, Parser<? extends T> p2,
      Parser<? extends T> p3, Parser<? extends T> p4); static Parser<T> or(
      Parser<? extends T> p1, Parser<? extends T> p2, Parser<? extends T> p3, 
      Parser<? extends T> p4, Parser<? extends T> p5); static Parser<T> or(
      Parser<? extends T> p1, Parser<? extends T> p2, Parser<? extends T> p3, 
      Parser<? extends T> p4, Parser<? extends T> p5, Parser<? extends T> p6); static Parser<T> or(
      Parser<? extends T> p1, Parser<? extends T> p2, Parser<? extends T> p3, 
      Parser<? extends T> p4, Parser<? extends T> p5, Parser<? extends T> p6,
      Parser<? extends T> p7); static Parser<T> or(
      Parser<? extends T> p1, Parser<? extends T> p2, Parser<? extends T> p3, 
      Parser<? extends T> p4, Parser<? extends T> p5, Parser<? extends T> p6,
      Parser<? extends T> p7, Parser<? extends T> p8); static Parser<T> or(
      Parser<? extends T> p1, Parser<? extends T> p2, Parser<? extends T> p3, 
      Parser<? extends T> p4, Parser<? extends T> p5, Parser<? extends T> p6,
      Parser<? extends T> p7, Parser<? extends T> p8, Parser<? extends T> p9); static Parser<T> or(final Parser<? extends T>... alternatives); static Parser<T> or(Iterable<? extends Parser<? extends T>> alternatives); @SuppressWarnings("unchecked") static Parser<T> longer(Parser<? extends T> p1, Parser<? extends T> p2); static Parser<T> longest(Parser<? extends T>... parsers); static Parser<T> longest(Iterable<? extends Parser<? extends T>> parsers); @SuppressWarnings("unchecked") static Parser<T> shorter(Parser<? extends T> p1, Parser<? extends T> p2); static Parser<T> shortest(Parser<? extends T>... parsers); static Parser<T> shortest(Iterable<? extends Parser<? extends T>> parsers); static Parser<T> expect(final String name); static Parser<T> unexpected(final String name); static Parser<T> token(final TokenMap<? extends T> fromToken); static Parser<T> tokenType(final Class<? extends T> type, final String name); static final Parser<?> EOF; static final Parser<Object> ANY_TOKEN; @Deprecated
  static final Parser<Integer> INDEX; static final Parser<SourceLocation> SOURCE_LOCATION; }
@Test public void testAlways() { assertEquals(null, always().parse("", mode)); }