-
Book Overview & Buying
-
Table Of Contents
F# 4.0 Design Patterns
By :
If I put the preceding scripts into Visual Studio, the F# source code editor will draw a blue warning squiggle line under the ``compare me`` comparison expression, indicating that the set of rules in this match construction is not exhaustive, as shown in the following screenshot:

An example of an incomplete pattern matching
The compiler even gives a sample value of ``compare me``, which is not going to match. Although this value is not present within the definition of type Multiples, if I synthetically create this value as enum<Multiples>(1) and feed it as an argument into transformB, the result would be the run-time exception of type Microsoft.FSharp.Core.MatchFailureException. This situation should raise the following question: how would it be possible to put a match all rule into the match, which means anything that was not specified in preceding rules?
For this purpose, F# offers the special wildcard pattern
_ that matches anything that was not matched in the preceding...
Change the font size
Change margin width
Change background colour