langbank /

Identify a file

langbank does not read files. It carries 317 ordered rules across 132 contested extensions so a caller holding the bytes can settle what a filename cannot — and reports which rule fired, not just the verdict.

Try these

Why the evidence matters

“This is C” and “this is C because rule 3 for .h matched” are different claims. A consumer joining this answer to a parse tree or a compiler observation needs the second one: it can tell a confident answer from a fallback, and it can disagree with a specific rule rather than with langbank.

The same call is available without the web page:

langbank_detect::identify("legacy.h", Some(source))
// Ok(Identification { language: cpp, evidence: Content { extension: "h", rule: 1 } })