@@ -0,0 +1,766 @@
+package com.lexicalscope.jewel.issues;%0A%0Aimport static org.hamcrest.MatcherAssert.assertThat;%0A%0Aimport java.util.ArrayList;%0Aimport java.util.Arrays;%0A%0Aimport org.hamcrest.Matchers;%0Aimport org.junit.Test;%0A%0Aimport com.lexicalscope.jewel.cli.CliFactory;%0Aimport com.lexicalscope.jewel.cli.Option;%0A%0Apublic class Github20 %7B%0A   public static class MyList extends ArrayList%3CString%3E %7B%0A      public MyList(final String string) %7B%0A        this.addAll(Arrays.asList(string.split(%22;;%22)));%0A      %7D%0A    %7D%0A%0A    public interface Options %7B%0A      @Option%0A      MyList getList();%0A    %7D%0A%0A    @Test public void main() %7B%0A      final Options options = CliFactory.parseArguments(Options.class, %22--list%22, %22foo;;bar%22);%0A      assertThat(options.getList(), Matchers.contains(%22foo%22, %22bar%22));%0A    %7D%0A%7D%0A

test for custom list implementations