4 repository-uri
Static analysis to identify variables used before they are defined based on program flow.
Distinct from Linter Global Variable Definitions: Distinct from linter global definitions or collection usage; focuses on definition-before-use flow analysis
Explore 4 awesome GitHub repositories matching software engineering & architecture · Variable Usage Analysis. Refine with filters or upvote what's useful.
mypy is a static type checker for Python that analyzes source code to detect type errors and inconsistencies without executing the program. It functions as a static analysis tool and type inference engine, providing a gradual typing system that allows type hints to be added to a codebase incrementally while maintaining compatibility with dynamic typing. The project distinguishes itself through a combination of performance and precision features. It utilizes a daemon-based incremental checking system and multi-process parallel analysis to manage large codebases, supported by binary cache persi
Identifies variables used before definition based on program control flow to prevent runtime errors.
This project is an ESLint plugin and static analysis tool designed to enforce best practices, prevent bugs, and maintain code quality in React projects. It functions as a specialized JSX linter that analyzes the syntax and structure of components to detect anti-patterns and API misuse. The plugin distinguishes itself by providing deep analysis of React-specific patterns, such as detecting state race conditions, preventing nested component definitions, and identifying unstable references that cause unnecessary re-renders. It also includes security hardening rules to identify vulnerabilities li
Analyzes program flow to identify components or variables used within JSX before they are defined.
cppfront este un frontend de extensie a limbajului C++ și un traducător source-to-source. Acesta funcționează ca un transformator de sintaxă care convertește extensiile experimentale ale limbajului în cod C++ conform standardelor, permițând prototiparea noilor funcționalități ale limbajului în cadrul sistemelor de build existente. Proiectul oferă un strat de traducere care adaugă suport pentru pattern matching, contracte și interpolarea șirurilor. Include un instrument de metaprogramare pentru reflexie la compile-time și generare automată de cod folosind metafuncții specializate. Sistemul automatizează mai multe sarcini de dezvoltare, inclusiv rezolvarea ordinii dependențelor prin declarații forward automate și gestionarea modurilor de transmitere a parametrilor. De asemenea, aplică analiză statică pentru a insera verificarea automată a limitelor și a optimiza gestionarea resurselor prin aplicarea semanticii de mutare (move semantics) la ultimul punct de utilizare al unei variabile. Instrumentul include un mecanism de verificare pentru a se asigura că sursa standard rămâne neschimbată în timpul procesului de traducere, pentru a preveni regresiile de sintaxă.
Automatically inserts bounds checking and move semantics based on static analysis of container sizes and variable lifetimes.
Amber is a transpiler that translates high-level source code into executable shell scripts for Bash, Zsh, and Ksh. It provides a type-safe environment for shell script generation, allowing for static type validation and the creation of standalone executable scripts. The project distinguishes itself through a compilation process that includes tree-shaking import optimization to reduce output size and template-based script wrapping for custom headers and footers. It utilizes a module-based dependency resolution system with visibility controls to manage code reuse across multiple files. The lan
Performs static analysis of control flow to identify unused declarations and constants.