clitest_lib/parser/
mod.rs

1use crate::script::{Script, ScriptError, ScriptErrorType, ScriptFile, ScriptLocation};
2
3pub mod v0;
4
5pub fn parse_script(file: ScriptFile, script: &str) -> Result<Script, ScriptError> {
6    let version = script.lines().next().unwrap_or_default();
7    match version {
8        "#!/usr/bin/env clitest --v0" => v0::parse_script(file, script),
9        _ => Err(ScriptError::new(
10            ScriptErrorType::InvalidVersion,
11            ScriptLocation::new(file, 1),
12        )),
13    }
14}