Trait/Object

jto.validation.delimited

Rules

Related Docs: object Rules | package delimited

Permalink

trait Rules extends DefaultRules[Delimited] with ParsingRules

Rules for parsing/validating/transforming Array[String] as typically returned from CSV parsers.

{{ case class Contact(name: String, email: String, birthday: Option[LocalDate])

val contactReads = From[Delimited] { => ( ( \ 0).read[String] and ( \ 1).read(email) and ( \ 2).read(optionR[LocalDate](equalTo("N/A"))) )(Contact)}

val csv1 = "Ian Hummel,[email protected],1981-07-24".split(",") val csv2 = "Jane Doe,[email protected],N/A".split(",")

contactReads.validate(csv1) // returns Valid(Contact("Ian Hummel", "[email protected]", Some(new LocalDate(1981, 7, 24)))) contactReads.validate(csv2) // returns Valid(Contact("Jane Doe", "[email protected]", None)) }}

Linear Supertypes
ParsingRules, DefaultRules[Delimited], DateRules, GenericRules, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Rules
  2. ParsingRules
  3. DefaultRules
  4. DateRules
  5. GenericRules
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

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. implicit def arrayR[I, O](implicit arg0: ClassTag[O], r: RuleLike[I, O]): Rule[Seq[I], Array[O]]

    Permalink
    Definition Classes
    GenericRules
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. implicit def bigDecimal: Rule[String, BigDecimal]

    Permalink
    Definition Classes
    ParsingRules
  7. implicit def booleanR: Rule[String, Boolean]

    Permalink
    Definition Classes
    ParsingRules
  8. def checked[I](implicit b: RuleLike[I, Boolean]): Rule[I, Boolean]

    Permalink
    Definition Classes
    GenericRules
  9. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  10. implicit def dateR: Rule[String, Date]

    Permalink
    Definition Classes
    DateRules
  11. def dateR(format: String, corrector: (String) ⇒ String): Rule[String, Date]

    Permalink
    Definition Classes
    DateRules
  12. implicit def doubleR: Rule[String, Double]

    Permalink
    Definition Classes
    ParsingRules
  13. def email: Rule[String, String]

    Permalink
    Definition Classes
    GenericRules
  14. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  15. def equalTo[T](t: T): Rule[T, T]

    Permalink
    Definition Classes
    GenericRules
  16. def equals(arg0: Any): Boolean

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  18. implicit def floatR: Rule[String, Float]

    Permalink
    Definition Classes
    ParsingRules
  19. final def getClass(): Class[_]

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

    Permalink
    Definition Classes
    AnyRef → Any
  21. def ignored[I, O](o: O): (Path) ⇒ Rule[I, O]

    Permalink
    Definition Classes
    GenericRules
  22. implicit def intR: Rule[String, Int]

    Permalink
    Definition Classes
    ParsingRules
  23. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  24. def isoDateR: Rule[String, Date]

    Permalink
    Definition Classes
    DateRules
  25. implicit def javaBigDecimalR: Rule[String, BigDecimal]

    Permalink
    Definition Classes
    ParsingRules
  26. implicit def jodaDateR: Rule[String, DateTime]

    Permalink
    Definition Classes
    DateRules
  27. def jodaDateR(pattern: String, corrector: (String) ⇒ String): Rule[String, DateTime]

    Permalink
    Definition Classes
    DateRules
  28. implicit def jodaLocalDateR: Rule[String, LocalDate]

    Permalink
    Definition Classes
    DateRules
  29. implicit def jodaLocalDateR(pattern: String, corrector: (String) ⇒ String): Rule[String, LocalDate]

    Permalink
    Definition Classes
    DateRules
  30. implicit def jodaTimeR: Rule[Long, DateTime]

    Permalink
    Definition Classes
    DateRules
  31. implicit def listR[I, O](implicit r: RuleLike[I, O]): Rule[Seq[I], List[O]]

    Permalink
    Definition Classes
    GenericRules
  32. implicit def localDateR: Rule[String, LocalDate]

    Permalink
    Definition Classes
    DateRules
  33. def localDateR(pattern: String, corrector: (String) ⇒ String): Rule[String, LocalDate]

    Permalink
    Definition Classes
    DateRules
  34. implicit def longR: Rule[String, Long]

    Permalink
    Definition Classes
    ParsingRules
  35. def mapR[K, O](r: RuleLike[K, O], p: RuleLike[Delimited, Seq[(String, K)]]): Rule[Delimited, Map[String, O]]

    Permalink
    Definition Classes
    DefaultRules
  36. def max[T](m: T)(implicit o: Ordering[T]): Rule[T, T]

    Permalink
    Definition Classes
    GenericRules
  37. def maxLength(l: Int): Rule[String, String]

    Permalink
    Definition Classes
    GenericRules
  38. def min[T](m: T)(implicit o: Ordering[T]): Rule[T, T]

    Permalink
    Definition Classes
    GenericRules
  39. def minLength(l: Int): Rule[String, String]

    Permalink
    Definition Classes
    GenericRules
  40. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  41. def noConstraint[F]: Constraint[F]

    Permalink
    Definition Classes
    GenericRules
  42. def not[I, O](r: RuleLike[I, O]): Rule[I, I]

    Permalink
    Definition Classes
    GenericRules
  43. def notEmpty: Rule[String, String]

    Permalink
    Definition Classes
    GenericRules
  44. final def notify(): Unit

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

    Permalink
    Definition Classes
    AnyRef
  46. implicit def ooo[O](p: Path)(implicit pick: (Path) ⇒ RuleLike[Delimited, String], coerce: RuleLike[String, O]): Rule[Delimited, Option[O]]

    Permalink

    An implicit defining a default Option reader.

    An implicit defining a default Option reader. Uses "" as the empty value.

    O

    The desired type for the value

    p

    An index into the array

    pick

    Function to extract a value from a given index

    coerce

    Coerce the value from String to type O

    returns

    The optional value

  47. def opt[J, O](r: ⇒ RuleLike[J, O], noneValues: RuleLike[Delimited, Delimited]*)(implicit pick: (Path) ⇒ RuleLike[Delimited, Delimited], coerce: RuleLike[Delimited, J]): (Path) ⇒ Rule[Delimited, Option[O]]

    Permalink
    Attributes
    protected
    Definition Classes
    DefaultRules
  48. def optionR[O](noneValues: RuleLike[String, String]*)(implicit pick: (Path) ⇒ RuleLike[Delimited, String], coerce: RuleLike[String, O]): (Path) ⇒ Rule[Delimited, Option[O]]

    Permalink

    Read an optional value using the specified value/rules to determine what is considered None vs what is Some(_).

    Read an optional value using the specified value/rules to determine what is considered None vs what is Some(_).

    O

    The desired type for the value

    noneValues

    Rules for determining if a value should be None

    pick

    Function to extract a value from a given index

    coerce

    Coerce the value from String to type O

    returns

    The optional value

  49. def pattern(regex: Regex): Rule[String, String]

    Permalink
    Definition Classes
    GenericRules
  50. implicit def pick[O](p: Path)(implicit r: RuleLike[String, O]): Rule[Delimited, O]

    Permalink

    Extract the value at a given index, transforming it into a given type.

    Extract the value at a given index, transforming it into a given type.

    O

    The desired type for the value

    p

    An index into the array

    r

    A Rule for converting the value from String to O

    returns

    Invalid if the index is out of bounds or the Path was not an IdxPathNode

  51. implicit def seqR[I, O](implicit r: RuleLike[I, O]): Rule[Seq[I], Seq[O]]

    Permalink
    Definition Classes
    GenericRules
  52. implicit def setR[I, O](implicit r: RuleLike[I, O]): Rule[Seq[I], Set[O]]

    Permalink
    Definition Classes
    GenericRules
  53. implicit def shortR: Rule[String, Short]

    Permalink
    Definition Classes
    ParsingRules
  54. implicit def sqlDateR: Rule[String, Date]

    Permalink
    Definition Classes
    DateRules
  55. def sqlDateR(pattern: String, corrector: (String) ⇒ String): Rule[String, Date]

    Permalink
    Definition Classes
    DateRules
  56. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  57. implicit def timeR: Rule[Long, LocalDateTime]

    Permalink
    Definition Classes
    DateRules
  58. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  59. implicit def traversableR[I, O](implicit r: RuleLike[I, O]): Rule[Seq[I], Traversable[O]]

    Permalink
    Definition Classes
    GenericRules
  60. def validateWith[I](msg: String, args: Any*)(pred: (I) ⇒ Boolean): Rule[I, I]

    Permalink
    Definition Classes
    GenericRules
  61. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  64. implicit def zonedDateTimeR: Rule[String, ZonedDateTime]

    Permalink
    Definition Classes
    DateRules
  65. def zonedDateTimeR(pattern: String, corrector: (String) ⇒ String): Rule[String, ZonedDateTime]

    Permalink
    Definition Classes
    DateRules

Inherited from ParsingRules

Inherited from DefaultRules[Delimited]

Inherited from DateRules

Inherited from GenericRules

Inherited from AnyRef

Inherited from Any

Ungrouped