code: public TypeParserBuilder registerDynamicParser(DynamicParser parser) {
          if (parser == null) {
              throw new NullPointerException(makeNullArgumentErrorMsg("parser"));
          }
          clientProvidedDynamicParsers.add(parser);
          return this;
      }
docs: Register a custom made {@link DynamicParser} implementation. The {@link TypeParser} will loop
  through the registered {@link DynamicParser} and the first found (which does not return
  {@link DynamicParser#TRY_NEXT}) will be used. The first registered {@link DynamicParser} will
  be first in the loop.
  
  @param parser custom made {@link DynamicParser} implementation.
  @return {@link TypeParserBuilder}
  @throws NullPointerException if any given argument is null.