mirror of
https://github.com/github/codeql.git
synced 2025-12-16 16:53:25 +01:00
Merge pull request #20233 from hvitved/rust/remove-tc
Rust: Remove TC from `ImplTraitTypeRepr.isInReturnPos`
This commit is contained in:
@@ -23,14 +23,18 @@ module Impl {
|
||||
* ```
|
||||
*/
|
||||
class ImplTraitTypeRepr extends Generated::ImplTraitTypeRepr {
|
||||
/** Gets the function for which this impl trait type occurs, if any. */
|
||||
Function getFunction() {
|
||||
this.getParentNode*() = [result.getRetType().getTypeRepr(), result.getAParam().getTypeRepr()]
|
||||
pragma[nomagic]
|
||||
private TypeRepr getFunctionTypeRepr(Function f) {
|
||||
this.getParentNode*() = result and
|
||||
result = [f.getRetType().getTypeRepr(), f.getAParam().getTypeRepr()]
|
||||
}
|
||||
|
||||
/** Gets the function for which this impl trait type occurs, if any. */
|
||||
Function getFunction() { exists(this.getFunctionTypeRepr(result)) }
|
||||
|
||||
/** Holds if this impl trait type occurs in the return type of a function. */
|
||||
predicate isInReturnPos() {
|
||||
this.getParentNode*() = this.getFunction().getRetType().getTypeRepr()
|
||||
exists(Function f | f.getRetType().getTypeRepr() = this.getFunctionTypeRepr(f))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user