4 dépôts
Tools that programmatically modify Java source code by traversing and editing the AST with lexical preservation.
Distinct from Source Code Transformation Engines: Distinct from Source Code Transformation Engines: focuses on Java-specific AST-based transformation with formatting preservation, not general compatibility patching.
Explore 4 awesome GitHub repositories matching programming languages & runtimes · Java Source Code Transformers. Refine with filters or upvote what's useful.
Lombok is a Java annotation processor and boilerplate reduction library designed to automatically generate repetitive source code. It intercepts the compilation process to inject methods and fields directly into Java classes, acting as a source code generator that eliminates the need to manually write common class patterns. The project distinguishes itself through deep integration with the Java compiler and various integrated development environments. It provides IDE plugins that allow editors to recognize and navigate generated methods, preventing false compilation errors and maintaining syn
Reverts automated source code back to standard syntax for tools that do not support shorthand annotations.
google-java-format est un outil de formatage de code Java et d'application de style. Il reformate le code source Java pour qu'il respecte un guide de style standardisé, garantissant une mise en page et une indentation cohérentes sur l'ensemble des projets ou des fichiers individuels. Le projet fonctionne comme un outil de linting dans les pipelines de build pour les workflows d'intégration continue, ainsi que comme plugin de formatage pour IDE afin de remplacer le formatage natif de l'éditeur. Il peut être intégré en tant que bibliothèque de formatage au sein de logiciels de génération de code pour garantir que le code écrit par des machines reste lisible par des humains. L'outil offre des fonctionnalités de réorganisation de l'indentation et de l'espacement du code source, y compris la possibilité d'appliquer le formatage de manière sélective à des plages de lignes spécifiques ou à des diffs modifiés. Il prend en charge l'intégration avec des éditeurs de développement comme Eclipse pour automatiser les mises à jour de mise en page pendant le processus de codage.
Provides a comprehensive engine for formatting Java source code to a standardized layout.
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
Programmatically modifies parsed Java source code by traversing and editing the AST with lexical formatting preservation.
OpenRewrite is an automated refactoring engine and source-to-source migration framework. It uses a lossless semantic tree parser to represent source code as type-aware trees that preserve original whitespace and formatting, enabling precise and deterministic modifications. The project utilizes a declarative refactoring pipeline where sequences of transformations are defined in YAML to resolve breaking changes and technical debt. It features type-aware pattern matching and cross-language model mapping to apply similar refactoring patterns across different programming languages. The framework
Implements a transformation engine that modifies semantic trees while preserving original whitespace and formatting.