Merge pull request #13108 from kaspersv/kaspersv/swift-explicit-this-receivers1

Swift: Make implicit this receivers explicit
This commit is contained in:
Kasper Svendsen
2023-05-11 08:34:14 +02:00
committed by GitHub
11 changed files with 20 additions and 20 deletions

View File

@@ -2,8 +2,8 @@ private import codeql.swift.generated.AvailabilityInfo
class AvailabilityInfo extends Generated::AvailabilityInfo {
override string toString() {
result = "#available" and not isUnavailable()
result = "#available" and not this.isUnavailable()
or
result = "#unavailable" and isUnavailable()
result = "#unavailable" and this.isUnavailable()
}
}

View File

@@ -5,37 +5,37 @@ class KeyPathComponent extends Generated::KeyPathComponent {
/**
* Property access like `.bar` in `\Foo.bar`.
*/
predicate isProperty() { getKind() = 3 }
predicate isProperty() { this.getKind() = 3 }
/**
* Array or dictionary subscript like `[1]` or `["a", "b"]`.
*/
predicate isSubscript() { getKind() = 4 }
predicate isSubscript() { this.getKind() = 4 }
/**
* Optional forcing `!`.
*/
predicate isOptionalForcing() { getKind() = 5 }
predicate isOptionalForcing() { this.getKind() = 5 }
/**
* Optional chaining `?`.
*/
predicate isOptionalChaining() { getKind() = 6 }
predicate isOptionalChaining() { this.getKind() = 6 }
/**
* Implicit optional wrapping component inserted by the compiler when an optional chain ends in a non-optional value.
*/
predicate isOptionalWrapping() { getKind() = 7 }
predicate isOptionalWrapping() { this.getKind() = 7 }
/**
* Reference to the entire object; the `self` in `\Foo.self`.
*/
predicate isSelf() { getKind() = 8 }
predicate isSelf() { this.getKind() = 8 }
/**
* Tuple indexing like `.1`.
*/
predicate isTupleIndexing() { getKind() = 9 }
predicate isTupleIndexing() { this.getKind() = 9 }
/** Gets the underlying key-path expression which this is a component of. */
KeyPathExpr getKeyPathExpr() { result.getAComponent() = this }

View File

@@ -14,5 +14,5 @@ class Locatable extends Generated::Locatable {
/**
* Gets the primary file where this element occurs.
*/
File getFile() { result = getLocation().getFile() }
File getFile() { result = this.getLocation().getFile() }
}

View File

@@ -1,5 +1,5 @@
private import codeql.swift.generated.PlatformVersionAvailabilitySpec
class PlatformVersionAvailabilitySpec extends Generated::PlatformVersionAvailabilitySpec {
override string toString() { result = getPlatform() + " " + getVersion() }
override string toString() { result = this.getPlatform() + " " + this.getVersion() }
}

View File

@@ -2,9 +2,9 @@ private import codeql.swift.generated.decl.ExtensionDecl
class ExtensionDecl extends Generated::ExtensionDecl {
override string toString() {
result = "extension of " + getExtendedTypeDecl().toString()
result = "extension of " + this.getExtendedTypeDecl().toString()
or
not exists(getExtendedTypeDecl()) and
not exists(this.getExtendedTypeDecl()) and
result = "extension"
}
}

View File

@@ -1,5 +1,5 @@
private import codeql.swift.generated.expr.IdentityExpr
class IdentityExpr extends Generated::IdentityExpr {
override predicate convertsFrom(Expr e) { e = getImmediateSubExpr() }
override predicate convertsFrom(Expr e) { e = this.getImmediateSubExpr() }
}

View File

@@ -2,8 +2,8 @@ private import codeql.swift.generated.expr.UnresolvedDeclRefExpr
class UnresolvedDeclRefExpr extends Generated::UnresolvedDeclRefExpr {
override string toString() {
result = getName() + " (unresolved)"
result = this.getName() + " (unresolved)"
or
not hasName() and result = "(unresolved)"
not this.hasName() and result = "(unresolved)"
}
}

View File

@@ -1,5 +1,5 @@
private import codeql.swift.generated.expr.UnresolvedDotExpr
class UnresolvedDotExpr extends Generated::UnresolvedDotExpr {
override string toString() { result = "... ." + getName() }
override string toString() { result = "... ." + this.getName() }
}

View File

@@ -1,7 +1,7 @@
private import codeql.swift.generated.pattern.BindingPattern
class BindingPattern extends Generated::BindingPattern {
final override Pattern getResolveStep() { result = getImmediateSubPattern() }
final override Pattern getResolveStep() { result = this.getImmediateSubPattern() }
override string toString() { result = "let ..." }
}

View File

@@ -1,7 +1,7 @@
private import codeql.swift.generated.pattern.ParenPattern
class ParenPattern extends Generated::ParenPattern {
final override Pattern getResolveStep() { result = getImmediateSubPattern() }
final override Pattern getResolveStep() { result = this.getImmediateSubPattern() }
override string toString() { result = "(...)" }
}

View File

@@ -1,5 +1,5 @@
private import codeql.swift.generated.type.TypeRepr
class TypeRepr extends Generated::TypeRepr {
override string toString() { result = getType().toString() }
override string toString() { result = this.getType().toString() }
}