9 repository-uri
Frameworks for parsing, source generation, and language implementation.
Explore 9 awesome GitHub repositories matching part of an awesome list · Metaprogramming and Compilers. Refine with filters or upvote what's useful.
JavaPoet is a source code generator and metaprogramming utility for the Java language. It functions as an abstract syntax tree construction library that allows developers to model classes, methods, and fields as objects before emitting them as source code. The library distinguishes itself through automatic import management and code formatting. It tracks referenced types to generate required import statements and handles line wrapping, semicolon placement, and indentation to ensure generated files remain readable. The tool covers a broad range of generation capabilities, including the defini
API for generating Java source files.
This project is a Java annotation processing framework and source code generator designed to automate repetitive boilerplate and reduce manual coding errors. It functions as a toolkit for building custom annotation processors that produce source code, metadata, and type definitions during the compilation process. The framework specifically automates the creation of immutable value types with built-in equality and hashing logic, as well as the generation of factory implementations for dependency injection. It also handles the automated production of service provider configuration files to enab
Collection of source code generators for Java.
Error Prone is a static code analyzer and Java compiler extension that identifies common programming mistakes during the build process. It functions as a compiler wrapper that flags potential errors as compile-time failures to prevent bugs from reaching execution. The tool integrates directly into the Java compilation workflow to provide compile-time validation. It allows for the definition of custom linting rules and analysis checks to enforce specific coding standards and detect prohibited API usage. The system utilizes abstract syntax tree analysis and type-aware pattern matching to inspe
Catch common Java mistakes at compile-time.
JavaParser is a library that parses Java source code up to version 12 into an Abstract Syntax Tree (AST), enabling programmatic analysis, transformation, and generation of Java code. It serves as a parser, code analyzer, code generator, comment parser, and symbol resolver, providing a unified toolkit for working with Java source at the AST level. The library distinguishes itself through several integrated capabilities that go beyond basic parsing. It includes a symbol resolution engine that resolves type and symbol references across files for accurate semantic analysis, and an error-recovery
Java 1.8 Parser and Abstract Syntax Tree.
Eta - Modern Haskell on the JVM
Haskell to JVM compiler.
Compile Testing
Testing tools for javac and annotation processors.
Java 8 annotation processor and framework for deriving algebraic data types constructors, pattern-matching, folds, optics and typeclasses.
Algebraic data types and pattern-matching for Java.
The license of this project is Apache 2.0.
Java fork of Parboiled for grammar writing.