fn match_literal<'a>(expected: &'static str) -> impl Parser<'a, ()> {
    move |input: &'a str| match input.get(0..expected.len()) {
        Some(next) if next == expected => Ok((&input[expected.len()..], ())),
        _                              => Err(input)
    }
}
// NOTE(elsuizo:2020-12-15): este es uno de los parsers que va a impl solito Parser
// ya que es una funcion que toma un &str y devuelve un ParserResult
2020-12-15): este es uno de los parsers que va a impl solito Parser
ya que es una funcion que toma un &str y devuelve un ParserResult
2020 - 12 - 15 ) : este es uno de los parsers que va a impl solito Parser ya que es una funcion que toma un &str y devuelve un ParserResult
fn match_literal<'a>(expected: &'static str) -> impl Parser<'a, ()> {
    move |input: &'a str| match input.get(0..expected.len()) {
        Some(next) if next == expected => Ok((&input[expected.len()..], ())),
        _                              => Err(input)
    }
}
fn match_literal < ' a > ( expected : & ' static str ) -> impl Parser < ' a , ( ) > { move | input : & ' a str | match input . get ( 0 .. expected . len ( ) ) { Some ( next ) if next == expected => Ok ( ( & input [ expected . len ( ) .. ] , ( ) ) ) , _ => Err ( input ) } }
NOTE(elsuizo:2020-12-15): este es uno de los parsers que va a impl solito Parser
ya que es una funcion que toma un &str y devuelve un ParserResult
NOTE ( elsuizo : 2020 - 12 - 15 ) : este es uno de los parsers que va a impl solito Parser ya que es una funcion que toma un &str y devuelve un ParserResult
expected
&'static str
expected
&'static str