pub fn read_text(text: &str, declares: Declares) -> Option<String>Expand description
Read the declared version out of one marker file.
use majordomus_cli::environment::toolchain::{read_text, Declares};
assert_eq!(read_text("# a comment\n\n22.20.0\n", Declares::WholeFile).as_deref(), Some("22.20.0"));
assert_eq!(read_text("rust-version = \"1.85\"\n", Declares::KeyValue("rust-version")).as_deref(), Some("1.85"));
assert_eq!(read_text("{\"engines\":{\"node\":\">=22\"}}", Declares::JsonMember("engines", "node")).as_deref(), Some(">=22"));
assert_eq!(read_text("module x\n\ngo 1.22\n", Declares::Directive("go")).as_deref(), Some("1.22"));
assert_eq!(read_text("anything", Declares::Nothing), None);