From 8e15182b87cc5b7bf07e2479ed4f8ecf9fbade6a Mon Sep 17 00:00:00 2001 From: Claudiu-Vlad Ursache Date: Wed, 16 Aug 2023 12:14:24 +0200 Subject: [PATCH] schema: allow ANNOTATIONs attached to UNKNOWNs (#1732) --- .../generated/nodes/Annotation.scala | 5 +++++ .../codepropertygraph/generated/nodes/Unknown.scala | 13 +++++++++---- .../codepropertygraph/schema/Annotation.scala | 3 +++ 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/domainClasses/src/main/generated/io/shiftleft/codepropertygraph/generated/nodes/Annotation.scala b/domainClasses/src/main/generated/io/shiftleft/codepropertygraph/generated/nodes/Annotation.scala index dac1ea2d8..3d2c29c04 100644 --- a/domainClasses/src/main/generated/io/shiftleft/codepropertygraph/generated/nodes/Annotation.scala +++ b/domainClasses/src/main/generated/io/shiftleft/codepropertygraph/generated/nodes/Annotation.scala @@ -154,6 +154,10 @@ class Annotation(graph_4762: Graph, id_4762: Long /*cf https://github.com/scala/ */ def _typeDeclViaAstIn: overflowdb.traversal.Traversal[TypeDecl] = get()._typeDeclViaAstIn + /** Traverse to UNKNOWN via AST IN edge. + */ + def _unknownViaAstIn: overflowdb.traversal.Traversal[Unknown] = get()._unknownViaAstIn + def cfgIn: Iterator[CfgNode] = get().cfgIn override def _cfgIn = get()._cfgIn @@ -279,6 +283,7 @@ class AnnotationDb(ref: NodeRef[NodeDb]) extends NodeDb(ref) with StoredNode wit astIn.collectAll[MethodParameterIn] def _methodRefViaAstIn: overflowdb.traversal.Traversal[MethodRef] = astIn.collectAll[MethodRef] def _typeDeclViaAstIn: overflowdb.traversal.Traversal[TypeDecl] = astIn.collectAll[TypeDecl] + def _unknownViaAstIn: overflowdb.traversal.Traversal[Unknown] = astIn.collectAll[Unknown] def cfgIn: Iterator[CfgNode] = createAdjacentNodeScalaIteratorByOffSet[CfgNode](3) override def _cfgIn = createAdjacentNodeScalaIteratorByOffSet[StoredNode](3) diff --git a/domainClasses/src/main/generated/io/shiftleft/codepropertygraph/generated/nodes/Unknown.scala b/domainClasses/src/main/generated/io/shiftleft/codepropertygraph/generated/nodes/Unknown.scala index aba9d9903..d6d95c893 100644 --- a/domainClasses/src/main/generated/io/shiftleft/codepropertygraph/generated/nodes/Unknown.scala +++ b/domainClasses/src/main/generated/io/shiftleft/codepropertygraph/generated/nodes/Unknown.scala @@ -165,6 +165,10 @@ class Unknown(graph_4762: Graph, id_4762: Long /*cf https://github.com/scala/bug def astOut: Iterator[AstNode] = get().astOut override def _astOut = get()._astOut + /** Traverse to ANNOTATION via AST OUT edge. + */ + def _annotationViaAstOut: overflowdb.traversal.Traversal[Annotation] = get()._annotationViaAstOut + /** Traverse to BLOCK via AST OUT edge. */ def _blockViaAstOut: overflowdb.traversal.Traversal[Block] = get()._blockViaAstOut @@ -758,10 +762,11 @@ class UnknownDb(ref: NodeRef[NodeDb]) extends NodeDb(ref) with StoredNode with E def argumentOut: Iterator[TemplateDom] = createAdjacentNodeScalaIteratorByOffSet[TemplateDom](0) override def _argumentOut = createAdjacentNodeScalaIteratorByOffSet[StoredNode](0) - def astOut: Iterator[AstNode] = createAdjacentNodeScalaIteratorByOffSet[AstNode](1) - override def _astOut = createAdjacentNodeScalaIteratorByOffSet[StoredNode](1) - def _blockViaAstOut: overflowdb.traversal.Traversal[Block] = astOut.collectAll[Block] - def _callViaAstOut: overflowdb.traversal.Traversal[Call] = astOut.collectAll[Call] + def astOut: Iterator[AstNode] = createAdjacentNodeScalaIteratorByOffSet[AstNode](1) + override def _astOut = createAdjacentNodeScalaIteratorByOffSet[StoredNode](1) + def _annotationViaAstOut: overflowdb.traversal.Traversal[Annotation] = astOut.collectAll[Annotation] + def _blockViaAstOut: overflowdb.traversal.Traversal[Block] = astOut.collectAll[Block] + def _callViaAstOut: overflowdb.traversal.Traversal[Call] = astOut.collectAll[Call] def _controlStructureViaAstOut: overflowdb.traversal.Traversal[ControlStructure] = astOut.collectAll[ControlStructure] def _fieldIdentifierViaAstOut: overflowdb.traversal.Traversal[FieldIdentifier] = astOut.collectAll[FieldIdentifier] def _identifierViaAstOut: overflowdb.traversal.Traversal[Identifier] = astOut.collectAll[Identifier] diff --git a/schema/src/main/scala/io/shiftleft/codepropertygraph/schema/Annotation.scala b/schema/src/main/scala/io/shiftleft/codepropertygraph/schema/Annotation.scala index 70b7c71c8..e9e8c6e21 100644 --- a/schema/src/main/scala/io/shiftleft/codepropertygraph/schema/Annotation.scala +++ b/schema/src/main/scala/io/shiftleft/codepropertygraph/schema/Annotation.scala @@ -111,5 +111,8 @@ object Annotation extends SchemaBase { member .addOutEdge(edge = ast, inNode = annotation) + + unknown + .addOutEdge(edge = ast, inNode = annotation) } }