if/guard case let

  • case : pattern matching.

  • let : binds associated values

// ⭐ if case let
//          ╭───── ⭐ pattern ─────╮    ↱ ⭐ value
if case let Media.movie(title, _, _) = movie { ... }

// ⭐ if case let
if case let .loaded(data) = state, 
   data.isEmpty                        // ⭐ additional conditions
{ ... }

// ⭐ guard case let
guard 
    case let .loaded(data) = state, 
    data.isEmpty                        // ⭐ additional conditions
else { ... }

Last updated

Was this helpful?