C++: Update for the provenance changes.

This commit is contained in:
Geoffrey White
2024-04-02 16:14:06 +01:00
parent 57beb73bf7
commit f2ef4ad6ac

View File

@@ -118,11 +118,11 @@ module SourceSinkInterpretationInput implements
* Holds if an external source specification exists for `e` with output specification * Holds if an external source specification exists for `e` with output specification
* `output`, kind `kind`, and provenance `provenance`. * `output`, kind `kind`, and provenance `provenance`.
*/ */
predicate sourceElement(SourceOrSinkElement e, string output, string kind) { predicate sourceElement(SourceOrSinkElement e, string output, string kind, Public::Provenance provenance) {
exists( exists(
string namespace, string type, boolean subtypes, string name, string signature, string ext string namespace, string type, boolean subtypes, string name, string signature, string ext
| |
sourceModel(namespace, type, subtypes, name, signature, ext, output, kind, _) and sourceModel(namespace, type, subtypes, name, signature, ext, output, kind, provenance) and
e = interpretElement(namespace, type, subtypes, name, signature, ext) e = interpretElement(namespace, type, subtypes, name, signature, ext)
) )
} }
@@ -131,11 +131,11 @@ module SourceSinkInterpretationInput implements
* Holds if an external sink specification exists for `e` with input specification * Holds if an external sink specification exists for `e` with input specification
* `input`, kind `kind` and provenance `provenance`. * `input`, kind `kind` and provenance `provenance`.
*/ */
predicate sinkElement(SourceOrSinkElement e, string input, string kind) { predicate sinkElement(SourceOrSinkElement e, string input, string kind, Public::Provenance provenance) {
exists( exists(
string package, string type, boolean subtypes, string name, string signature, string ext string package, string type, boolean subtypes, string name, string signature, string ext
| |
sinkModel(package, type, subtypes, name, signature, ext, input, kind, _) and sinkModel(package, type, subtypes, name, signature, ext, input, kind, provenance) and
e = interpretElement(package, type, subtypes, name, signature, ext) e = interpretElement(package, type, subtypes, name, signature, ext)
) )
} }