From f8241d7c790b27106ca7c04a28184db729695f4d Mon Sep 17 00:00:00 2001 From: Phodal Huang Date: Wed, 9 Sep 2020 13:47:44 +0800 Subject: [PATCH] feat: find the error testcases for scanner --- scie-grammar/src/grammar/grammar.rs | 4 ++++ scie-scanner/src/scanner/scanner.rs | 25 ++++++++++++++++++++++--- vscode-tests/vendor/main.js | 8 +++++++- 3 files changed, 33 insertions(+), 4 deletions(-) diff --git a/scie-grammar/src/grammar/grammar.rs b/scie-grammar/src/grammar/grammar.rs index 719c23b..1acccbc 100644 --- a/scie-grammar/src/grammar/grammar.rs +++ b/scie-grammar/src/grammar/grammar.rs @@ -526,6 +526,10 @@ impl Grammar { let mut rule = stack.get_rule(self); let rule_info = rule.clone().get_rule_instance(); + if rule.get_rule().id == 36 { + println!("{:?}", line_pos); + } + let mut rule_scanner; match rule_info { RuleEnum::BeginEndRule(mut begin_end_rule) => { diff --git a/scie-scanner/src/scanner/scanner.rs b/scie-scanner/src/scanner/scanner.rs index c8ad4ce..4f365f2 100644 --- a/scie-scanner/src/scanner/scanner.rs +++ b/scie-scanner/src/scanner/scanner.rs @@ -111,9 +111,9 @@ impl Scanner { } pub fn str_vec_to_string(iter: I) -> Vec -where - I: IntoIterator, - T: Into, + where + I: IntoIterator, + T: Into, { iter.into_iter().map(Into::into).collect() } @@ -358,4 +358,23 @@ mod tests { assert_eq!(4, onig_match.capture_indices[0].start); assert_eq!(4, onig_match.capture_indices[0].end); } + + #[test] + fn should_return_correct_index_when_for_markdown() { + let origin = vec!["^", "\\\n", "%|\\*", "(^[ \t]+)?(?=#)", "(\\$?\\$)[@% linePos) { - // Advance stream linePos = captureIndices[0].end; + // Advance stream + console.log(linePos); isFirstLine = false; } } -- GitLab