Packages

class AstCreator extends AstCreatorBase with AstForTypesCreator with AstForFunctionsCreator with AstForPrimitivesCreator with AstForStatementsCreator with AstForExpressionsCreator with AstNodeBuilder with AstCreatorHelper with MacroHandler

Translates the Eclipse CDT AST into a CPG AST.

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AstCreator
  2. MacroHandler
  3. AstCreatorHelper
  4. AstNodeBuilder
  5. AstForExpressionsCreator
  6. AstForStatementsCreator
  7. AstForPrimitivesCreator
  8. AstForFunctionsCreator
  9. AstForTypesCreator
  10. AstCreatorBase
  11. AnyRef
  12. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new AstCreator(filename: String, config: Config, cdtAst: IASTTranslationUnit, file2OffsetTable: ConcurrentHashMap[String, Array[Int]])

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def absolutePath(filename: String): String
    Definition Classes
    AstCreator → AstCreatorBase
  5. def annotationAssignmentAst(assignmentValueName: String, code: String, assignmentAst: Ast): Ast
    Definition Classes
    AstCreatorBase
  6. def annotationAst(annotation: NewAnnotation, children: Seq[Ast]): Ast
    Definition Classes
    AstCreatorBase
  7. def asChildOfMacroCall(node: IASTNode, ast: Ast): Ast

    For the given node, determine if it is expanded from a macro, and if so, create a Call node to represent the macro invocation and attach ast as its child.

    For the given node, determine if it is expanded from a macro, and if so, create a Call node to represent the macro invocation and attach ast as its child.

    Definition Classes
    MacroHandler
  8. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  9. def astForASMDeclaration(asm: IASTASMDeclaration): Ast
    Attributes
    protected
    Definition Classes
    AstForTypesCreator
  10. def astForAliasDeclaration(aliasDeclaration: ICPPASTAliasDeclaration): Ast
    Attributes
    protected
    Definition Classes
    AstForTypesCreator
  11. def astForArrayModifier(arrMod: IASTArrayModifier): Ast
    Attributes
    protected
    Definition Classes
    AstForPrimitivesCreator
  12. def astForBlockStatement(blockStmt: IASTCompoundStatement, order: Int = -1): Ast
    Attributes
    protected
    Definition Classes
    AstForStatementsCreator
  13. def astForComment(comment: IASTComment): Ast
    Attributes
    protected
    Definition Classes
    AstForPrimitivesCreator
  14. def astForDeclarator(declaration: IASTSimpleDeclaration, declarator: IASTDeclarator, index: Int): Ast
    Attributes
    protected
    Definition Classes
    AstForTypesCreator
  15. def astForExpression(expression: IASTExpression): Ast
    Attributes
    protected
    Definition Classes
    AstForExpressionsCreator
  16. def astForFieldReference(fieldRef: IASTFieldReference): Ast
    Attributes
    protected
    Definition Classes
    AstForPrimitivesCreator
  17. def astForFunctionDeclarator(funcDecl: IASTFunctionDeclarator): Ast
    Attributes
    protected
    Definition Classes
    AstForFunctionsCreator
  18. def astForFunctionDefinition(funcDef: IASTFunctionDefinition): Ast
    Attributes
    protected
    Definition Classes
    AstForFunctionsCreator
  19. def astForIdentifier(ident: IASTNode): Ast
    Attributes
    protected
    Definition Classes
    AstForPrimitivesCreator
  20. def astForInitializer(declarator: IASTDeclarator, init: IASTInitializer): Ast
    Attributes
    protected
    Definition Classes
    AstForTypesCreator
  21. def astForInitializerList(l: IASTInitializerList): Ast
    Attributes
    protected
    Definition Classes
    AstForPrimitivesCreator
  22. def astForLiteral(lit: IASTLiteralExpression): Ast
    Attributes
    protected
    Definition Classes
    AstForPrimitivesCreator
  23. def astForMethodRefForLambda(lambdaExpression: ICPPASTLambdaExpression): Ast
    Attributes
    protected
    Definition Classes
    AstForFunctionsCreator
  24. def astForNamespaceAlias(namespaceAlias: ICPPASTNamespaceAlias): Ast
    Attributes
    protected
    Definition Classes
    AstForTypesCreator
  25. def astForNode(node: IASTNode): Ast
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  26. def astForQualifiedName(qualId: CPPASTQualifiedName): Ast
    Attributes
    protected
    Definition Classes
    AstForPrimitivesCreator
  27. def astForStaticAssert(a: ICPPASTStaticAssertDeclaration): Ast
    Attributes
    protected
    Definition Classes
    AstForExpressionsCreator
  28. def astsForDeclaration(decl: IASTDeclaration): Seq[Ast]
    Attributes
    protected
    Definition Classes
    AstForTypesCreator
  29. def astsForStatement(statement: IASTStatement, argIndex: Int = -1): Seq[Ast]
    Attributes
    protected
    Definition Classes
    AstForStatementsCreator
  30. def blockAst(blockNode: NewBlock, statements: List[Ast]): Ast
    Definition Classes
    AstCreatorBase
  31. def callAst(callNode: NewCall, arguments: Seq[Ast], base: Option[Ast], receiver: Option[Ast]): Ast
    Definition Classes
    AstCreatorBase
  32. val cdtAst: IASTTranslationUnit
  33. def cleanType(rawType: String, stripKeywords: Boolean = true): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  34. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  35. def column(node: IASTNode): Option[Int]
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  36. def columnEnd(node: IASTNode): Option[Int]
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  37. val config: Config
  38. def controlStructureAst(controlStructureNode: NewControlStructure, condition: Option[Ast], children: Seq[Ast], placeConditionLast: Boolean): Ast
    Definition Classes
    AstCreatorBase
  39. def createAst(): DiffGraphBuilder
    Definition Classes
    AstCreator → AstCreatorBase
  40. val diffGraph: DiffGraphBuilder
    Definition Classes
    AstCreatorBase
  41. def doWhileAst(condition: Option[Ast], body: Seq[Ast], code: Option[String], lineNumber: Option[Integer], columnNumber: Option[Integer]): Ast
    Definition Classes
    AstCreatorBase
  42. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  43. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  44. val file2OffsetTable: ConcurrentHashMap[String, Array[Int]]
  45. def fileName(node: IASTNode): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  46. val filename: String
  47. def fixQualifiedName(name: String): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  48. def forAst(forNode: NewControlStructure, locals: Seq[Ast], initAsts: Seq[Ast], conditionAsts: Seq[Ast], updateAsts: Seq[Ast], bodyAsts: Seq[Ast]): Ast
    Definition Classes
    AstCreatorBase
  49. def forAst(forNode: NewControlStructure, locals: Seq[Ast], initAsts: Seq[Ast], conditionAsts: Seq[Ast], updateAsts: Seq[Ast], bodyAst: Ast): Ast
    Definition Classes
    AstCreatorBase
  50. def fullName(node: IASTNode): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  51. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  52. def globalNamespaceBlock(): NewNamespaceBlock
    Definition Classes
    AstCreatorBase
  53. def handleUsingDeclaration(usingDecl: ICPPASTUsingDeclaration): Seq[Ast]
    Attributes
    protected
    Definition Classes
    AstForTypesCreator
  54. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  55. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  56. def isQualifiedName(name: String): Boolean
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  57. def lastNameOfQualifiedName(name: String): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  58. def line(node: IASTNode): Option[Int]
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  59. def lineEnd(node: IASTNode): Option[Int]
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  60. val logger: Logger
    Attributes
    protected
  61. def methodAst(method: NewMethod, parameters: Seq[NewMethodParameterIn], body: Ast, methodReturn: NewMethodReturn, modifiers: Seq[NewModifier]): Ast
    Definition Classes
    AstCreatorBase
  62. val methodAstParentStack: Stack[NewNode]
    Attributes
    protected
  63. def methodAstWithAnnotations(method: NewMethod, parameters: Seq[Ast], body: Ast, methodReturn: NewMethodReturn, modifiers: Seq[NewModifier], annotations: Seq[Ast]): Ast
    Definition Classes
    AstCreatorBase
  64. def methodStubAst(method: NewMethod, parameters: Seq[NewMethodParameterIn], methodReturn: NewMethodReturn, modifiers: Seq[NewModifier]): Ast
    Definition Classes
    AstCreatorBase
  65. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  66. def newBlockNode(node: IASTNode, typeFullName: String): NewBlock
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  67. def newCallNode(node: IASTNode, name: String, fullname: String, dispatchType: String, argIndex: Int = -1): NewCall
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  68. def newCommentNode(node: IASTNode, code: String, filename: String): NewComment
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  69. def newControlStructureNode(node: IASTNode, controlStructureType: String, code: String): NewControlStructure
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  70. def newFieldIdentifierNode(node: IASTNode, name: String, code: String): NewFieldIdentifier
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  71. def newIdentifierNode(node: IASTNode, name: String, code: String, typeFullName: String): NewIdentifier
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  72. def newJumpTargetNode(node: IASTNode): NewJumpTarget
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  73. def newLiteralNode(node: IASTNode, code: String, typeFullName: String): NewLiteral
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  74. def newLocalNode(node: IASTNode, name: String, code: String, typeFullName: String): NewLocal
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  75. def newMemberNode(node: IASTNode, name: String, code: String, typeFullName: String): NewMember
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  76. def newMethodNode(node: IASTNode, name: String, code: String, fullName: String, fileName: String, astParentType: Option[String] = None, astParentFullName: Option[String] = None): NewMethod
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  77. def newMethodRefNode(code: String, methodFullName: String, typeFullName: String, node: IASTNode): NewMethodRef
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  78. def newMethodReturnNode(node: IASTNode, typeFullName: String): NewMethodReturn
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  79. def newNamespaceBlockNode(node: IASTNode, name: String, fullname: String, code: String, filename: String): NewNamespaceBlock
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  80. def newParameterInNode(node: IASTNode, name: String, code: String, typeFullName: String, index: Int, evaluationStrategy: String, isVariadic: Boolean): NewMethodParameterIn
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  81. def newReturnNode(node: IASTNode, code: String): NewReturn
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  82. def newTypeDeclNode(node: IASTNode, name: String, fullName: String, filename: String, code: String, astParentType: String = "", astParentFullName: String = "", inherits: Seq[String] = Seq.empty, alias: Option[String] = None): NewTypeDecl
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  83. def newUnknownNode(node: IASTNode): NewUnknown
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  84. def nodeSignature(node: IASTNode): String

    The CDT utility method is unfortunately in a class that is marked as deprecated, however, this is because the CDT team would like to discourage its use but at the same time does not plan to remove this code.

    The CDT utility method is unfortunately in a class that is marked as deprecated, however, this is because the CDT team would like to discourage its use but at the same time does not plan to remove this code.

    Definition Classes
    MacroHandler
    Annotations
    @nowarn()
  85. def notHandledYet(node: IASTNode): Ast
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  86. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  87. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  88. def nullSafeAst(node: IASTStatement, argIndex: Int = -1): Seq[Ast]
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  89. def nullSafeAst(node: IASTExpression): Ast
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  90. def nullSafeAst(node: IASTExpression, argIndex: Int): Ast
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  91. def nullSafeCode(node: IASTNode): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  92. def registerType(typeName: String): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  93. def returnAst(returnNode: NewReturn, arguments: Seq[Ast]): Ast
    Definition Classes
    AstCreatorBase
  94. val scope: Scope[String, (NewNode, String), NewNode]
    Attributes
    protected
  95. def setArgumentIndices(arguments: Seq[Ast]): Unit
    Definition Classes
    AstCreatorBase
  96. def shortName(node: IASTNode): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  97. def staticInitMethodAst(initAsts: List[Ast], fullName: String, signature: Option[String], returnType: String): Ast
    Definition Classes
    AstCreatorBase
  98. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  99. def templateParameters(e: IASTNode): Option[String]
    Attributes
    protected
    Definition Classes
    AstForTypesCreator
  100. def toString(): String
    Definition Classes
    AnyRef → Any
  101. def tryCatchAst(tryNode: NewControlStructure, tryBodyAst: Ast, catchAsts: Seq[Ast], finallyAst: Option[Ast]): Ast
    Definition Classes
    AstCreatorBase
  102. def typeFor(node: IASTNode, stripKeywords: Boolean = true): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
    Annotations
    @nowarn()
  103. def typeForDeclSpecifier(spec: IASTNode, stripKeywords: Boolean = true, index: Int = 0): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  104. def uniqueName(target: String, name: String, fullName: String): (String, String)
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  105. val usingDeclarationMappings: Map[String, String]
    Attributes
    protected
  106. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  107. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  108. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  109. def whileAst(condition: Option[Ast], body: Seq[Ast], code: Option[String], lineNumber: Option[Integer], columnNumber: Option[Integer]): Ast
    Definition Classes
    AstCreatorBase
  110. def withArgumentIndex[T <: ExpressionNew](node: T, argIdxOpt: Option[Int]): T
    Definition Classes
    AstCreatorBase
  111. def withArgumentName[T <: ExpressionNew](node: T, argNameOpt: Option[String]): T
    Definition Classes
    AstCreatorBase
  112. def withIndex[T, X](nodes: Array[T])(f: (T, Int) => X): Seq[X]
    Definition Classes
    AstCreatorBase
  113. def withIndex[T, X](nodes: Seq[T])(f: (T, Int) => X): Seq[X]
    Definition Classes
    AstCreatorBase
  114. def wrapMultipleInBlock(asts: Seq[Ast], lineNumber: Option[Integer]): Ast
    Definition Classes
    AstCreatorBase

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from MacroHandler

Inherited from AstCreatorHelper

Inherited from AstNodeBuilder

Inherited from AstForFunctionsCreator

Inherited from AstForTypesCreator

Inherited from AstCreatorBase

Inherited from AnyRef

Inherited from Any

Ungrouped