Package-level declarations

Types

Link copied to clipboard
open class CLanguage : Language<CXXLanguageFrontend> , HasComplexCallResolution, HasStructs, HasFunctionPointers, HasQualifier, HasElaboratedTypeSpecifier, HasShortCircuitOperators

The C language.

Link copied to clipboard
class CPPLanguage : CLanguage, HasDefaultArguments, HasTemplates, HasComplexCallResolution, HasStructs, HasClasses, HasUnknownType

The C++ language.

Link copied to clipboard
abstract class CXXHandler<S : Node, T : Any>(configConstructor: Supplier<S>, lang: CXXLanguageFrontend) : Handler<S, T, CXXLanguageFrontend>
Link copied to clipboard
class CXXLanguageFrontend(language: Language<CXXLanguageFrontend>, ctx: TranslationContext) : LanguageFrontend

The language frontend for translating C/C++ languages into the graph. It uses Eclipse CDT to parse the actual source code into an AST.

Link copied to clipboard
class DeclarationHandler(lang: CXXLanguageFrontend) : CXXHandler<Declaration, IASTDeclaration>

This class is a CXXHandler which takes care of translating C/C++ declarations into Declaration nodes. It heavily relies on its sibling handler, the DeclaratorHandler.

Link copied to clipboard
class DeclaratorHandler(lang: CXXLanguageFrontend) : CXXHandler<Declaration, IASTNameOwner>

Takes care of translating a declarator into a Declaration.

Link copied to clipboard
class ExpressionHandler(lang: CXXLanguageFrontend) : CXXHandler<Expression, IASTInitializerClause>

Note: CDT expresses hierarchies in Interfaces to allow to have multi-inheritance in java. Because some Expressions have sub elements of type IASTInitializerClause and in the hierarchy IASTExpression extends IASTInitializerClause. The later is the appropriate Interface type for the handler.

Link copied to clipboard
class InitializerHandler(lang: CXXLanguageFrontend) : CXXHandler<Expression, IASTInitializer>
Link copied to clipboard
class ParameterDeclarationHandler(lang: CXXLanguageFrontend) : CXXHandler<Declaration, IASTParameterDeclaration>
Link copied to clipboard
class StatementHandler(lang: CXXLanguageFrontend) : CXXHandler<Statement, IASTStatement>

Functions

Link copied to clipboard
fun IASTDeclarator.realName(): Pair<IASTDeclarator, Boolean>

This function returns the real name (declarator) of this IASTDeclarator. The name itself can be wrapped in many layers of nested declarators, e.g., if the name is wrapped in ().