日記
今日の昼に作った塩焼きそばがめちゃくちゃ美味かった.
今日書いたコード
https://docs.swift.org/swift-book/ReferenceManual/Patterns.html
class Hoge {} class Fuga: Hoge {} print(Fuga.self is Hoge.Type) // true print(Hoge.self is Hoge.Type) // true let point = (1, 2) // Overload the ~= operator to match a string with an integer. func ~= (pattern: String, value: Int) -> Bool { return pattern == "\(value)" } switch point { case ("0", "0"): print("(0, 0) is at the origin.") default: print("The point is at (\(point.0), \(point.1)).") } // Prints "The point is at (1, 2)."
感想
Expression Patternでパターンマッチするときは~=
が使われるので,ユーザがoverloadして任意の判定を実装することができる.便利そう.