>>> from lepl import *
>>> (Literal('a')[]).parse('aaa')
File "<stdin>", line 1
(Literal('a')[]).parse('aaa')
^
SyntaxError: invalid syntax
>>> (Literal('a')[:]).parse('aaa')
['a', 'a', 'a']
>>> (Literal('a')[2:]).parse('aaa')
['a', 'a', 'a']
>>> (Literal('a')[3:]).parse('aaa')
['a', 'a', 'a']
>>> (Literal('a')[4:]).parse('aaa')
>>> (Literal('a')[:3]).parse('aaa')
['a', 'a', 'a']
>>> (Literal('a')[:3]).parse('aaaa')
['a', 'a', 'a']
>>> (Repeat(Literal('a'), 2)).parse('aaa')
['a', 'a', 'a']
>>> (Repeat(Literal('a'), 4)).parse('aaa')
>>> (Repeat(Literal('a'), 3)).parse('aaa')
['a', 'a', 'a']
>>> (Repeat('a', 2)).parse('aaa')
['a', 'a', 'a']