Parsers { @NonNull public static Parser<String> stringParser() { return STRING_PARSER; } private  Parsers(); @Nullable static T parseFirstNotNull(@NonNull CharSequence input, @NonNull Iterable<? extends IParser<T>> parsers); @NonNull static Parser<T> firstNotNull(IParser<T>... parsers); @NonNull static Parser<T> firstNotNull(@NonNull ImmutableList<? extends IParser<T>> parsers); @NonNull static Parser<T> onJAXB(@NonNull Class<T> classToBeParsed); @NonNull static Parser<T> onJAXB(@NonNull JAXBContext context); @NonNull static Parser<T> onJAXB(@NonNull Unmarshaller unmarshaller); @Deprecated static Parsers.@NonNull Parser<Date> onStrictDatePattern(@NonNull String datePattern, @NonNull Locale locale); @NonNull static Parser<Date> onDateFormat(@NonNull DateFormat dateFormat); @NonNull static Parser<Number> onNumberFormat(@NonNull NumberFormat numberFormat); @NonNull static Parser<T> onNull(); @NonNull static Parser<T> ofInstance(@Nullable T instance); @NonNull static Parser<File> fileParser(); @NonNull static Parser<Integer> intParser(); @NonNull static Parser<Long> longParser(); @NonNull static Parser<Boolean> boolParser(); @NonNull static Parser<Character> charParser(); @NonNull static Parser<Double> doubleParser(); @NonNull static Parser<Charset> charsetParser(); @NonNull static Parser<T> enumParser(@NonNull Class<T> enumClass); @NonNull static Parser<String> stringParser(); @NonNull static Parser<double[]> doubleArrayParser(); @NonNull static Parser<String[]> stringArrayParser(); @NonNull static Parser<Locale> localeParser(); @NonNull static Parser<Y> compose(@NonNull IParser<X> parser, @NonNull Function<X, Y> after); @NonNull static Parser<List<String>> onSplitter(@NonNull Splitter splitter); @NonNull static Parser<T> wrap(@NonNull IParser<T> parser);  }
@Test public void testStringParser() { Parser<String> p = Parsers.stringParser(); assertCompliance(p); assertThat(p.parse("hello")).isEqualTo("hello"); }