Docs / languages · Edit on GitHub

Languages

rgBuilder indexes source through language plugins. Tier metadata: languages.toml.

Contributors adding a language: tier-1-language-support.md.

Tiers

TierHandlerIndexingCFG / PDG / taint
Tier 1Custom LanguagePluginRich symbols + CallsFull when --with-cfg / taint enabled
Tier 2Generic tree-sitterFrom LanguageConfigLimited
Tier 3RegexPattern symbolsNone

Tier 1 (always in the release binary)

LanguageExtensionsNotes
Java.javaStrong golden coverage
Go.go
Rust.rs
Python.py, .pyw
JavaScript.js, .jsx, .mjs
TypeScript.ts, .tsx
C#.cs
C.c, .h
C++.cpp, .cc, .cxx, .hpp, …
rg-build discover . -l java,go,rust
rg-build discover . -e node_modules,target,.git

Config/markup plugins (JSON, YAML, TOML, Markdown, CI, …) add structure nodes; they do not run CFG/PDG. See crates/rgbuilder-config-formats.

Discover depth

FlagsUse
(default)Fast graph + metrics
--with-securitySecret scanning on config-like files
--with-cfgCFG/PDG for slice/inspect/cpg (slower on huge repos)
--with-taintDiscover-time taint (with CFG)
--export-migration-hintsMigration plan JSON
--with-dashboardOptional static UI assets

CLI tips

  • GQL / blast-radius use indexed node names (often bare method names in Java).
  • inspect SYMBOL is a function symbol only (no --class).
  • blast-radius supports --class / --file on collisions.
  • slice --function is the method/function name, not the class.

See User Guide §4.