github / github/codeql

General issue Python:Unable to recognize calling a method through an instance member of a class

Open
#14,899 6 comments 0 reactions 0 assignees View on GitHub
acknowledged Python question
Dominant language
CodeQL
Stars
10.1k
Forks
2.1k
Avg merge
2d 15h
Merged PRs (30d)
141

Description

when evaluate """private API::Node connection()""", the query result should find """self.orm.connection()""".But the query result is none
```
private API::Node dbClient() {
result = API::moduleImport("dbutils").getMember("pooled_db").getMember("PooledDB").getReturn()
}

private API::Node connection() {
result = dbClient().getMember("connection").getReturn()
}
```

python demo here
```
import flask
import pymysql
from flask import request
from dbutils.pooled_db import PooledDB

app = flask.Flask(__name__)

class Database:
def __init__(self):
self.orm = self.dbpool()

def dbpool(self):
pool = PooledDB(
creator=pymysql
)
return pool

def conn(self):
self.orm.connection()

@app.route('/search')
def search():
query = request.args.get('query')
database = Database()
database.conn()
database.orm.connection()
return f"Search query: {query}"

if __name__ == '__main__':
app.run()
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.