Metadata-Version: 2.4
Name: rbtr-lang-c
Version: 2026.9.0.dev3
Summary: rbtr — C language plugin
Keywords: code-search,code-index,tree-sitter,static-analysis,semantic-search,developer-tools,c
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 :: C
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.dev3
Requires-Dist: tree-sitter-c
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-c#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-c

C support for [rbtr]. A **default** plugin — installed with rbtr
itself (`pip install rbtr`).

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

## What it ingests

- **Functions** — function definitions and prototypes.
- **Classes** — `struct` / `enum` / `union` and `typedef` types (a
  `typedef struct G G;` yields two: the definition and the alias).
- **Variables** — top-level variables and enum constants (C enum constants
  leak into the enclosing scope, so they are file-scope variables).
- **Imports** — `#include <system>` and `#include "local"` headers.

## Chunks produced

```c
void greet(const char *name);      /* function "greet"          */
struct Point { int x, y; };        /* class "Point"             */
enum Color { RED, GREEN };         /* class "Color"; variables RED, GREEN */
#include <stdio.h>                 /* import, metadata {module: stdio.h}   */
#include "greeter.h"               /* import, metadata {module: greeter.h} */
```

## Embedded / injected chunks

None. C does not embed other languages.

## Grammar & dependencies

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