Identifier pattern
An identifier pattern is most commonly used for variable bindings; however it can also be used for pattern matching within algebraic data types by using call-like parentheses, where it can also match parameters or fields using compile-time constants.
x
Nothing()
Vector(x, y)
Vector(*, y) // skips "x"
Vector({ x, y })
Syntax
-
IdentifierPattern :
-
IdentifierPatternStart IdentifierPatternContinue{0,} IdentifierPatternArgumentsopt
-
IdentifierPatternStart :
-
Identifier [when keywords are enabled]
IdentifierName [when keywords are disabled]
-
IdentifierPatternContinue :
-
. IdentifierName
-
IdentifierPatternArguments :
-
( )
( IdentifierPatternArgument )
( IdentifierPatternArgument , )
-
IdentifierPatternArgument :
-
*
Pattern
IdentifierPatternArgument , Pattern
IdentifierPatternArgument , *