Useful Links
Computer Science
Programming
Clang Tooling
1. Introduction to Clang and LLVM
2. Clang Tooling Fundamentals
3. Core Compilation Concepts
4. Abstract Syntax Tree
5. Source Code Management
6. Project Setup and Configuration
7. LibTooling Framework
8. AST Navigation Techniques
9. Source Code Modification
10. LibClang Interface
11. Standard Clang Tools
12. Custom clang-tidy Development
13. Advanced Topics
Abstract Syntax Tree
AST Fundamentals
Definition and Purpose
Role in Code Analysis
Role in Code Transformation
Memory Management
AST Structure
Hierarchical Organization
Node Relationships
Tree Traversal Concepts
Core Node Types
Declaration Nodes
Function Declarations
Variable Declarations
Class Declarations
Struct Declarations
Namespace Declarations
Template Declarations
Statement Nodes
Compound Statements
Expression Statements
Control Flow Statements
Declaration Statements
Expression Nodes
Binary Expressions
Unary Expressions
Call Expressions
Literal Expressions
Cast Expressions
Type Nodes
Built-in Types
Pointer Types
Reference Types
Array Types
Function Types
Class Types
Template Types
AST Context
Central Information Repository
Node Lifetime Management
Memory Allocation
Type Information Access
Declaration Queries
Source Location Services
Previous
3. Core Compilation Concepts
Go to top
Next
5. Source Code Management