Merge pull request #8574 from erik-krogh/qlForQlFixes

QL: two small improvements
This commit is contained in:
Mathias Vorreiter Pedersen
2022-03-28 09:26:43 +01:00
committed by GitHub

View File

@@ -135,6 +135,8 @@ class TopLevel extends TTopLevel, AstNode {
pred = directMember("getAModule") and result = this.getAModule()
or
pred = directMember("getANewType") and result = this.getANewType()
or
pred = directMember("getQLDoc") and result = this.getQLDoc()
}
QLDoc getQLDocFor(ModuleMember m) {
@@ -1127,6 +1129,21 @@ class Import extends TImport, ModuleMember, ModuleRef {
result = imp.getChild(0).(QL::ImportModuleExpr).getChild().getName(i).getValue()
}
/**
* Gets the full string specifying the module being imported.
*/
string getImportString() {
exists(string selec |
not exists(getQualifiedName(_)) and selec = ""
or
selec =
"::" + strictconcat(int i, string q | q = this.getSelectionName(i) | q, "::" order by i)
|
result =
strictconcat(int i, string q | q = this.getQualifiedName(i) | q, "." order by i) + selec
)
}
final override FileOrModule getResolvedModule() { resolve(this, result) }
}