Metadata-Version: 2.4
Name: rbtr-lang-java
Version: 2026.9.0.dev0
Summary: rbtr — Java language plugin
Keywords: code-search,code-index,tree-sitter,static-analysis,semantic-search,developer-tools,java
Author: Alejandro Giacometti
Author-email: Alejandro Giacometti <alejandro.giacometti@gmail.com>
License-Expression: MIT
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Java
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Text Processing :: Indexing
Classifier: Typing :: Typed
Requires-Dist: rbtr==2026.9.0.dev0
Requires-Dist: tree-sitter-java
Requires-Python: >=3.13
Project-URL: Homepage, https://github.com/janrito/rbtr
Project-URL: Repository, https://github.com/janrito/rbtr
Project-URL: Documentation, https://github.com/janrito/rbtr/tree/main/packages/rbtr-lang-java#readme
Project-URL: Issues, https://github.com/janrito/rbtr/issues
Project-URL: Changelog, https://github.com/janrito/rbtr/releases
Description-Content-Type: text/markdown

# rbtr-lang-java

Java support for [rbtr]. Optional plugin — install with
`pip install rbtr[java]`.

[rbtr]: https://github.com/janrito/rbtr/tree/main/packages/rbtr#readme

## What it ingests

Java is class-only (no free functions), so extraction is class-centred:

- **Classes** — classes, interfaces, enums, records, annotations.
- **Methods** — methods and constructors, scoped to their type.
- **Variables** — fields (class members are data-scope, captured as
  variables) and enum constants.
- **Imports** — `import` (and `import static`) declarations.

Leading Javadoc (`/** … */`) folds into the symbol's content.

## Chunks produced

```java
public class Formatter {           // class "Formatter"
  private int width;               //   variable "width", scope "Formatter"
  Formatter(int w) { … }           //   method "Formatter", scope "Formatter"
  String format(String s) { … }    //   method "format", scope "Formatter"
}
import java.util.List;             // import, metadata {module: java.util.List}
```

## Embedded / injected chunks

None. Java does not embed other languages.

## Grammar & dependencies

Uses the `tree-sitter-java` grammar. No dependency on other language plugins.
