JS: Move ResolvedPromiseDefinition into StandardLibrary.qll

This commit is contained in:
Asger F
2019-01-17 13:02:03 +00:00
parent fc27b26bd5
commit 882b337c15
2 changed files with 21 additions and 21 deletions

View File

@@ -81,24 +81,3 @@ module Q {
override DataFlow::FunctionNode getExecutor() { result = getCallback(0) }
}
}
/**
* A promise that is resolved with the given value.
*/
abstract class ResolvedPromiseDefinition extends DataFlow::CallNode {
/**
* Gets the value this promise is resolved with.
*/
abstract DataFlow::Node getValue();
}
/**
* A resolved promise created by the standard ECMAScript 2015 `Promise.resolve` function.
*/
class ResolvedES2015PromiseDefinition extends ResolvedPromiseDefinition {
ResolvedES2015PromiseDefinition() {
this = DataFlow::globalVarRef("Promise").getAMemberCall("resolve")
}
override DataFlow::Node getValue() { result = getArgument(0) }
}

View File

@@ -139,6 +139,27 @@ private class ES2015PromiseDefinition extends PromiseDefinition, DataFlow::NewNo
override DataFlow::FunctionNode getExecutor() { result = getCallback(0) }
}
/**
* A promise that is resolved with the given value.
*/
abstract class ResolvedPromiseDefinition extends DataFlow::CallNode {
/**
* Gets the value this promise is resolved with.
*/
abstract DataFlow::Node getValue();
}
/**
* A resolved promise created by the standard ECMAScript 2015 `Promise.resolve` function.
*/
class ResolvedES2015PromiseDefinition extends ResolvedPromiseDefinition {
ResolvedES2015PromiseDefinition() {
this = DataFlow::globalVarRef("Promise").getAMemberCall("resolve")
}
override DataFlow::Node getValue() { result = getArgument(0) }
}
/**
* A data flow edge from a promise reaction to the corresponding handler.
*/