C#: Rename the extensible predicates related to external flow.

This commit is contained in:
Michael Nebel
2022-12-13 15:14:46 +01:00
parent 6023a1225c
commit 6d7401de7d
2 changed files with 40 additions and 33 deletions

View File

@@ -82,6 +82,7 @@
*/
import csharp
private import ExternalFlowExtensions as Extensions
private import internal.AccessPathSyntax
private import internal.DataFlowDispatch
private import internal.DataFlowPrivate
@@ -138,14 +139,6 @@ private predicate summaryModelInternal(string row) { any(SummaryModelCsvInternal
private predicate sinkModelInternal(string row) { any(SinkModelCsvInternal s).row(row) }
/**
* Holds if a source model exists for the given parameters.
*/
extensible predicate extSourceModel(
string namespace, string type, boolean subtypes, string name, string signature, string ext,
string output, string kind, string provenance
);
/** Holds if a source model exists for the given parameters. */
predicate sourceModel(
string namespace, string type, boolean subtypes, string name, string signature, string ext,
@@ -165,15 +158,9 @@ predicate sourceModel(
row.splitAt(";", 8) = provenance
)
or
extSourceModel(namespace, type, subtypes, name, signature, ext, output, kind, provenance)
Extensions::sourceModel(namespace, type, subtypes, name, signature, ext, output, kind, provenance)
}
/** Holds if a sink model exists for the given parameters. */
extensible predicate extSinkModel(
string namespace, string type, boolean subtypes, string name, string signature, string ext,
string input, string kind, string provenance
);
/** Holds if a sink model exists for the given parameters. */
predicate sinkModel(
string namespace, string type, boolean subtypes, string name, string signature, string ext,
@@ -193,15 +180,9 @@ predicate sinkModel(
row.splitAt(";", 8) = provenance
)
or
extSinkModel(namespace, type, subtypes, name, signature, ext, input, kind, provenance)
Extensions::sinkModel(namespace, type, subtypes, name, signature, ext, input, kind, provenance)
}
/** Holds if a summary model exists for the given parameters. */
extensible predicate extSummaryModel(
string namespace, string type, boolean subtypes, string name, string signature, string ext,
string input, string output, string kind, string provenance
);
/** Holds if a summary model exists for the given parameters. */
predicate summaryModel(
string namespace, string type, boolean subtypes, string name, string signature, string ext,
@@ -222,20 +203,12 @@ predicate summaryModel(
row.splitAt(";", 9) = provenance
)
or
extSummaryModel(namespace, type, subtypes, name, signature, ext, input, output, kind, provenance)
Extensions::summaryModel(namespace, type, subtypes, name, signature, ext, input, output, kind,
provenance)
}
/** Holds if a model exists indicating there is no flow for the given parameters. */
extensible predicate extNeutralModel(
string namespace, string type, string name, string signature, string provenance
);
/** Holds if a model exists indicating there is no flow for the given parameters. */
predicate neutralModel(
string namespace, string type, string name, string signature, string provenance
) {
extNeutralModel(namespace, type, name, signature, provenance)
}
predicate neutralModel = Extensions::neutralModel/5;
private predicate relevantNamespace(string namespace) {
sourceModel(namespace, _, _, _, _, _, _, _, _) or

View File

@@ -0,0 +1,34 @@
/**
* This module provides extensible predicates for defining MaD models.
*/
/**
* Holds if a source model exists for the given parameters.
*/
extensible predicate sourceModel(
string namespace, string type, boolean subtypes, string name, string signature, string ext,
string output, string kind, string provenance
);
/**
* Holds if a sink model exists for the given parameters.
*/
extensible predicate sinkModel(
string namespace, string type, boolean subtypes, string name, string signature, string ext,
string input, string kind, string provenance
);
/**
* Holds if a summary model exists for the given parameters.
*/
extensible predicate summaryModel(
string namespace, string type, boolean subtypes, string name, string signature, string ext,
string input, string output, string kind, string provenance
);
/**
* Holds if a model exists indicating there is no flow for the given parameters.
*/
extensible predicate neutralModel(
string namespace, string type, string name, string signature, string provenance
);