Unsaved Word Document
Unsaved Word Document
protocol Container {
associatedtype Item
func addItem(_ item: Item)
func getItem() -> Item
}
protocol Greetable {
func greet()
}
extension Greetable {
func greet() { print("Hello!") }
}
enum Result {
case success(data: String)
case failure(error: String)
}
Closures
Q: What are closures in Swift?
Closures are self-contained blocks of code that can capture and
reference variables around them.
Q: What’s the difference between escaping and non-escaping
closures?
Escaping closures: Retain their scope and are executed later.
Non-escaping closures: Executed within the function body.
Example:
let greet: (String) -> String = { name in
return "Hello, \(name)"
}
Access Levels
Q: What are the different access levels in Swift?
1. public: Accessible from any module.
2. internal: Default; accessible within the same module.
3. fileprivate: Accessible within the same file.
4. private: Accessible within the same scope.
Example:
public class PublicClass {}
internal class InternalClass {}
fileprivate class FilePrivateClass {}
private class PrivateClass {}
Would you like me to expand on any specific topic or provide more
advanced examples?