CxDOM-Types

The purpose of this project is to explain Checkmarx DOM types with sample code.

More info can be found from Checkmarx Customer Service Community: How to Use Undocumented CxQL Object APIs

Please visit the wiki to learn about the the Checkmarx DOM Types.

Notice

All related information is documented in the wiki pages of this project.

The code repo is just a storage for sample code and pictures.

The strikethrough ones are not used in CxSAST 9.2.

They may be used in futhure releases of CxSAST or CxAST.

DOM Type List

  1. AccessorDecl
  2. AccessorModifiers
  3. ArgumentRef
  4. ArrayCreateExpr
  5. ArrayElementRef
  6. ArrayInitializer
  7. AssemblyReference
  8. AssignExpr
  9. AssignOperator
  10. AssociativeArrayExpr
  11. AssociativeArrayPropertyEntry
  12. AssociativeArrayRegularEntry
  13. AttachDelegateStmt
  14. AttributeTarget
  15. BaseRef
  16. BinaryExpr
  17. BinaryOperator
  18. BooleanLiteral
  19. BreakStmt
  20. BuiltInType
  21. Case
  22. CastExpr
  23. Catch
  24. CharLiteral
  25. CheckedStmt
  26. ClassDecl
  27. CodeCollectionAttribute
  28. CodeElementAttribute
  29. Comment
  30. CommentStmt
  31. ConstantDecl
  32. ConstantDeclStmt
  33. ConstructorDecl
  34. ContinueStmt
  35. CreateDelegateExpr
  36. CustomAttribute
  37. CxXmlNode
  38. Declarator
  39. DelegateDecl
  40. DelegateInvokeExpr
  41. DestructorDecl
  42. DictionaryCreateExpr
  43. DictionaryInitializer
  44. EnumDecl
  45. EnumMemberDecl
  46. EventDecl
  47. EventRef
  48. ExprStmt
  49. FieldDecl
  50. FieldRef
  51. ForEachStmt
  52. FunctionTypeRef
  53. GenericTypeRef
  54. GenericsConstraints
  55. GotoStmt
  56. GraphTypes
  57. IfStmt
  58. Import
  59. IndexerDecl
  60. IndexerRef
  61. IntegerLiteral
  62. InterfaceDecl
  63. IterationStmt
  64. IterationType
  65. LabeledStmt
  66. LambdaExpr
  67. LinePragma
  68. LocalRef
  69. LockStmt
  70. MemberAccess
  71. MemberKind
  72. MethodDecl
  73. MethodInvokeExpr
  74. MethodRef
  75. Modifiers
  76. NamespaceDecl
  77. NullLiteral
  78. ObjectCreateExpr
  79. OperatorDecl
  80. OverloadableOperator
  81. Param
  82. ParamDecl
  83. ParamDirection
  84. PointerTypeRef
  85. PostfixExpr
  86. PostfixOperator
  87. PropertyDecl
  88. PropertyRef
  89. PropertySetValueRef
  90. RankSpecifier
  91. RealLiteral
  92. RemoveDelegateStmt
  93. ReturnStmt
  94. SliceExpression
  95. StringLiteral
  96. StructDecl
  97. SubExpr
  98. SwitchStmt
  99. TernaryExpr
  100. ThisRef
  101. ThrowStmt
  102. TryCatchFinallyStmt
  103. TupleCreateExpr
  104. TupleInitializer
  105. TypeKind
  106. TypeModifiers
  107. TypeOfExpr
  108. TypeRef
  109. UnaryExpr
  110. UnaryOperator
  111. UncheckedStmt
  112. UnknownReference
  113. UsingStmt
  114. VariableDecl
  115. VariableDeclStmt