Skip to content

Commit

Permalink
fix compilation now that the PHP wasm parsers are generated
Browse files Browse the repository at this point in the history
  • Loading branch information
ayewo committed Mar 27, 2024
1 parent 83d44e6 commit f27403d
Show file tree
Hide file tree
Showing 5 changed files with 23 additions and 1 deletion.
16 changes: 16 additions & 0 deletions crates/gritmodule/src/patterns_directory.rs
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@ pub struct PatternsDirectory {
sql: BTreeMap<String, String>,
vue: BTreeMap<String, String>,
toml: BTreeMap<String, String>,
php_html: BTreeMap<String, String>,
php_only: BTreeMap<String, String>,
universal: BTreeMap<String, String>,
}

Expand Down Expand Up @@ -80,6 +82,8 @@ impl PatternsDirectory {
sql: BTreeMap::new(),
vue: BTreeMap::new(),
toml: BTreeMap::new(),
php_html: BTreeMap::new(),
php_only: BTreeMap::new(),
universal: BTreeMap::new(),
}
}
Expand Down Expand Up @@ -109,6 +113,8 @@ impl PatternsDirectory {
PatternLanguage::Sql => &mut self.sql,
PatternLanguage::Vue => &mut self.vue,
PatternLanguage::Toml => &mut self.toml,
PatternLanguage::PhpHtml => &mut self.php_html,
PatternLanguage::PhpOnly => &mut self.php_only,
PatternLanguage::Universal => &mut self.universal,
}
}
Expand All @@ -135,6 +141,8 @@ impl PatternsDirectory {
PatternLanguage::Sql => &self.sql,
PatternLanguage::Vue => &self.vue,
PatternLanguage::Toml => &self.toml,
PatternLanguage::PhpHtml => &self.php_html,
PatternLanguage::PhpOnly => &self.php_only,
PatternLanguage::Universal => &self.universal,
}
}
Expand Down Expand Up @@ -251,6 +259,14 @@ impl PatternsDirectory {
self.vue = other.vue;
other.toml.extend(mem::take(&mut self.toml));
self.toml = other.toml;
other
.php_html
.extend(mem::take(&mut self.php_html));
self.php_html = other.php_html;
other
.php_only
.extend(mem::take(&mut self.php_only));
self.php_only = other.php_only;
other.universal.extend(mem::take(&mut self.universal));
self.universal = other.universal;
}
Expand Down
1 change: 1 addition & 0 deletions crates/language/src/php_only.rs
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ impl Language for PhpOnly {
fn snippet_context_strings(&self) -> &[(&'static str, &'static str)] {
&[
("", ""),
("", ";"),
("GRIT_VAR = ", ";"),
("class GRIT_CLASS { ", " }"),
("class GRIT_CLASS { ", " GRIT_FUNCTION() {} }"),
Expand Down
3 changes: 2 additions & 1 deletion crates/language/src/target_language.rs
Original file line number Diff line number Diff line change
Expand Up @@ -347,7 +347,7 @@ impl PatternLanguage {
PatternLanguage::Sql,
PatternLanguage::Vue,
PatternLanguage::Toml,
PatternLanguage::PhpHtml,
PatternLanguage::PhpOnly,
]
}

Expand Down Expand Up @@ -382,6 +382,7 @@ impl PatternLanguage {
PatternLanguage::Sql => Ok(TargetLanguage::Sql(Sql::new(Some(lang)))),
PatternLanguage::Vue => Ok(TargetLanguage::Vue(Vue::new(Some(lang)))),
PatternLanguage::Toml => Ok(TargetLanguage::Toml(Toml::new(Some(lang)))),
PatternLanguage::PhpOnly => Ok(TargetLanguage::PhpOnly(Toml::new(Some(lang)))),
PatternLanguage::Universal => Err("Cannot convert universal to TSLang".to_string()),
}
}
Expand Down
2 changes: 2 additions & 0 deletions crates/lsp/src/language.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ pub fn language_id_to_pattern_language(language_id: &str) -> Option<PatternLangu
"sql" => Some(PatternLanguage::Sql),
"vue" => Some(PatternLanguage::Vue),
"toml" => Some(PatternLanguage::Toml),
"php" => Some(PatternLanguage::PhpOnly),
_ => None,
}
}
Expand Down Expand Up @@ -48,6 +49,7 @@ pub fn target_language_to_language_id(target_language: TargetLanguage) -> &'stat
TargetLanguage::Sql(_) => "sql",
TargetLanguage::Vue(_) => "vue",
TargetLanguage::Toml(_) => "toml",
TargetLanguage::PhpHtml(_) | TargetLanguage::PhpOnly(_) => "php",
}
}

Expand Down
2 changes: 2 additions & 0 deletions crates/wasm-bindings/src/match_pattern.rs
Original file line number Diff line number Diff line change
Expand Up @@ -355,6 +355,8 @@ fn pattern_language_to_path(lang: &PatternLanguage) -> Result<String, JsError> {
PatternLanguage::Sql => Ok("/tree-sitter-sql.wasm"),
PatternLanguage::Vue => Ok("/tree-sitter-vue.wasm"),
PatternLanguage::Toml => Ok("/tree-sitter-toml.wasm"),
PatternLanguage::PhpHtml => Ok("/tree-sitter-php.wasm"),
PatternLanguage::PhpOnly => Ok("/tree-sitter-php_only.wasm"),
PatternLanguage::Universal => Err(JsError::new("Universal does not have a parser")),
}?;
let final_file = format!("{}{}", get_parser_path(), wasm_file);
Expand Down

0 comments on commit f27403d

Please sign in to comment.