ExprMatchModule
scala.quoted.runtime.QuoteMatching.ExprMatchModule
trait ExprMatchModule
Attributes
- Source
- QuoteMatching.scala
- Graph
-
- Supertypes
- Self type
-
Members list
Value members
Abstract methods
Pattern matches an the scrutineeExpr against the patternExpr and returns a tuple with the matched holes if successful.
Pattern matches an the scrutineeExpr against the patternExpr and returns a tuple with the matched holes if successful.
Examples:
ExprMatch.unapply('{ f(0, myInt) })('{ f(0, myInt) }, _)will returnSome(())(where()is a tuple of arity 0)ExprMatch.unapply('{ f(0, myInt) })('{ f(patternHole[Int], patternHole[Int]) }, _)will returnSome(Tuple2('{0}, '{ myInt }))ExprMatch.unapply('{ f(0, "abc") })('{ f(0, patternHole[Int]) }, _)will returnNonedue to the mismatch of types in the hole
Holes:
- scala.quoted.runtime.Patterns.patternHole[T]: hole that matches an expression
xof typeExpr[U]ifU <:< Tand returnsxas part of the match.
Value parameters
- pattern
-
Expr[Any]containing the pattern tree - scrutinee
-
Expr[Any]on which we are pattern matching
Attributes
- Returns
-
None if it did not match,
Some(tup)if it matched wheretupcontains `Expr[Ti]`` - Source
- QuoteMatching.scala
In this article