Markus Westerlind
Markus Westerlind
That example works because it fails when looking at the first character, so it never consumes any input. It is thanks to this `choice` and similar parsers can produce error...
`I::Position` can be whatever you need it to be. By default for `&str` and `&[u8]` it is just an offset into the slice (as that is the cheapest), but if...
> This seems like it'd be good to add to the library, I'd gladly open a PR if you're interested. Yes, that seems like a good addition. Never thought about...
@Gallagator If you want to use a specific type in the parser you need to specific it in the type signature (same thing that you did with `char`. ``` Input:...
Looks like rustc bug in trait selection  Compiling the crate wasn't trivial. I had to fix some compile errors (`s/Parser
A workaround may be to use the `parser!` or `opaque!` macro in a few places to break apart the huge types generated by `impl Parser`.
Quick fix for this is to use https://docs.rs/combine/4.0.1/combine/fn.choice.html instead of the `choice!` macro. It compiles instantaneously when I changed that (it ends up creating a single, wide type instead of...
https://github.com/rust-lang/rust/commit/18a366990335748d6020e306327048de9e4340c3 ought to have fixed it.
> I cannot reuse subexpr directly as parsers are effectivly non-clonable (issue #283) > There doesn't seems to be a primitive suitable for it (for example sepBy ignores separator) ```rust...
For recursive parsers there is also https://docs.rs/combine/4.2.1/combine/parser/combinator/fn.opaque.html