refactor: extract regex check into a function and lower its precedence

This commit is contained in:
Amaan Qureshi 2024-02-13 02:59:11 -05:00
parent 7dd096c5f7
commit a07f988905
3 changed files with 42 additions and 27 deletions

View file

@ -117,6 +117,16 @@ fn tree_sitter_dir(package_json: &str, name: &str) -> tempfile::TempDir {
fn get_lang_scope(loader: &mut Loader, file_name: &Path) -> Option<String> {
loader
.language_configuration_for_file_name(file_name)
.unwrap()
.and_then(|r| r.1.scope.clone())
.ok()
.and_then(|config| {
if let Some((_, config)) = config {
config.scope.clone()
} else if let Ok(Some((_, config))) =
loader.language_configuration_for_first_line_regex(file_name)
{
config.scope.clone()
} else {
None
}
})
}

View file

@ -79,7 +79,7 @@ pub fn get_tags_config(language_name: &str) -> TagsConfiguration {
}
pub fn get_test_language(name: &str, parser_code: &str, path: Option<&Path>) -> Language {
let src_dir = SCRATCH_DIR.join("src").join(name);
let src_dir = scratch_dir().join("src").join(name);
fs::create_dir_all(&src_dir).unwrap();
let parser_path = src_dir.join("parser.c");