git.delta.rocks / jrsonnet / refs/commits / da64a7455472

difftreelog

refactor update logos

Yaroslav Bolyukin2024-02-20parent: #759175b.patch.diff
in: master

10 files changed

modifiedcmds/jrsonnet-fmt/src/main.rsdiffbeforeafterboth
--- a/cmds/jrsonnet-fmt/src/main.rs
+++ b/cmds/jrsonnet-fmt/src/main.rs
@@ -647,10 +647,10 @@
 fn format(input: &str, opts: &FormatOptions) -> Option<String> {
 	let (parsed, errors) = jrsonnet_rowan_parser::parse(input);
 	if !errors.is_empty() {
-		let mut builder = ass_stroke::SnippetBuilder::new(input);
+		let mut builder = hi_doc::SnippetBuilder::new(input);
 		for error in errors {
 			builder
-				.error(ass_stroke::Text::single(
+				.error(hi_doc::Text::single(
 					format!("{:?}", error.error).chars(),
 					Default::default(),
 				))
@@ -661,7 +661,7 @@
 				.build();
 		}
 		let snippet = builder.build();
-		let ansi = ass_stroke::source_to_ansi(&snippet);
+		let ansi = hi_doc::source_to_ansi(&snippet);
 		eprintln!("{ansi}");
 		// It is possible to recover from this failure, but the output may be broken, as formatter is free to skip
 		// ERROR rowan nodes.
modifiedcrates/jrsonnet-rowan-parser/src/generated/syntax_kinds.rsdiffbeforeafterboth
--- a/crates/jrsonnet-rowan-parser/src/generated/syntax_kinds.rs
+++ b/crates/jrsonnet-rowan-parser/src/generated/syntax_kinds.rs
@@ -135,7 +135,7 @@
 	MULTI_LINE_COMMENT,
 	#[regex("/\\*/")]
 	ERROR_COMMENT_TOO_SHORT,
-	#[regex("/\\*([^*]|\\*[^/])+")]
+	#[regex("/\\*([^*/]|\\*[^/])+")]
 	ERROR_COMMENT_UNTERMINATED,
 	#[token("tailstrict")]
 	TAILSTRICT_KW,
@@ -178,9 +178,8 @@
 	ERROR_MISSING_TOKEN,
 	ERROR_UNEXPECTED_TOKEN,
 	ERROR_CUSTOM,
-	#[doc = r" Also acts as __LAST_TOKEN"]
-	#[error]
 	LEXING_ERROR,
+	__LAST_TOKEN,
 	SOURCE_FILE,
 	EXPR,
 	SUFFIX_INDEX,
modifiedcrates/jrsonnet-rowan-parser/src/lex.rsdiffbeforeafterboth
--- a/crates/jrsonnet-rowan-parser/src/lex.rs
+++ b/crates/jrsonnet-rowan-parser/src/lex.rs
@@ -30,7 +30,7 @@
 		let mut kind = self.inner.next()?;
 		let text = self.inner.slice();
 
-		if kind == STRING_BLOCK {
+		if kind == Ok(STRING_BLOCK) {
 			// We use custom lexer, which skips enough bytes, but not returns error
 			// Instead we should call lexer again to verify if there is something wrong with string block
 			let mut lexer = logos::Lexer::<SyntaxKind>::new(text);
@@ -41,20 +41,20 @@
 			match res {
 				Ok(_) => {}
 				Err(e) => {
-					kind = match e {
+					kind = Ok(match e {
 						StringBlockError::UnexpectedEnd => ERROR_STRING_BLOCK_UNEXPECTED_END,
 						StringBlockError::MissingNewLine => ERROR_STRING_BLOCK_MISSING_NEW_LINE,
 						StringBlockError::MissingTermination => {
 							ERROR_STRING_BLOCK_MISSING_TERMINATION
 						}
 						StringBlockError::MissingIndent => ERROR_STRING_BLOCK_MISSING_INDENT,
-					}
+					})
 				}
 			}
 		}
 
 		Some(Self::Item {
-			kind,
+			kind: kind.unwrap_or(SyntaxKind::LEXING_ERROR),
 			text,
 			range: {
 				let Range { start, end } = self.inner.span();
modifiedcrates/jrsonnet-rowan-parser/src/parser.rsdiffbeforeafterboth
--- a/crates/jrsonnet-rowan-parser/src/parser.rs
+++ b/crates/jrsonnet-rowan-parser/src/parser.rs
@@ -57,7 +57,7 @@
 	fn from(val: LocatedSyntaxError) -> Self {
 		let span = SourceSpan::new(
 			SourceOffset::from(usize::from(val.range.start())),
-			SourceOffset::from(usize::from(val.range.end() - val.range.start())),
+			usize::from(val.range.end() - val.range.start()),
 		);
 		dbg!(&val);
 		match val.error {
modifiedcrates/jrsonnet-rowan-parser/src/snapshots/jrsonnet_rowan_parser__tests__continue_after_total_failure.snapdiffbeforeafterboth
before · crates/jrsonnet-rowan-parser/src/snapshots/jrsonnet_rowan_parser__tests__continue_after_total_failure.snap
1---2source: crates/jrsonnet-rowan-parser/src/tests.rs3expression: "local intr = $intrinsic(test);\n\nlocal a = 1, b = 2, c = a + b;\n\n[c]\n"4---5SOURCE_FILE@0..686  EXPR@0..297    STMT_LOCAL@0..238      LOCAL_KW@0..5 "local"9      WHITESPACE@5..6 " "10      BIND_DESTRUCT@6..1411        DESTRUCT_FULL@6..1012          NAME@6..1013            IDENT@6..10 "intr"14        WHITESPACE@10..11 " "15        ASSIGN@11..12 "="16        WHITESPACE@12..13 " "17        EXPR@13..1418          EXPR_LITERAL@13..1419            DOLLAR@13..14 "$"20      ERROR_UNEXPECTED_TOKEN@14..2321        IDENT@14..23 "intrinsic"22    EXPR_PARENED@23..2923      L_PAREN@23..24 "("24      EXPR@24..2825        EXPR_VAR@24..2826          NAME@24..2827            IDENT@24..28 "test"28      R_PAREN@28..29 ")"29  ERROR_CUSTOM@29..6730    SEMI@29..30 ";"31    WHITESPACE@30..32 "\n\n"32    LOCAL_KW@32..37 "local"33    WHITESPACE@37..38 " "34    IDENT@38..39 "a"35    WHITESPACE@39..40 " "36    ASSIGN@40..41 "="37    WHITESPACE@41..42 " "38    FLOAT@42..43 "1"39    COMMA@43..44 ","40    WHITESPACE@44..45 " "41    IDENT@45..46 "b"42    WHITESPACE@46..47 " "43    ASSIGN@47..48 "="44    WHITESPACE@48..49 " "45    FLOAT@49..50 "2"46    COMMA@50..51 ","47    WHITESPACE@51..52 " "48    IDENT@52..53 "c"49    WHITESPACE@53..54 " "50    ASSIGN@54..55 "="51    WHITESPACE@55..56 " "52    IDENT@56..57 "a"53    WHITESPACE@57..58 " "54    PLUS@58..59 "+"55    WHITESPACE@59..60 " "56    IDENT@60..61 "b"57    SEMI@61..62 ";"58    WHITESPACE@62..64 "\n\n"59    L_BRACK@64..65 "["60    IDENT@65..66 "c"61    R_BRACK@66..67 "]"62  WHITESPACE@67..68 "\n"63===64LocatedSyntaxError { error: Unexpected { expected: Unnamed(SyntaxKindSet([L_BRACK, L_PAREN, L_BRACE, SEMI, DOT, COMMA, QUESTION_MARK])), found: IDENT }, range: 14..23 }65LocatedSyntaxError { error: Custom { error: "unexpected tokens after end" }, range: 29..67 }66===67  x syntax error68   ,-[1:1]69 1 | ,-> local intr = $intrinsic(test);70   : ||              ^^^^|^^^^71   : ||                  `-- expected L_BRACK, L_PAREN, L_BRACE, SEMI, DOT, COMMA or QUESTION_MARK, found IDENT72 2 | |73 3 | |   local a = 1, b = 2, c = a + b;74 4 | |75 5 | |-> [c]76   : `---- unexpected tokens after end77   `----
after · crates/jrsonnet-rowan-parser/src/snapshots/jrsonnet_rowan_parser__tests__continue_after_total_failure.snap
1---2source: crates/jrsonnet-rowan-parser/src/tests.rs3expression: "local intr = $intrinsic(test);\n\nlocal a = 1, b = 2, c = a + b;\n\n[c]\n"4---5SOURCE_FILE@0..686  EXPR@0..297    STMT_LOCAL@0..238      LOCAL_KW@0..5 "local"9      WHITESPACE@5..6 " "10      BIND_DESTRUCT@6..1411        DESTRUCT_FULL@6..1012          NAME@6..1013            IDENT@6..10 "intr"14        WHITESPACE@10..11 " "15        ASSIGN@11..12 "="16        WHITESPACE@12..13 " "17        EXPR@13..1418          EXPR_LITERAL@13..1419            DOLLAR@13..14 "$"20      ERROR_UNEXPECTED_TOKEN@14..2321        IDENT@14..23 "intrinsic"22    EXPR_PARENED@23..2923      L_PAREN@23..24 "("24      EXPR@24..2825        EXPR_VAR@24..2826          NAME@24..2827            IDENT@24..28 "test"28      R_PAREN@28..29 ")"29  ERROR_CUSTOM@29..6730    SEMI@29..30 ";"31    WHITESPACE@30..32 "\n\n"32    LOCAL_KW@32..37 "local"33    WHITESPACE@37..38 " "34    IDENT@38..39 "a"35    WHITESPACE@39..40 " "36    ASSIGN@40..41 "="37    WHITESPACE@41..42 " "38    FLOAT@42..43 "1"39    COMMA@43..44 ","40    WHITESPACE@44..45 " "41    IDENT@45..46 "b"42    WHITESPACE@46..47 " "43    ASSIGN@47..48 "="44    WHITESPACE@48..49 " "45    FLOAT@49..50 "2"46    COMMA@50..51 ","47    WHITESPACE@51..52 " "48    IDENT@52..53 "c"49    WHITESPACE@53..54 " "50    ASSIGN@54..55 "="51    WHITESPACE@55..56 " "52    IDENT@56..57 "a"53    WHITESPACE@57..58 " "54    PLUS@58..59 "+"55    WHITESPACE@59..60 " "56    IDENT@60..61 "b"57    SEMI@61..62 ";"58    WHITESPACE@62..64 "\n\n"59    L_BRACK@64..65 "["60    IDENT@65..66 "c"61    R_BRACK@66..67 "]"62  WHITESPACE@67..68 "\n"63===64LocatedSyntaxError { error: Unexpected { expected: Unnamed(SyntaxKindSet([L_BRACK, L_PAREN, L_BRACE, SEMI, DOT, COMMA, QUESTION_MARK])), found: IDENT }, range: 14..23 }65LocatedSyntaxError { error: Custom { error: "unexpected tokens after end" }, range: 29..67 }66===67  x syntax error68   ,-[1:15]69 1 | ,-> local intr = $intrinsic(test);70   : |                 ^^^^|^^^^71   : |                     `-- expected L_BRACK, L_PAREN, L_BRACE, SEMI, DOT, COMMA or QUESTION_MARK, found IDENT72 2 | |73 3 | |   local a = 1, b = 2, c = a + b;74 4 | |75 5 | |-> [c]76   : `---- unexpected tokens after end77   `----
modifiedcrates/jrsonnet-rowan-parser/src/snapshots/jrsonnet_rowan_parser__tests__local_no_value_recovery.snapdiffbeforeafterboth
--- a/crates/jrsonnet-rowan-parser/src/snapshots/jrsonnet_rowan_parser__tests__local_no_value_recovery.snap
+++ b/crates/jrsonnet-rowan-parser/src/snapshots/jrsonnet_rowan_parser__tests__local_no_value_recovery.snap
@@ -40,7 +40,7 @@
 LocatedSyntaxError { error: Missing { expected: Named("expression") }, range: 25..25 }
 ===
   x syntax error
-   ,-[2:1]
+   ,-[3:3]
  2 | local b = 3;
  3 | 1
    :   ^^
modifiedcrates/jrsonnet-rowan-parser/src/snapshots/jrsonnet_rowan_parser__tests__unexpected_destruct.snapdiffbeforeafterboth
--- a/crates/jrsonnet-rowan-parser/src/snapshots/jrsonnet_rowan_parser__tests__unexpected_destruct.snap
+++ b/crates/jrsonnet-rowan-parser/src/snapshots/jrsonnet_rowan_parser__tests__unexpected_destruct.snap
@@ -26,7 +26,7 @@
 LocatedSyntaxError { error: Unexpected { expected: Named("destruction specifier"), found: MUL }, range: 6..7 }
 ===
   x syntax error
-   ,-[1:1]
+   ,-[1:7]
  1 | local * = 1;
    :       |
    :       `-- expected destruction specifier, found MUL
modifiedcrates/jrsonnet-rowan-parser/src/snapshots/jrsonnet_rowan_parser__tests__wrong_field_end.snapdiffbeforeafterboth
--- a/crates/jrsonnet-rowan-parser/src/snapshots/jrsonnet_rowan_parser__tests__wrong_field_end.snap
+++ b/crates/jrsonnet-rowan-parser/src/snapshots/jrsonnet_rowan_parser__tests__wrong_field_end.snap
@@ -39,7 +39,7 @@
 LocatedSyntaxError { error: Unexpected { expected: Named("comma"), found: SEMI }, range: 14..15 }
 ===
   x syntax error
-   ,-[1:1]
+   ,-[2:6]
  1 | {
  2 |     a: 1;
    :         |
modifiedxtask/src/sourcegen/kinds.rsdiffbeforeafterboth
--- a/xtask/src/sourcegen/kinds.rs
+++ b/xtask/src/sourcegen/kinds.rs
@@ -273,7 +273,7 @@
 		lit("SINGLE_LINE_HASH_COMMENT") => r"#[^\r\n]*(\r\n|\n)?";
 		lit("MULTI_LINE_COMMENT") => r"/\*([^*]|\*[^/])*\*/";
 		error("COMMENT_TOO_SHORT") => r"/\*/";
-		error("COMMENT_UNTERMINATED") =>  r"/\*([^*]|\*[^/])+";
+		error("COMMENT_UNTERMINATED") =>  r"/\*([^*/]|\*[^/])+";
 	];
 	kinds
 }
modifiedxtask/src/sourcegen/mod.rsdiffbeforeafterboth
--- a/xtask/src/sourcegen/mod.rs
+++ b/xtask/src/sourcegen/mod.rs
@@ -149,9 +149,8 @@
 			#[doc(hidden)]
 			EOF,
 			#(#token_kinds,)*
-			/// Also acts as __LAST_TOKEN
-			#[error]
 			LEXING_ERROR,
+			__LAST_TOKEN,
 			#(#nodes,)*
 			#[doc(hidden)]
 			__LAST,