Get A Single Line Of Text With The nom Parser in Rust
This example is a test run, it's not currnetly working as I figure out some details of the neopolitan code runner
#!/usr/bin/env cargo +nightly -Zscript
//! ```cargo
//! [package]
//! edition = "2021"
//! [dependencies]
//! nom = { version = "7.1.3" }
//! ```
use nom::IResult;
fn main() {
assert_eq!("alfa bravo\ncharlie\n", Ok(("charlie", "alfa bravo"));
println!("Tests Passed");
}
fn parser(source: &str) -> IResult<&str, &str> {
Ok((source, ""))
}
//let (a, b) = alt((
// tuple((take_until("\n"), tag("\n"))).map(|x| x.0),
//rest,
//))(source)?;
Output:
error: mismatched closing delimiter: `}`
--> tmp-neo-execute-script.rs:13:13
|
12 | fn main() {
| - closing delimiter possibly meant for this
13 | assert_eq!("alfa bravo\ncharlie\n", Ok(("charlie", "alfa bravo"));
| ^ unclosed delimiter
14 | println!("Tests Passed");
15 | }
| ^ mismatched closing delimiter
error: could not compile ``tmp-neo-execute-script`` (bin "tmp-neo-execute-script") due to previous error
12 | fn main() {
| - closing delimiter possibly meant for this
13 | assert_eq!("alfa bravo\ncharlie\n", Ok(("charlie", "alfa bravo"));
| ^ unclosed delimiter
14 | println!("Tests Passed");
15 | }
| ^ mismatched closing delimiter
error: could not compile ``tmp-neo-execute-script`` (bin "tmp-neo-execute-script") due to previous error
-- end of line --