
org.rogach.scallop.ScallopConfValidations.scala Maven / Gradle / Ivy
// auto-generated by sbt-boilerplate
package org.rogach.scallop
/** Helper trait for generaton of `validate` methods on ScallopConf. */
trait ScallopConfValidations { this: ScallopConfBase =>
protected var validations: List[() => Either[String, Unit]] = Nil
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1](o1: ScallopOption[A1])(fn: (A1) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1)
validations :+= { () =>
if (List(o1.toOption).forall(_.isDefined)) {
fn(o1())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2](o1: ScallopOption[A1], o2: ScallopOption[A2])(fn: (A1, A2) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2)
validations :+= { () =>
if (List(o1.toOption, o2.toOption).forall(_.isDefined)) {
fn(o1(), o2())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3])(fn: (A1, A2, A3) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4])(fn: (A1, A2, A3, A4) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4, A5](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5])(fn: (A1, A2, A3, A4, A5) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4, o5)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4(), o5())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4, A5, A6](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6])(fn: (A1, A2, A3, A4, A5, A6) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4, o5, o6)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4(), o5(), o6())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4, A5, A6, A7](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7])(fn: (A1, A2, A3, A4, A5, A6, A7) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4, o5, o6, o7)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4(), o5(), o6(), o7())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4, A5, A6, A7, A8](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8])(fn: (A1, A2, A3, A4, A5, A6, A7, A8) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4, o5, o6, o7, o8)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4(), o5(), o6(), o7(), o8())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4, A5, A6, A7, A8, A9](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9])(fn: (A1, A2, A3, A4, A5, A6, A7, A8, A9) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4, o5, o6, o7, o8, o9)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4(), o5(), o6(), o7(), o8(), o9())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10])(fn: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4, o5, o6, o7, o8, o9, o10)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4(), o5(), o6(), o7(), o8(), o9(), o10())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11])(fn: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4(), o5(), o6(), o7(), o8(), o9(), o10(), o11())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12])(fn: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4(), o5(), o6(), o7(), o8(), o9(), o10(), o11(), o12())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13])(fn: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4(), o5(), o6(), o7(), o8(), o9(), o10(), o11(), o12(), o13())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13], o14: ScallopOption[A14])(fn: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption, o14.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4(), o5(), o6(), o7(), o8(), o9(), o10(), o11(), o12(), o13(), o14())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13], o14: ScallopOption[A14], o15: ScallopOption[A15])(fn: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14, o15)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption, o14.toOption, o15.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4(), o5(), o6(), o7(), o8(), o9(), o10(), o11(), o12(), o13(), o14(), o15())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13], o14: ScallopOption[A14], o15: ScallopOption[A15], o16: ScallopOption[A16])(fn: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14, o15, o16)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption, o14.toOption, o15.toOption, o16.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4(), o5(), o6(), o7(), o8(), o9(), o10(), o11(), o12(), o13(), o14(), o15(), o16())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13], o14: ScallopOption[A14], o15: ScallopOption[A15], o16: ScallopOption[A16], o17: ScallopOption[A17])(fn: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14, o15, o16, o17)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption, o14.toOption, o15.toOption, o16.toOption, o17.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4(), o5(), o6(), o7(), o8(), o9(), o10(), o11(), o12(), o13(), o14(), o15(), o16(), o17())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13], o14: ScallopOption[A14], o15: ScallopOption[A15], o16: ScallopOption[A16], o17: ScallopOption[A17], o18: ScallopOption[A18])(fn: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14, o15, o16, o17, o18)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption, o14.toOption, o15.toOption, o16.toOption, o17.toOption, o18.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4(), o5(), o6(), o7(), o8(), o9(), o10(), o11(), o12(), o13(), o14(), o15(), o16(), o17(), o18())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13], o14: ScallopOption[A14], o15: ScallopOption[A15], o16: ScallopOption[A16], o17: ScallopOption[A17], o18: ScallopOption[A18], o19: ScallopOption[A19])(fn: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14, o15, o16, o17, o18, o19)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption, o14.toOption, o15.toOption, o16.toOption, o17.toOption, o18.toOption, o19.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4(), o5(), o6(), o7(), o8(), o9(), o10(), o11(), o12(), o13(), o14(), o15(), o16(), o17(), o18(), o19())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13], o14: ScallopOption[A14], o15: ScallopOption[A15], o16: ScallopOption[A16], o17: ScallopOption[A17], o18: ScallopOption[A18], o19: ScallopOption[A19], o20: ScallopOption[A20])(fn: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14, o15, o16, o17, o18, o19, o20)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption, o14.toOption, o15.toOption, o16.toOption, o17.toOption, o18.toOption, o19.toOption, o20.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4(), o5(), o6(), o7(), o8(), o9(), o10(), o11(), o12(), o13(), o14(), o15(), o16(), o17(), o18(), o19(), o20())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13], o14: ScallopOption[A14], o15: ScallopOption[A15], o16: ScallopOption[A16], o17: ScallopOption[A17], o18: ScallopOption[A18], o19: ScallopOption[A19], o20: ScallopOption[A20], o21: ScallopOption[A21])(fn: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14, o15, o16, o17, o18, o19, o20, o21)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption, o14.toOption, o15.toOption, o16.toOption, o17.toOption, o18.toOption, o19.toOption, o20.toOption, o21.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4(), o5(), o6(), o7(), o8(), o9(), o10(), o11(), o12(), o13(), o14(), o15(), o16(), o17(), o18(), o19(), o20(), o21())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* Automatically defines co-dependent relationship on these options.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validate[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13], o14: ScallopOption[A14], o15: ScallopOption[A15], o16: ScallopOption[A16], o17: ScallopOption[A17], o18: ScallopOption[A18], o19: ScallopOption[A19], o20: ScallopOption[A20], o21: ScallopOption[A21], o22: ScallopOption[A22])(fn: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22) => Either[String, Unit]): Unit = {
allDefinedOrUndefined(o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14, o15, o16, o17, o18, o19, o20, o21, o22)
validations :+= { () =>
if (List(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption, o14.toOption, o15.toOption, o16.toOption, o17.toOption, o18.toOption, o19.toOption, o20.toOption, o21.toOption, o22.toOption).forall(_.isDefined)) {
fn(o1(), o2(), o3(), o4(), o5(), o6(), o7(), o8(), o9(), o10(), o11(), o12(), o13(), o14(), o15(), o16(), o17(), o18(), o19(), o20(), o21(), o22())
} else {
Right(())
}
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1](o1: ScallopOption[A1])(fn: (Option[A1]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2](o1: ScallopOption[A1], o2: ScallopOption[A2])(fn: (Option[A1], Option[A2]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3])(fn: (Option[A1], Option[A2], Option[A3]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4])(fn: (Option[A1], Option[A2], Option[A3], Option[A4]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4, A5](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5])(fn: (Option[A1], Option[A2], Option[A3], Option[A4], Option[A5]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4, A5, A6](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6])(fn: (Option[A1], Option[A2], Option[A3], Option[A4], Option[A5], Option[A6]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4, A5, A6, A7](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7])(fn: (Option[A1], Option[A2], Option[A3], Option[A4], Option[A5], Option[A6], Option[A7]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4, A5, A6, A7, A8](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8])(fn: (Option[A1], Option[A2], Option[A3], Option[A4], Option[A5], Option[A6], Option[A7], Option[A8]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4, A5, A6, A7, A8, A9](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9])(fn: (Option[A1], Option[A2], Option[A3], Option[A4], Option[A5], Option[A6], Option[A7], Option[A8], Option[A9]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10])(fn: (Option[A1], Option[A2], Option[A3], Option[A4], Option[A5], Option[A6], Option[A7], Option[A8], Option[A9], Option[A10]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11])(fn: (Option[A1], Option[A2], Option[A3], Option[A4], Option[A5], Option[A6], Option[A7], Option[A8], Option[A9], Option[A10], Option[A11]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12])(fn: (Option[A1], Option[A2], Option[A3], Option[A4], Option[A5], Option[A6], Option[A7], Option[A8], Option[A9], Option[A10], Option[A11], Option[A12]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13])(fn: (Option[A1], Option[A2], Option[A3], Option[A4], Option[A5], Option[A6], Option[A7], Option[A8], Option[A9], Option[A10], Option[A11], Option[A12], Option[A13]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13], o14: ScallopOption[A14])(fn: (Option[A1], Option[A2], Option[A3], Option[A4], Option[A5], Option[A6], Option[A7], Option[A8], Option[A9], Option[A10], Option[A11], Option[A12], Option[A13], Option[A14]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption, o14.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13], o14: ScallopOption[A14], o15: ScallopOption[A15])(fn: (Option[A1], Option[A2], Option[A3], Option[A4], Option[A5], Option[A6], Option[A7], Option[A8], Option[A9], Option[A10], Option[A11], Option[A12], Option[A13], Option[A14], Option[A15]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption, o14.toOption, o15.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13], o14: ScallopOption[A14], o15: ScallopOption[A15], o16: ScallopOption[A16])(fn: (Option[A1], Option[A2], Option[A3], Option[A4], Option[A5], Option[A6], Option[A7], Option[A8], Option[A9], Option[A10], Option[A11], Option[A12], Option[A13], Option[A14], Option[A15], Option[A16]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption, o14.toOption, o15.toOption, o16.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13], o14: ScallopOption[A14], o15: ScallopOption[A15], o16: ScallopOption[A16], o17: ScallopOption[A17])(fn: (Option[A1], Option[A2], Option[A3], Option[A4], Option[A5], Option[A6], Option[A7], Option[A8], Option[A9], Option[A10], Option[A11], Option[A12], Option[A13], Option[A14], Option[A15], Option[A16], Option[A17]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption, o14.toOption, o15.toOption, o16.toOption, o17.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13], o14: ScallopOption[A14], o15: ScallopOption[A15], o16: ScallopOption[A16], o17: ScallopOption[A17], o18: ScallopOption[A18])(fn: (Option[A1], Option[A2], Option[A3], Option[A4], Option[A5], Option[A6], Option[A7], Option[A8], Option[A9], Option[A10], Option[A11], Option[A12], Option[A13], Option[A14], Option[A15], Option[A16], Option[A17], Option[A18]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption, o14.toOption, o15.toOption, o16.toOption, o17.toOption, o18.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13], o14: ScallopOption[A14], o15: ScallopOption[A15], o16: ScallopOption[A16], o17: ScallopOption[A17], o18: ScallopOption[A18], o19: ScallopOption[A19])(fn: (Option[A1], Option[A2], Option[A3], Option[A4], Option[A5], Option[A6], Option[A7], Option[A8], Option[A9], Option[A10], Option[A11], Option[A12], Option[A13], Option[A14], Option[A15], Option[A16], Option[A17], Option[A18], Option[A19]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption, o14.toOption, o15.toOption, o16.toOption, o17.toOption, o18.toOption, o19.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13], o14: ScallopOption[A14], o15: ScallopOption[A15], o16: ScallopOption[A16], o17: ScallopOption[A17], o18: ScallopOption[A18], o19: ScallopOption[A19], o20: ScallopOption[A20])(fn: (Option[A1], Option[A2], Option[A3], Option[A4], Option[A5], Option[A6], Option[A7], Option[A8], Option[A9], Option[A10], Option[A11], Option[A12], Option[A13], Option[A14], Option[A15], Option[A16], Option[A17], Option[A18], Option[A19], Option[A20]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption, o14.toOption, o15.toOption, o16.toOption, o17.toOption, o18.toOption, o19.toOption, o20.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13], o14: ScallopOption[A14], o15: ScallopOption[A15], o16: ScallopOption[A16], o17: ScallopOption[A17], o18: ScallopOption[A18], o19: ScallopOption[A19], o20: ScallopOption[A20], o21: ScallopOption[A21])(fn: (Option[A1], Option[A2], Option[A3], Option[A4], Option[A5], Option[A6], Option[A7], Option[A8], Option[A9], Option[A10], Option[A11], Option[A12], Option[A13], Option[A14], Option[A15], Option[A16], Option[A17], Option[A18], Option[A19], Option[A20], Option[A21]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption, o14.toOption, o15.toOption, o16.toOption, o17.toOption, o18.toOption, o19.toOption, o20.toOption, o21.toOption)
}
}
/** Adds a validation function to this configuration. This function will be run after all other verification steps.
* @param fn Validation function. In case of error, it should return Left with the error message.
*/
def validateOpt[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22](o1: ScallopOption[A1], o2: ScallopOption[A2], o3: ScallopOption[A3], o4: ScallopOption[A4], o5: ScallopOption[A5], o6: ScallopOption[A6], o7: ScallopOption[A7], o8: ScallopOption[A8], o9: ScallopOption[A9], o10: ScallopOption[A10], o11: ScallopOption[A11], o12: ScallopOption[A12], o13: ScallopOption[A13], o14: ScallopOption[A14], o15: ScallopOption[A15], o16: ScallopOption[A16], o17: ScallopOption[A17], o18: ScallopOption[A18], o19: ScallopOption[A19], o20: ScallopOption[A20], o21: ScallopOption[A21], o22: ScallopOption[A22])(fn: (Option[A1], Option[A2], Option[A3], Option[A4], Option[A5], Option[A6], Option[A7], Option[A8], Option[A9], Option[A10], Option[A11], Option[A12], Option[A13], Option[A14], Option[A15], Option[A16], Option[A17], Option[A18], Option[A19], Option[A20], Option[A21], Option[A22]) => Either[String, Unit]): Unit = {
validations :+= { () =>
fn(o1.toOption, o2.toOption, o3.toOption, o4.toOption, o5.toOption, o6.toOption, o7.toOption, o8.toOption, o9.toOption, o10.toOption, o11.toOption, o12.toOption, o13.toOption, o14.toOption, o15.toOption, o16.toOption, o17.toOption, o18.toOption, o19.toOption, o20.toOption, o21.toOption, o22.toOption)
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy