Java: Add extensible predicates.

This commit is contained in:
Michael Nebel
2022-11-14 13:00:29 +01:00
parent 7b6f202f23
commit 8e25cac653

View File

@@ -432,6 +432,14 @@ predicate summaryModel(string row) { any(SummaryModelCsv s).row(row) }
/** Holds if `row` is negative summary model. */
predicate negativeSummaryModel(string row) { any(NegativeSummaryModelCsv s).row(row) }
/**
* Holds if a source model exists for the given parameters.
*/
extensible predicate extSourceModel(
string package, 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 package, string type, boolean subtypes, string name, string signature, string ext,
@@ -452,6 +460,12 @@ predicate sourceModel(
)
}
/** Holds if a sink model exists for the given parameters. */
extensible predicate extSinkModel(
string package, 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 package, string type, boolean subtypes, string name, string signature, string ext,
@@ -472,6 +486,12 @@ predicate sinkModel(
)
}
/** Holds if a summary model exists for the given parameters. */
extensible predicate extSummaryModel(
string package, 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 package, string type, boolean subtypes, string name, string signature, string ext,
@@ -499,6 +519,11 @@ predicate summaryModel(
row.splitAt(";", 9) = provenance
}
/** Holds if a summary model exists indicating there is no flow for the given parameters. */
extensible predicate extNegativeSummaryModel(
string package, string type, string name, string signature, string provenance
);
/** Holds if a summary model exists indicating there is no flow for the given parameters. */
predicate negativeSummaryModel(
string package, string type, string name, string signature, string provenance