mirror of
https://github.com/github/codeql.git
synced 2026-04-21 06:55:31 +02:00
C#: Use the new shared classes for Source and Sink callables.
This commit is contained in:
@@ -431,20 +431,6 @@ Declaration interpretElement(
|
||||
)
|
||||
}
|
||||
|
||||
/**
|
||||
* A callable where there exists a MaD sink model that applies to it.
|
||||
*/
|
||||
class SinkCallable extends Callable {
|
||||
SinkCallable() { SourceSinkInterpretationInput::sinkElement(this, _, _, _, _) }
|
||||
}
|
||||
|
||||
/**
|
||||
* A callable where there exists a MaD source model that applies to it.
|
||||
*/
|
||||
class SourceCallable extends Callable {
|
||||
SourceCallable() { SourceSinkInterpretationInput::sourceElement(this, _, _, _, _) }
|
||||
}
|
||||
|
||||
cached
|
||||
private module Cached {
|
||||
/**
|
||||
@@ -651,3 +637,33 @@ private class NeutralCallableAdapter extends NeutralCallable {
|
||||
|
||||
override predicate hasProvenance(Provenance provenance) { provenance = provenance_ }
|
||||
}
|
||||
|
||||
/**
|
||||
* A callable where there exists a MaD sink model that applies to it.
|
||||
*/
|
||||
private class SinkModelCallableAdapter extends SinkModelCallable {
|
||||
private Provenance provenance;
|
||||
|
||||
SinkModelCallableAdapter() {
|
||||
SourceSinkInterpretationInput::sinkElement(this, _, _, provenance, _)
|
||||
}
|
||||
|
||||
override predicate hasProvenance(Provenance p) { provenance = p }
|
||||
}
|
||||
|
||||
final class SinkCallable = SinkModelCallable;
|
||||
|
||||
/**
|
||||
* A callable where there exists a MaD source model that applies to it.
|
||||
*/
|
||||
private class SourceModelCallableAdapter extends SourceModelCallable {
|
||||
private Provenance provenance;
|
||||
|
||||
SourceModelCallableAdapter() {
|
||||
SourceSinkInterpretationInput::sourceElement(this, _, _, provenance, _)
|
||||
}
|
||||
|
||||
override predicate hasProvenance(Provenance p) { provenance = p }
|
||||
}
|
||||
|
||||
final class SourceCallable = SourceModelCallable;
|
||||
|
||||
Reference in New Issue
Block a user