Skip to content

Latest commit

 

History

History
47 lines (40 loc) · 2.27 KB

File metadata and controls

47 lines (40 loc) · 2.27 KB

Expr is an abstract base class for all expression nodes in the Clang AST. It has several derived classes that represent specific types of expressions.

  • IntegerLiteral: Represents an integer literal.
  • FloatingLiteral: Represents a floating-point literal.
  • StringLiteral: Represents a string literal.
  • CharacterLiteral: Represents a character literal.
  • DeclRefExpr: Represents a reference to a declaration.
  • UnaryOperator: Represents a unary operator.
  • BinaryOperator: Represents a binary operator.
  • CallExpr: Represents a function call.
  • MemberExpr: Represents a member access expression.
  • ArraySubscriptExpr: Represents an array subscript expression.
  • CastExpr: Represents a cast expression.
  • ConditionalOperator: Represents the ternary operator ? :.
  • CXXNewExpr: Represents the new expression in C++.

Stmt is an abstract base class for all statement nodes in the Clang AST. It has several derived classes that represent specific types of statements.

  • ReturnStmt: Represents a return statement.
  • IfStmt: Represents an if statement.
  • WhileStmt: Represents a while loop.
  • ForStmt: Represents a for loop.
  • CompoundStmt: Represents a compound statement (i.parseDecl a block).
  • DeclStmt: Represents a declaration statement.
  • BreakStmt: Represents a break statement.
  • ContinueStmt: Represents a continue statement.
  • GotoStmt: Represents a goto statement.
  • LabelStmt: Represents a label statement.
  • NullStmt: Represents an empty statement (i.parseDecl a semicolon).
  • SwitchStmt: Represents a switch statement.
  • CaseStmt: Represents a case statement.
  • DefaultStmt: Represents a default statement.

Decl is an abstract base class for all declaration nodes in the AST. It has several derived classes that represent specific types of declarations.

  • VarDecl: Represents a variable declaration.
  • FunctionDecl: Represents a function declaration.
  • RecordDecl: Represents a struct or class declaration.
  • FieldDecl: Represents a field (i.parseDecl member variable) declaration.
  • EnumDecl: Represents an enumeration declaration.
  • EnumConstantDecl: Represents an enumeration constant declaration.
  • TypedefDecl: Represents a typedef declaration.
  • NamespaceDecl: Represents a namespace declaration.
  • UsingDecl: Represents a using declaration.
  • UsingDirectiveDecl: Represents a using namespace directive.