Class

com.wix.accord.dsl

Descriptor

Related Doc: package dsl

Permalink

implicit class Descriptor[U] extends AnyRef

Enables explicitly describing expression under validation.

After the macro transform, the resulting validator will use the specified description to render violations. See the as method for full example.

U

The type of the provided expression.

See also

com.wix.accord.dsl

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Descriptor
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Descriptor(value: U)

    Permalink

    value

    The value to wrap with an explicit description.

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def as(description: String): U

    Permalink

    Tags the specified validation expression with an explicit description.

    Tags the specified validation expression with an explicit description. Enables syntax such as: p.firstName as "first name" is notEmpty; violations for this validation rule will be rendered with the specified expression (instead of the implicit rule), for example:

    --- TODO --- update example!

    scala> case class Person( firstName: String, lastName: String )
    defined class Person
    
    scala> implicit val personValidator = validator[ Person ] { p => p.firstName as "first name" is notEmpty }
    personValidator: com.wix.accord.combinators.And[Person] = <function1>
    
    scala> validate( Person( "", "last" ) )
    res0: com.wix.accord.Result = Failure(List(Violation(first name must not be empty,)))

    Without the explicit description, the violation would read "firstName must not be empty".

    description

    The description to use for the expression in case of violations.

    returns

    The validation expression tagged with the explicit description.

  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  11. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  12. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  13. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  14. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  15. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  16. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  17. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  18. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  19. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped