|
87 | 87 | */ |
88 | 88 |
|
89 | 89 | import csharp |
90 | | -private import ExternalFlowExtensions as Extensions |
91 | | -private import internal.AccessPathSyntax |
92 | | -private import internal.DataFlowDispatch |
93 | | -private import internal.DataFlowPrivate |
94 | | -private import internal.DataFlowPublic |
95 | | -private import internal.FlowSummaryImpl::Public |
96 | | -private import internal.FlowSummaryImpl::Private::External |
97 | | -private import internal.FlowSummaryImplSpecific |
| 90 | +private import AccessPathSyntax |
| 91 | +private import DataFlowDispatch |
| 92 | +private import DataFlowPrivate |
| 93 | +private import DataFlowPublic |
| 94 | +private import FlowSummaryImpl::Public |
| 95 | +private import FlowSummaryImpl::Private::External |
| 96 | +private import FlowSummaryImplSpecific |
98 | 97 | private import codeql.mad.ModelValidation as SharedModelVal |
99 | 98 |
|
100 | | -/** Holds if a source model exists for the given parameters. */ |
101 | | -predicate sourceModel = Extensions::sourceModel/9; |
| 99 | +/** |
| 100 | + * Holds if a source model exists for the given parameters. |
| 101 | + */ |
| 102 | +extensible predicate sourceModel( |
| 103 | + string namespace, string type, boolean subtypes, string name, string signature, string ext, |
| 104 | + string output, string kind, string provenance |
| 105 | +); |
102 | 106 |
|
103 | | -/** Holds if a sink model exists for the given parameters. */ |
104 | | -predicate sinkModel = Extensions::sinkModel/9; |
| 107 | +/** |
| 108 | + * Holds if a sink model exists for the given parameters. |
| 109 | + */ |
| 110 | +extensible predicate sinkModel( |
| 111 | + string namespace, string type, boolean subtypes, string name, string signature, string ext, |
| 112 | + string input, string kind, string provenance |
| 113 | +); |
105 | 114 |
|
106 | | -/** Holds if a summary model exists for the given parameters. */ |
107 | | -predicate summaryModel = Extensions::summaryModel/10; |
| 115 | +/** |
| 116 | + * Holds if a summary model exists for the given parameters. |
| 117 | + */ |
| 118 | +extensible predicate summaryModel( |
| 119 | + string namespace, string type, boolean subtypes, string name, string signature, string ext, |
| 120 | + string input, string output, string kind, string provenance |
| 121 | +); |
108 | 122 |
|
109 | | -/** Holds if a neutral model exists for the given parameters. */ |
110 | | -predicate neutralModel = Extensions::neutralModel/6; |
| 123 | +/** |
| 124 | + * Holds if a neutral model exists for the given parameters. |
| 125 | + */ |
| 126 | +extensible predicate neutralModel( |
| 127 | + string namespace, string type, string name, string signature, string kind, string provenance |
| 128 | +); |
111 | 129 |
|
112 | 130 | private predicate relevantNamespace(string namespace) { |
113 | 131 | sourceModel(namespace, _, _, _, _, _, _, _, _) or |
|
0 commit comments