Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
CodeQL library for Swift
codeql/swift-all 4.3.0 (changelog, source)

Module OpenExistentialExpr

This module provides the public class OpenExistentialExpr.

Import path

import codeql.swift.elements.expr.OpenExistentialExpr

Imports

Expr

This module provides the public class Expr.

OpaqueValueExpr

This module provides the public class OpaqueValueExpr.

Aliases

OpenExistentialExpr

An implicit expression created by the compiler when a method is called on a protocol. For example in protocol P { func foo() -> Int } func bar(x: P) -> Int { return x.foo() } `x.foo()` is actually wrapped in an `OpenExistentialExpr` that "opens" `x` replacing it in its subexpression with an `OpaqueValueExpr`.