From 27e9087d9f494f08fae218ce9a5f08bae4421191 Mon Sep 17 00:00:00 2001 From: Schrottkatze Date: Sun, 7 Jan 2024 15:18:23 +0100 Subject: [PATCH 1/2] add test outputs and direnv outputs and stuff --- .gitignore | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitignore b/.gitignore index a88b5db..7be5f84 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,6 @@ /target .direnv .devenv +out.png +.pre-commit-config.yaml +src From b8c4d0a6c628d5dcb906a72d9384a667a1750d96 Mon Sep 17 00:00:00 2001 From: Schrottkatze Date: Sun, 7 Jan 2024 15:18:39 +0100 Subject: [PATCH 2/2] clean up error stuff --- src/parse.rs | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/src/parse.rs b/src/parse.rs index 18eedb0..102fc6e 100644 --- a/src/parse.rs +++ b/src/parse.rs @@ -55,25 +55,22 @@ pub fn parse_the_shit_out_of_this_but_manually<'a>( Ok(Token::Text(s)) => r.push(LanguageStructureThingy::Text(s)), Ok(Token::Newline) => r.push(LanguageStructureThingy::Text("\n".to_owned())), Ok(Token::ParenOpen) => hehe_sexpression_funy(&mut r, &mut lex), - Ok(Token::String(_)) => todo!(), - Ok(Token::Equals) => todo!(), - Ok(Token::Asterisk) => todo!(), - Ok(Token::Underscore) => todo!(), - Ok(Token::Backslash) => todo!(), - Ok(Token::WavyThing) => todo!(), - Ok(Token::Sparkles) => todo!(), - Ok(Token::HeadingLevelIndicator) => todo!(), - Err(()) | Ok(Token::ParenClose) => { + Err(()) + | Ok(Token::ParenClose) + | Ok(Token::String(_)) + | Ok(Token::Equals) + | Ok(Token::Asterisk) + | Ok(Token::Underscore) + | Ok(Token::Backslash) + | Ok(Token::WavyThing) + | Ok(Token::Sparkles) + | Ok(Token::HeadingLevelIndicator) => { reporter.report_diagnostic(*file_id, loc, DiagnosticKind::InvalidToken) } } } reporter.fail_step_if_failed(); - // match lex.next() { - // Some(Err(e)) => panic!("mauuu~ :(, e: {e:?}"), - // None => break, - // } r } @@ -112,3 +109,11 @@ fn hehe_sexpression_funy(r: &mut Vec, lex: &mut Lexer<' todo!() } } + +fn mk_simple_sexpression(name: impl ToString, content: impl ToString) -> LanguageStructureThingy { + LanguageStructureThingy::Sexpression { + name: name.to_string(), + attrs: HashMap::new(), + content: Box::new(LanguageStructureThingy::Text(content.to_string())), + } +}