mirror of
https://github.com/github/codeql.git
synced 2026-04-23 15:55:18 +02:00
Python: Add Flask app and blueprint models
This commit is contained in:
committed by
Rasmus Wriedt Larsen
parent
a81f8ea54d
commit
6128c89518
@@ -70,7 +70,10 @@ module Flask {
|
||||
*/
|
||||
module FlaskApp {
|
||||
/** Gets a reference to the `flask.Flask` class. */
|
||||
API::Node classRef() { result = API::moduleImport("flask").getMember("Flask") }
|
||||
API::Node classRef() {
|
||||
result = API::moduleImport("flask").getMember("Flask") or
|
||||
result = ModelOutput::getATypeNode("flask.Flask~Subclass").getASubclass*()
|
||||
}
|
||||
|
||||
/** Gets a reference to an instance of `flask.Flask` (a flask application). */
|
||||
API::Node instance() { result = classRef().getReturn() }
|
||||
@@ -87,6 +90,8 @@ module Flask {
|
||||
result = API::moduleImport("flask").getMember("Blueprint")
|
||||
or
|
||||
result = API::moduleImport("flask").getMember("blueprints").getMember("Blueprint")
|
||||
or
|
||||
result = ModelOutput::getATypeNode("flask.Blueprint~Subclass").getASubclass*()
|
||||
}
|
||||
|
||||
/** Gets a reference to an instance of `flask.Blueprint`. */
|
||||
|
||||
@@ -275,6 +275,18 @@ class DjangoHttpRequest extends FindSubclassesSpec {
|
||||
}
|
||||
}
|
||||
|
||||
class FlaskClass extends FindSubclassesSpec {
|
||||
FlaskClass() { this = "flask.Flask~Subclass" }
|
||||
|
||||
override API::Node getAlreadyModeledClass() { result = Flask::FlaskApp::classRef() }
|
||||
}
|
||||
|
||||
class FlaskBlueprint extends FindSubclassesSpec {
|
||||
FlaskBlueprint() { this = "flask.Blueprint~Subclass" }
|
||||
|
||||
override API::Node getAlreadyModeledClass() { result = Flask::Blueprint::classRef() }
|
||||
}
|
||||
|
||||
bindingset[fullyQualified]
|
||||
predicate fullyQualifiedToYamlFormat(string fullyQualified, string type2, string path) {
|
||||
exists(int firstDot | firstDot = fullyQualified.indexOf(".", 0, 0) |
|
||||
|
||||
Reference in New Issue
Block a user