@Test
public void test05() {

    List<Object> expectedResult = new ArrayList<>();
    expectedResult.add("\'");
    expectedResult.add("\"");
    expectedResult.add(1);
    expectedResult.add(2);
    expectedResult.add("3");
    expectedResult.add("a");
    expectedResult.add("b");
    expectedResult.add("c");
    expectedResult.add("d");
    expectedResult.add("ef\\");
    expectedResult.add("gh");
    final List<Object> result = new ArrayList<>();
    new RangeExpressionParser("['\\'',\"\\\"\",1..2,'3','a'..'b',\"c\"..\"d\",'\\ef\\\\',\"\\gh\"]").visit(new RangeExpressionItemVisitor() {
        @Override
        public void visit(Object val) {
            result.add(val);
        }
    });
    Assert.equals(result, expectedResult);
}