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
    AstCreatorBase
  5. 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
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def astForASMDeclaration(asm: IASTASMDeclaration): Ast
    Attributes
    protected
    Definition Classes
    AstForTypesCreator
  8. def astForAliasDeclaration(aliasDeclaration: ICPPASTAliasDeclaration): Ast
    Attributes
    protected
    Definition Classes
    AstForTypesCreator
  9. def astForBlockStatement(blockStmt: IASTCompoundStatement, order: Int = -1): Ast
    Attributes
    protected
    Definition Classes
    AstForStatementsCreator
  10. def astForComment(comment: IASTComment): Ast
    Attributes
    protected
    Definition Classes
    AstForPrimitivesCreator
  11. def astForDeclarator(declaration: IASTSimpleDeclaration, declarator: IASTDeclarator, index: Int): Ast
    Attributes
    protected
    Definition Classes
    AstForTypesCreator
  12. def astForExpression(expression: IASTExpression): Ast
    Attributes
    protected
    Definition Classes
    AstForExpressionsCreator
  13. def astForFakeStaticInitMethod(name: String, lineNumber: Option[Integer], astParentFullName: String, childrenAsts: Seq[Ast]): Ast
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  14. def astForFieldReference(fieldRef: IASTFieldReference): Ast
    Attributes
    protected
    Definition Classes
    AstForPrimitivesCreator
  15. def astForFunctionDeclarator(funcDecl: IASTFunctionDeclarator): Ast
    Attributes
    protected
    Definition Classes
    AstForFunctionsCreator
  16. def astForFunctionDefinition(funcDef: IASTFunctionDefinition): Ast
    Attributes
    protected
    Definition Classes
    AstForFunctionsCreator
  17. def astForIdentifier(ident: IASTNode): Ast
    Attributes
    protected
    Definition Classes
    AstForPrimitivesCreator
  18. def astForInitializer(declarator: IASTDeclarator, init: IASTInitializer): Ast
    Attributes
    protected
    Definition Classes
    AstForTypesCreator
  19. def astForInitializerList(l: IASTInitializerList): Ast
    Attributes
    protected
    Definition Classes
    AstForPrimitivesCreator
  20. def astForLiteral(lit: IASTLiteralExpression): Ast
    Attributes
    protected
    Definition Classes
    AstForPrimitivesCreator
  21. def astForMethodRefForLambda(lambdaExpression: ICPPASTLambdaExpression): Ast
    Attributes
    protected
    Definition Classes
    AstForFunctionsCreator
  22. def astForNamespaceAlias(namespaceAlias: ICPPASTNamespaceAlias): Ast
    Attributes
    protected
    Definition Classes
    AstForTypesCreator
  23. def astForNode(node: IASTNode): Ast
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  24. def astForQualifiedName(qualId: CPPASTQualifiedName): Ast
    Attributes
    protected
    Definition Classes
    AstForPrimitivesCreator
  25. def astForStaticAssert(a: ICPPASTStaticAssertDeclaration): Ast
    Attributes
    protected
    Definition Classes
    AstForExpressionsCreator
  26. def astsForDeclaration(decl: IASTDeclaration): Seq[Ast]
    Attributes
    protected
    Definition Classes
    AstForTypesCreator
  27. def astsForStatement(statement: IASTStatement, argIndex: Int = -1): Seq[Ast]
    Attributes
    protected
    Definition Classes
    AstForStatementsCreator
  28. def blockAst(blockNode: NewBlock, statements: List[Ast]): Ast
    Definition Classes
    AstCreatorBase
  29. def callAst(callNode: NewCall, arguments: Seq[Ast], receiver: Option[Ast], withRecvArgEdge: Boolean): Ast
    Definition Classes
    AstCreatorBase
  30. val cdtAst: IASTTranslationUnit
  31. def cleanType(rawType: String, stripKeywords: Boolean = true): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  32. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  33. def column(node: IASTNode): Option[Integer]
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  34. def columnEnd(node: IASTNode): Option[Integer]
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  35. val config: Config
  36. def controlStructureAst(controlStructureNode: NewControlStructure, condition: Option[Ast], children: List[Ast], placeConditionLast: Boolean): Ast
    Definition Classes
    AstCreatorBase
  37. def createAst(): DiffGraphBuilder
    Definition Classes
    AstCreator → AstCreatorBase
  38. val diffGraph: DiffGraphBuilder
    Definition Classes
    AstCreatorBase
  39. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  40. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  41. def expandedFromMacro(node: IASTNode): Option[IASTMacroExpansionLocation]
    Definition Classes
    MacroHandler
  42. val file2OffsetTable: ConcurrentHashMap[String, Array[Int]]
  43. def fileName(node: IASTNode): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  44. val filename: String
  45. def fixQualifiedName(name: String): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  46. def fullName(node: IASTNode): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  47. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  48. def globalNamespaceBlock(): NewNamespaceBlock
    Definition Classes
    AstCreatorBase
  49. def handleUsingDeclaration(usingDecl: ICPPASTUsingDeclaration): Seq[Ast]
    Attributes
    protected
    Definition Classes
    AstForTypesCreator
  50. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  51. def isExpandedFromMacro(node: IASTNode): Boolean
    Definition Classes
    MacroHandler
  52. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  53. def isQualifiedName(name: String): Boolean
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  54. def lastNameOfQualifiedName(name: String): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  55. def line(node: IASTNode): Option[Integer]
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  56. def lineEnd(node: IASTNode): Option[Integer]
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  57. val logger: Logger
    Attributes
    protected
  58. def methodAst(method: NewMethod, parameters: Seq[NewMethodParameterIn], body: Ast, methodReturn: NewMethodReturn, modifiers: Seq[NewModifier]): Ast
    Definition Classes
    AstCreatorBase
  59. val methodAstParentStack: Stack[NewNode]
    Attributes
    protected
  60. def methodAstWithAnnotations(method: NewMethod, parameters: Seq[Ast], body: Ast, methodReturn: NewMethodReturn, modifiers: Seq[NewModifier], annotations: Seq[Ast]): Ast
    Definition Classes
    AstCreatorBase
  61. def methodReturnNode(tfn: String, dtfn: Option[String], line: Option[Integer], column: Option[Integer]): NewMethodReturn
    Definition Classes
    AstCreatorBase
  62. def methodStubAst(method: NewMethod, parameters: Seq[NewMethodParameterIn], methodReturn: NewMethodReturn): Ast
    Definition Classes
    AstCreatorBase
  63. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  64. def newCallNode(node: IASTNode, name: String, fullname: String, dispatchType: String, argIndex: Int = -1): NewCall
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  65. def newControlStructureNode(node: IASTNode, controlStructureType: String, code: String): NewControlStructure
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  66. def newJumpTarget(node: IASTNode): NewJumpTarget
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  67. def newMethodRefNode(code: String, methodFullName: String, typeFullName: String, node: IASTNode): NewMethodRef
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  68. def newTypeDecl(name: String, fullname: String, filename: String, code: String, astParentType: String = "", astParentFullName: String = "", inherits: Seq[String] = Seq.empty, alias: Option[String] = None, line: Option[Integer] = None, column: Option[Integer] = None): NewTypeDecl
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  69. def newUnknown(node: IASTNode): NewUnknown
    Attributes
    protected
    Definition Classes
    AstNodeBuilder
  70. 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()
  71. def notHandledYet(node: IASTNode): Ast
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  72. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  73. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  74. def nullSafeAst(node: IASTStatement, argIndex: Int = -1): Seq[Ast]
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  75. def nullSafeAst(node: IASTExpression): Ast
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  76. def nullSafeAst(node: IASTExpression, argIndex: Int): Ast
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  77. def nullSafeCode(node: IASTNode): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  78. def registerType(typeName: String): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  79. def returnAst(returnNode: NewReturn, arguments: Seq[Ast]): Ast
    Definition Classes
    AstCreatorBase
  80. val scope: Scope[String, (NewNode, String), NewNode]
    Attributes
    protected
  81. def setArgumentIndices(arguments: Seq[Ast]): Unit
    Definition Classes
    AstCreatorBase
  82. def shortName(node: IASTNode): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  83. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  84. def templateParameters(e: IASTNode): Option[String]
    Attributes
    protected
    Definition Classes
    AstForTypesCreator
  85. def toString(): String
    Definition Classes
    AnyRef → Any
  86. def typeFor(node: IASTNode, stripKeywords: Boolean = true): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
    Annotations
    @nowarn()
  87. def typeForDeclSpecifier(spec: IASTNode, stripKeywords: Boolean = true, index: Int = 0): String
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  88. def uniqueName(target: String, name: String, fullName: String): (String, String)
    Attributes
    protected
    Definition Classes
    AstCreatorHelper
  89. val usingDeclarationMappings: Map[String, String]
    Attributes
    protected
  90. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  91. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  92. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  93. def withArgumentIndex[T <: ExpressionNew](node: T, argIdxOpt: Option[Int]): T
    Definition Classes
    AstCreatorBase
  94. def withIndex[T, X](nodes: Array[T])(f: (T, Int) => X): Seq[X]
    Definition Classes
    AstCreatorBase
  95. def withIndex[T, X](nodes: Seq[T])(f: (T, Int) => X): Seq[X]
    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