trait FromExpr[T]

A type class for types that can convert a quoted.Expr[T] to a T.

- Converts expression containg literal values to their values:

  • '{1} -> 1, '{2} -> 2, ...

  • For all primitive types and String - Converts an expression that constructs a copy of its value.

  • This expression must be some kind of datastructure (Some, List, Either, ...)

  • Calls to new X or X.apply can be lifted into its value

  • Arguments of constructors can be recursively unlifted

class Object
trait Matchable
class Any

Value members

Abstract methods

def unapply(x: Expr[T])(using Quotes): Option[T]

Return the value of the expression.

Returns None if the expression does not represent a value or possibly contains side effects. Otherwise returns the Some of the value.