## Pattern Matching: `{#if let}`

Use `if let` for pattern matching on `Option`, `Result`, or other Rust enums:

Rust

```
let maybe_name: Option<&str> = Some("Alice");

let code = ts_template! {
    {#if let Some(name) = maybe_name}
        console.log("Hello, @{name}!");
    {:else}
        console.log("Hello, anonymous!");
    {/if}
};
```

**Generates:**

TypeScript

```
console.log("Hello, Alice!");
```

This is useful when working with optional values from your IR:

Rust

```
let code = ts_template! {
    {#if let Some(default_val) = field.default_value}
        this.@{field.name} = @{default_val};
    {:else}
        this.@{field.name} = undefined;
    {/if}
};
```
