normalize_languages/
lib.rs1pub mod ast_grep;
38pub mod c_cpp;
39mod component;
40pub mod ecmascript;
41pub mod external_packages;
42pub mod ffi;
43mod grammar_loader;
44mod registry;
45mod traits;
46
47#[cfg(feature = "lang-ada")]
49pub mod ada;
50#[cfg(feature = "lang-agda")]
51pub mod agda;
52#[cfg(feature = "lang-asciidoc")]
53pub mod asciidoc;
54#[cfg(feature = "lang-asm")]
55pub mod asm;
56#[cfg(feature = "lang-awk")]
57pub mod awk;
58#[cfg(feature = "lang-bash")]
59pub mod bash;
60#[cfg(feature = "lang-batch")]
61pub mod batch;
62#[cfg(feature = "lang-c")]
63pub mod c;
64#[cfg(feature = "lang-caddy")]
65pub mod caddy;
66#[cfg(feature = "lang-capnp")]
67pub mod capnp;
68#[cfg(feature = "lang-clojure")]
69pub mod clojure;
70#[cfg(feature = "lang-cmake")]
71pub mod cmake;
72#[cfg(feature = "lang-commonlisp")]
73pub mod commonlisp;
74#[cfg(feature = "lang-cpp")]
75pub mod cpp;
76#[cfg(feature = "lang-csharp")]
77pub mod csharp;
78#[cfg(feature = "lang-css")]
79pub mod css;
80#[cfg(feature = "lang-d")]
81pub mod d;
82#[cfg(feature = "lang-dart")]
83pub mod dart;
84#[cfg(feature = "lang-devicetree")]
85pub mod devicetree;
86#[cfg(feature = "lang-diff")]
87pub mod diff;
88#[cfg(feature = "lang-dockerfile")]
89pub mod dockerfile;
90#[cfg(feature = "lang-dot")]
91pub mod dot;
92#[cfg(feature = "lang-elisp")]
93pub mod elisp;
94#[cfg(feature = "lang-elixir")]
95pub mod elixir;
96#[cfg(feature = "lang-elm")]
97pub mod elm;
98#[cfg(feature = "lang-erlang")]
99pub mod erlang;
100#[cfg(feature = "lang-fish")]
101pub mod fish;
102#[cfg(feature = "lang-fsharp")]
103pub mod fsharp;
104#[cfg(feature = "lang-gleam")]
105pub mod gleam;
106#[cfg(feature = "lang-glsl")]
107pub mod glsl;
108#[cfg(feature = "lang-go")]
109pub mod go;
110#[cfg(feature = "lang-graphql")]
111pub mod graphql;
112#[cfg(feature = "lang-groovy")]
113pub mod groovy;
114#[cfg(feature = "lang-haskell")]
115pub mod haskell;
116#[cfg(feature = "lang-hcl")]
117pub mod hcl;
118#[cfg(feature = "lang-hlsl")]
119pub mod hlsl;
120#[cfg(feature = "lang-html")]
121pub mod html;
122#[cfg(feature = "lang-idris")]
123pub mod idris;
124#[cfg(feature = "lang-ini")]
125pub mod ini;
126#[cfg(feature = "lang-java")]
127pub mod java;
128#[cfg(feature = "lang-javascript")]
129pub mod javascript;
130#[cfg(feature = "lang-jinja2")]
131pub mod jinja2;
132#[cfg(feature = "lang-jq")]
133pub mod jq;
134#[cfg(feature = "lang-json")]
135pub mod json;
136#[cfg(feature = "lang-julia")]
137pub mod julia;
138#[cfg(feature = "lang-kdl")]
139pub mod kdl;
140#[cfg(feature = "lang-kotlin")]
141pub mod kotlin;
142#[cfg(feature = "lang-lean")]
143pub mod lean;
144#[cfg(feature = "lang-lua")]
145pub mod lua;
146#[cfg(feature = "lang-markdown")]
147pub mod markdown;
148#[cfg(feature = "lang-matlab")]
149pub mod matlab;
150#[cfg(feature = "lang-meson")]
151pub mod meson;
152#[cfg(feature = "lang-nginx")]
153pub mod nginx;
154#[cfg(feature = "lang-ninja")]
155pub mod ninja;
156#[cfg(feature = "lang-nix")]
157pub mod nix;
158#[cfg(feature = "lang-objc")]
159pub mod objc;
160#[cfg(feature = "lang-ocaml")]
161pub mod ocaml;
162#[cfg(feature = "lang-perl")]
163pub mod perl;
164#[cfg(feature = "lang-php")]
165pub mod php;
166#[cfg(feature = "lang-postscript")]
167pub mod postscript;
168#[cfg(feature = "lang-powershell")]
169pub mod powershell;
170#[cfg(feature = "lang-prolog")]
171pub mod prolog;
172#[cfg(feature = "lang-python")]
173pub mod python;
174#[cfg(feature = "lang-query")]
175pub mod query;
176#[cfg(feature = "lang-r")]
177pub mod r;
178#[cfg(feature = "lang-rescript")]
179pub mod rescript;
180#[cfg(feature = "lang-ron")]
181pub mod ron;
182#[cfg(feature = "lang-ruby")]
183pub mod ruby;
184#[cfg(feature = "lang-rust")]
185pub mod rust;
186#[cfg(feature = "lang-scala")]
187pub mod scala;
188#[cfg(feature = "lang-scheme")]
189pub mod scheme;
190#[cfg(feature = "lang-scss")]
191pub mod scss;
192#[cfg(feature = "lang-sparql")]
193pub mod sparql;
194#[cfg(feature = "lang-sql")]
195pub mod sql;
196#[cfg(feature = "lang-sshconfig")]
197pub mod sshconfig;
198#[cfg(feature = "lang-starlark")]
199pub mod starlark;
200#[cfg(feature = "lang-svelte")]
201pub mod svelte;
202#[cfg(feature = "lang-swift")]
203pub mod swift;
204#[cfg(feature = "lang-textproto")]
205pub mod textproto;
206#[cfg(feature = "lang-thrift")]
207pub mod thrift;
208#[cfg(feature = "lang-tlaplus")]
209pub mod tlaplus;
210#[cfg(feature = "lang-toml")]
211pub mod toml;
212#[cfg(feature = "lang-typescript")]
213pub mod typescript;
214#[cfg(feature = "lang-typst")]
215pub mod typst;
216#[cfg(feature = "lang-uiua")]
217pub mod uiua;
218#[cfg(feature = "lang-vb")]
219pub mod vb;
220#[cfg(feature = "lang-verilog")]
221pub mod verilog;
222#[cfg(feature = "lang-vhdl")]
223pub mod vhdl;
224#[cfg(feature = "lang-vim")]
225pub mod vim;
226#[cfg(feature = "lang-vue")]
227pub mod vue;
228#[cfg(feature = "lang-wit")]
229pub mod wit;
230#[cfg(feature = "lang-x86asm")]
231pub mod x86asm;
232#[cfg(feature = "lang-xml")]
233pub mod xml;
234#[cfg(feature = "lang-yaml")]
235pub mod yaml;
236#[cfg(feature = "lang-yuri")]
237pub mod yuri;
238#[cfg(feature = "lang-zig")]
239pub mod zig;
240#[cfg(feature = "lang-zsh")]
241pub mod zsh;
242
243pub use grammar_loader::GrammarLoader;
245pub use registry::{
246 register, support_for_extension, support_for_grammar, support_for_path, supported_languages,
247 validate_unused_kinds_audit,
248};
249pub use traits::{
250 EmbeddedBlock, Export, Import, Language, PackageSource, PackageSourceKind, Symbol, SymbolKind,
251 Visibility, VisibilityMechanism, has_extension, simple_function_symbol, simple_symbol,
252 skip_dotfiles,
253};
254
255#[cfg(feature = "lang-ada")]
257pub use ada::Ada;
258#[cfg(feature = "lang-agda")]
259pub use agda::Agda;
260#[cfg(feature = "lang-asciidoc")]
261pub use asciidoc::AsciiDoc;
262#[cfg(feature = "lang-asm")]
263pub use asm::Asm;
264#[cfg(feature = "lang-awk")]
265pub use awk::Awk;
266#[cfg(feature = "lang-bash")]
267pub use bash::Bash;
268#[cfg(feature = "lang-batch")]
269pub use batch::Batch;
270#[cfg(feature = "lang-c")]
271pub use c::C;
272#[cfg(feature = "lang-caddy")]
273pub use caddy::Caddy;
274#[cfg(feature = "lang-capnp")]
275pub use capnp::Capnp;
276#[cfg(feature = "lang-clojure")]
277pub use clojure::Clojure;
278#[cfg(feature = "lang-cmake")]
279pub use cmake::CMake;
280#[cfg(feature = "lang-commonlisp")]
281pub use commonlisp::CommonLisp;
282#[cfg(feature = "lang-cpp")]
283pub use cpp::Cpp;
284#[cfg(feature = "lang-csharp")]
285pub use csharp::CSharp;
286#[cfg(feature = "lang-css")]
287pub use css::Css;
288#[cfg(feature = "lang-d")]
289pub use d::D;
290#[cfg(feature = "lang-dart")]
291pub use dart::Dart;
292#[cfg(feature = "lang-devicetree")]
293pub use devicetree::DeviceTree;
294#[cfg(feature = "lang-diff")]
295pub use diff::Diff;
296#[cfg(feature = "lang-dockerfile")]
297pub use dockerfile::Dockerfile;
298#[cfg(feature = "lang-dot")]
299pub use dot::Dot;
300#[cfg(feature = "lang-elisp")]
301pub use elisp::Elisp;
302#[cfg(feature = "lang-elixir")]
303pub use elixir::Elixir;
304#[cfg(feature = "lang-elm")]
305pub use elm::Elm;
306#[cfg(feature = "lang-erlang")]
307pub use erlang::Erlang;
308#[cfg(feature = "lang-fish")]
309pub use fish::Fish;
310#[cfg(feature = "lang-fsharp")]
311pub use fsharp::FSharp;
312#[cfg(feature = "lang-gleam")]
313pub use gleam::Gleam;
314#[cfg(feature = "lang-glsl")]
315pub use glsl::Glsl;
316#[cfg(feature = "lang-go")]
317pub use go::Go;
318#[cfg(feature = "lang-graphql")]
319pub use graphql::GraphQL;
320#[cfg(feature = "lang-groovy")]
321pub use groovy::Groovy;
322#[cfg(feature = "lang-haskell")]
323pub use haskell::Haskell;
324#[cfg(feature = "lang-hcl")]
325pub use hcl::Hcl;
326#[cfg(feature = "lang-hlsl")]
327pub use hlsl::Hlsl;
328#[cfg(feature = "lang-html")]
329pub use html::Html;
330#[cfg(feature = "lang-idris")]
331pub use idris::Idris;
332#[cfg(feature = "lang-ini")]
333pub use ini::Ini;
334#[cfg(feature = "lang-java")]
335pub use java::Java;
336#[cfg(feature = "lang-javascript")]
337pub use javascript::JavaScript;
338#[cfg(feature = "lang-jinja2")]
339pub use jinja2::Jinja2;
340#[cfg(feature = "lang-jq")]
341pub use jq::Jq;
342#[cfg(feature = "lang-json")]
343pub use json::Json;
344#[cfg(feature = "lang-julia")]
345pub use julia::Julia;
346#[cfg(feature = "lang-kdl")]
347pub use kdl::Kdl;
348#[cfg(feature = "lang-kotlin")]
349pub use kotlin::Kotlin;
350#[cfg(feature = "lang-lean")]
351pub use lean::Lean;
352#[cfg(feature = "lang-lua")]
353pub use lua::Lua;
354#[cfg(feature = "lang-markdown")]
355pub use markdown::Markdown;
356#[cfg(feature = "lang-matlab")]
357pub use matlab::Matlab;
358#[cfg(feature = "lang-meson")]
359pub use meson::Meson;
360#[cfg(feature = "lang-nginx")]
361pub use nginx::Nginx;
362#[cfg(feature = "lang-ninja")]
363pub use ninja::Ninja;
364#[cfg(feature = "lang-nix")]
365pub use nix::Nix;
366#[cfg(feature = "lang-objc")]
367pub use objc::ObjC;
368#[cfg(feature = "lang-ocaml")]
369pub use ocaml::OCaml;
370#[cfg(feature = "lang-perl")]
371pub use perl::Perl;
372#[cfg(feature = "lang-php")]
373pub use php::Php;
374#[cfg(feature = "lang-postscript")]
375pub use postscript::PostScript;
376#[cfg(feature = "lang-powershell")]
377pub use powershell::PowerShell;
378#[cfg(feature = "lang-prolog")]
379pub use prolog::Prolog;
380#[cfg(feature = "lang-python")]
381pub use python::Python;
382#[cfg(feature = "lang-query")]
383pub use query::Query;
384#[cfg(feature = "lang-r")]
385pub use r::R;
386#[cfg(feature = "lang-rescript")]
387pub use rescript::ReScript;
388#[cfg(feature = "lang-ron")]
389pub use ron::Ron;
390#[cfg(feature = "lang-ruby")]
391pub use ruby::Ruby;
392#[cfg(feature = "lang-rust")]
393pub use rust::Rust;
394#[cfg(feature = "lang-scala")]
395pub use scala::Scala;
396#[cfg(feature = "lang-scheme")]
397pub use scheme::Scheme;
398#[cfg(feature = "lang-scss")]
399pub use scss::Scss;
400#[cfg(feature = "lang-sparql")]
401pub use sparql::Sparql;
402#[cfg(feature = "lang-sql")]
403pub use sql::Sql;
404#[cfg(feature = "lang-sshconfig")]
405pub use sshconfig::SshConfig;
406#[cfg(feature = "lang-starlark")]
407pub use starlark::Starlark;
408#[cfg(feature = "lang-svelte")]
409pub use svelte::Svelte;
410#[cfg(feature = "lang-swift")]
411pub use swift::Swift;
412#[cfg(feature = "lang-textproto")]
413pub use textproto::TextProto;
414#[cfg(feature = "lang-thrift")]
415pub use thrift::Thrift;
416#[cfg(feature = "lang-tlaplus")]
417pub use tlaplus::TlaPlus;
418#[cfg(feature = "lang-toml")]
419pub use toml::Toml;
420#[cfg(feature = "lang-typescript")]
421pub use typescript::{Tsx, TypeScript};
422#[cfg(feature = "lang-typst")]
423pub use typst::Typst;
424#[cfg(feature = "lang-uiua")]
425pub use uiua::Uiua;
426#[cfg(feature = "lang-vb")]
427pub use vb::VB;
428#[cfg(feature = "lang-verilog")]
429pub use verilog::Verilog;
430#[cfg(feature = "lang-vhdl")]
431pub use vhdl::Vhdl;
432#[cfg(feature = "lang-vim")]
433pub use vim::Vim;
434#[cfg(feature = "lang-vue")]
435pub use vue::Vue;
436#[cfg(feature = "lang-wit")]
437pub use wit::Wit;
438#[cfg(feature = "lang-x86asm")]
439pub use x86asm::X86Asm;
440#[cfg(feature = "lang-xml")]
441pub use xml::Xml;
442#[cfg(feature = "lang-yaml")]
443pub use yaml::Yaml;
444#[cfg(feature = "lang-yuri")]
445pub use yuri::Yuri;
446#[cfg(feature = "lang-zig")]
447pub use zig::Zig;
448#[cfg(feature = "lang-zsh")]
449pub use zsh::Zsh;