mirror of
https://github.com/github/codeql.git
synced 2026-04-27 09:45:15 +02:00
JS: Deprecate DataFlow::BarrierGuardNode
This commit is contained in:
@@ -367,8 +367,7 @@ abstract private class BarrierGuardNodeInternal extends DataFlow::Node { }
|
||||
* classes as precise as possible: if two subclasses of `BarrierGuardNode` overlap, their
|
||||
* implementations of `blocks` will _both_ apply to any configuration that includes either of them.
|
||||
*/
|
||||
abstract class BarrierGuardNode extends BarrierGuardNodeInternal {
|
||||
// TODO: deprecate this class; currently requires too much refactoring
|
||||
abstract deprecated class BarrierGuardNode extends BarrierGuardNodeInternal {
|
||||
/**
|
||||
* Holds if this node blocks expression `e` provided it evaluates to `outcome`.
|
||||
*
|
||||
|
||||
@@ -63,13 +63,21 @@ module MakeLabeledBarrierGuard<LabeledBarrierGuardSig BaseGuard> {
|
||||
}
|
||||
}
|
||||
|
||||
deprecated private signature predicate isBarrierGuardSig(DataFlow::BarrierGuardNode node);
|
||||
/**
|
||||
* Contains deprecated signatures.
|
||||
*
|
||||
* This module is a workaround for the fact that deprecated signatures can't refer to deprecated classes
|
||||
* without getting a deprecation warning
|
||||
*/
|
||||
deprecated private module DeprecatedSigs {
|
||||
signature predicate isBarrierGuardSig(DataFlow::BarrierGuardNode node);
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts a labeled barrier guard class to a set of nodes to include in an implementation of `isBarrier(node)` and `isBarrier(node, label)`
|
||||
* in a `DataFlow::StateConfigSig` implementation.
|
||||
*/
|
||||
deprecated module MakeLegacyBarrierGuardLabeled<isBarrierGuardSig/1 isBarrierGuard> {
|
||||
deprecated module MakeLegacyBarrierGuardLabeled<DeprecatedSigs::isBarrierGuardSig/1 isBarrierGuard> {
|
||||
final private class FinalNode = DataFlow::Node;
|
||||
|
||||
private class Adapter extends FinalNode instanceof DataFlow::BarrierGuardNode {
|
||||
@@ -100,7 +108,7 @@ deprecated module MakeLegacyBarrierGuardLabeled<isBarrierGuardSig/1 isBarrierGua
|
||||
/**
|
||||
* Converts a barrier guard class to a set of nodes to include in an implementation of `isBarrier(node)` in a `DataFlow::ConfigSig` implementation.
|
||||
*/
|
||||
deprecated module MakeLegacyBarrierGuard<isBarrierGuardSig/1 isBarrierGuard> {
|
||||
deprecated module MakeLegacyBarrierGuard<DeprecatedSigs::isBarrierGuardSig/1 isBarrierGuard> {
|
||||
final private class FinalNode = DataFlow::Node;
|
||||
|
||||
private class Adapter extends FinalNode instanceof DataFlow::BarrierGuardNode {
|
||||
|
||||
Reference in New Issue
Block a user