@@ -85,39 +85,44 @@ DataFlowType getCallbackReturnType(DataFlowType t, ReturnKind rk) {
8585
8686/**
8787 * Holds if an external flow summary exists for `c` with input specification
88- * `input`, output specification `output`, and kind `kind`.
88+ * `input`, output specification `output`, kind `kind`, and a flag `generated`
89+ * stating whether the summary is autogenerated or not.
8990 */
90- predicate summaryElement ( DataFlowCallable c , string input , string output , string kind ) {
91+ predicate summaryElement (
92+ DataFlowCallable c , string input , string output , string kind , boolean generated
93+ ) {
9194 exists (
9295 string namespace , string type , boolean subtypes , string name , string signature , string ext
9396 |
94- summaryModel ( namespace , type , subtypes , name , signature , ext , input , output , kind , _ ) and
97+ summaryModel ( namespace , type , subtypes , name , signature , ext , input , output , kind , generated ) and
9598 c = interpretElement ( namespace , type , subtypes , name , signature , ext )
9699 )
97100}
98101
99102/**
100103 * Holds if an external source specification exists for `e` with output specification
101- * `output` and kind `kind`.
104+ * `output`, kind `kind`, and a flag `generated` stating whether the summary is
105+ * autogenerated or not.
102106 */
103- predicate sourceElement ( Element e , string output , string kind ) {
107+ predicate sourceElement ( Element e , string output , string kind , boolean generated ) {
104108 exists (
105109 string namespace , string type , boolean subtypes , string name , string signature , string ext
106110 |
107- sourceModel ( namespace , type , subtypes , name , signature , ext , output , kind , _ ) and
111+ sourceModel ( namespace , type , subtypes , name , signature , ext , output , kind , generated ) and
108112 e = interpretElement ( namespace , type , subtypes , name , signature , ext )
109113 )
110114}
111115
112116/**
113117 * Holds if an external sink specification exists for `n` with input specification
114- * `input` and kind `kind`.
118+ * `input`, kind `kind` and a flag `generated` stating whether the summary is
119+ * autogenerated or not..
115120 */
116- predicate sinkElement ( Element e , string input , string kind ) {
121+ predicate sinkElement ( Element e , string input , string kind , boolean generated ) {
117122 exists (
118123 string namespace , string type , boolean subtypes , string name , string signature , string ext
119124 |
120- sinkModel ( namespace , type , subtypes , name , signature , ext , input , kind , _ ) and
125+ sinkModel ( namespace , type , subtypes , name , signature , ext , input , kind , generated ) and
121126 e = interpretElement ( namespace , type , subtypes , name , signature , ext )
122127 )
123128}
0 commit comments