awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
andreasfertig avatar

andreasfertig/cppinsights

0
View on GitHub↗
4,497 星标·265 分支·C++·MIT·3 次浏览cppinsights.io↗

Cppinsights

cppinsights 是一个 C++ 编译器可视化和静态分析工具,使用 Clang 前端将源代码解析为抽象语法树。它作为一个源到源 (source-to-source) 转换器,重写 C++ 代码,使隐式编译器行为和隐藏操作变得明确且可见。

该工具专门用于展开复杂的语言结构,例如扩展协程的内部机制以可视化挂起和恢复逻辑。它还揭示了模板实例化期间生成的实际代码,并将隐式编译器操作(包括结构化绑定和特殊成员函数)转换为显式源代码表示。

其他功能包括 using 语句的解析以及 C++ 类继承层次结构的结构图生成。

Features

  • C++ Source-to-Source Transformers - Rewrites original C++ code into an expanded version by replacing implicit compiler operations with explicit statements.
  • AST-to-Source Generators - Produces explicit source representations by traversing the Clang abstract syntax tree to reflect lowered language semantics.
  • Compiler Behavior Visualizers - Visualizes how a C++ compiler interprets source code by expanding implicit operations into explicit, readable code.
  • Coroutine Machinery Visualizations - Transforms implicit coroutine suspension and resumption machinery into explicit representations for better understanding.
  • C# Compilers - Transforms C++ source code into explicit representations to reveal hidden compiler operations.
  • C++ Source-to-Source Translators - Rewrites C++ code to make implicit compiler behaviors and hidden operations explicit and visible.
  • Compiler-Integrated AST Parsing - Uses the Clang compiler frontend to parse C++ source code into abstract syntax trees for deep structural inspection.
  • Compiler Behavior Visualizations - Translates hidden compiler behaviors like upcasts and generated functions into visible code representations.
  • Implicit Compiler Action Expansions - Reveals hidden compiler actions like special member functions and implicit conversions through explicit source transformations.
  • C/C++ Static Analysis Tools - Analyzes C++ source code to visualize class hierarchies and expand implicit language constructs.
  • Coroutine Operation Expansions - Transforms implicit coroutine machinery into explicit representations to show suspension and resumption handling.
  • Template Instantiation Debugging - Reveals the actual code generated during the C++ template instantiation process.
  • Compiler Internals Education - Facilitates studying the internal workings of C++ by showing exactly how the compiler transforms high-level syntax.
  • Inheritance Visualizers - Generates structural maps of inheritance to visualize the organization and relationships between classes.
  • Using Statement Resolutions - Expands using statements that bring functions or members from base classes into the current class scope.
  • Structured Binding Expansions - Converts structured binding declarations into equivalent explicit operations to reveal implicit decomposition.
  • 调试与追踪 - Shows source code as the compiler sees it.

Star 历史

andreasfertig/cppinsights 的 Star 历史图表andreasfertig/cppinsights 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Cppinsights 的开源替代方案

相似的开源项目,按与 Cppinsights 的功能重合度排序。
  • javaparser/javaparserjavaparser 的头像

    javaparser/javaparser

    6,053在 GitHub 上查看↗

    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

    Javaabstract-syntax-treeastcode-analysis
    在 GitHub 上查看↗6,053
  • hsutter/cppfronthsutter 的头像

    hsutter/cppfront

    5,964在 GitHub 上查看↗

    cppfront is a C++ language extension frontend and source-to-source translator. It functions as a syntax transformer that converts experimental language extensions into standard compliant C++ code, allowing for the prototyping of new language features within existing build systems. The project provides a translation layer that adds support for pattern matching, contracts, and string interpolation. It includes a metaprogramming tool for compile-time reflection and automated code generation using specialized metafunctions. The system automates several development tasks, including the resolution

    C++
    在 GitHub 上查看↗5,964
  • cppcheck-opensource/cppcheckcppcheck-opensource 的头像

    cppcheck-opensource/cppcheck

    6,660在 GitHub 上查看↗

    Cppcheck is a static analysis tool and linter for C and C++ source code designed to detect programming errors, memory leaks, and security violations without executing the program. It functions as a bug detection engine and quality assurance tool to identify concurrency issues, type cast errors, and compliance with secure coding standards. The project provides a graphical user interface for selecting files and reviewing errors, alongside a linter for enforcing naming conventions and coding standards. It supports the creation of custom analysis rules using regular expressions to identify specif

    C++
    在 GitHub 上查看↗6,660
  • google/blocklygoogle 的头像

    google/blockly

    13,436在 GitHub 上查看↗

    Blockly is a block-based coding library and visual programming editor that allows users to build programs by interlocking graphical blocks. It functions as a visual code generator, translating these arrangements of logic blocks and variables into executable source code for various programming languages. The library provides a framework for creating custom visual programming languages and low-code logic designers. It utilizes an SVG-based UI library to render interactive, draggable elements on a web canvas. The system is designed as an accessible web UI framework with integrated keyboard navi

    JavaScript
    在 GitHub 上查看↗13,436
查看 Cppinsights 的所有 30 个替代方案→

常见问题解答

andreasfertig/cppinsights 是做什么的?

cppinsights 是一个 C++ 编译器可视化和静态分析工具,使用 Clang 前端将源代码解析为抽象语法树。它作为一个源到源 (source-to-source) 转换器,重写 C++ 代码,使隐式编译器行为和隐藏操作变得明确且可见。

andreasfertig/cppinsights 的主要功能有哪些?

andreasfertig/cppinsights 的主要功能包括:C++ Source-to-Source Transformers, AST-to-Source Generators, Compiler Behavior Visualizers, Coroutine Machinery Visualizations, C# Compilers, C++ Source-to-Source Translators, Compiler-Integrated AST Parsing, Compiler Behavior Visualizations。

andreasfertig/cppinsights 有哪些开源替代品?

andreasfertig/cppinsights 的开源替代品包括: javaparser/javaparser — JavaParser is a library that parses Java source code up to version 12 into an Abstract Syntax Tree (AST), enabling… hsutter/cppfront — cppfront is a C++ language extension frontend and source-to-source translator. It functions as a syntax transformer… google/blockly — Blockly is a block-based coding library and visual programming editor that allows users to build programs by… include-what-you-use/include-what-you-use — Include What You Use is a C++ include optimizer and header dependency analyzer. It identifies unused or missing header… cppcheck-opensource/cppcheck — Cppcheck is a static analysis tool and linter for C and C++ source code designed to detect programming errors, memory… maskray/ccls — ccls is a language server providing code completion, navigation, and semantic analysis for C and C++ projects. It…