Master programming syntax, solve interactive challenges & run live code in Syntaxis Explore Arena →
menu_book Course Curriculum (F#) expand_more
F# / Pattern Matching

Union case patterns

Learn Union case patterns in F# through a focused explanation, a dedicated topic-specific example, an engineering boundary, and a mastery check.

10 min read • Beginner

Union case patterns is a focused F# lesson inside Pattern Matching. The example uses the construct named in the lesson directly rather than reusing a generic placeholder.

Trace the example from its inputs through Union case patterns and identify the behavior that would change if that construct were removed or replaced. Pay attention to the language-specific rules shown by the syntax, because neighboring lessons intentionally exercise different mechanisms.

Topic-specific example

fsharp-0024-63e81df321.fsx
fsharp Try It Live
type Payment =
    | Cash of decimal
    | Card of last4:string * amount:decimal

let payment = Card("4242", 89.5M)
printfn "%A" payment
let check = Map.ofList [("a",1);("b",2)]
printfn "%A" check.["b"]
Edge case / engineering note

For Union case patterns, test one realistic boundary: empty data, invalid input, unavailable resources, lifetime/cleanup, type constraints, or concurrency timing where applicable. A successful happy path is not enough to prove the construct is used correctly.

Content source & attribution
Original Syntaxis Content · Original Syntaxis Content