Skip to content

Instantly share code, notes, and snippets.

scala> val a = "Hello".successNel[String]
a: scalaz.ValidationNel[String,String] = Success(Hello)
scala> val b = "this".successNel[String]
b: scalaz.ValidationNel[String,String] = Success(this)
scala> val c = "is".successNel[String]
c: scalaz.ValidationNel[String,String] = Success(is)
scala> val d = "test".successNel[String]
scala> val a = "Hello".successNel[String]
a: scalaz.ValidationNel[String,String] = Success(Hello)
scala> val b = "this".successNel[String]
b: scalaz.ValidationNel[String,String] = Success(this)
scala> val c = "is".successNel[String]
c: scalaz.ValidationNel[String,String] = Success(is)
scala> val d = "test".successNel[String]
scala> def eitherToValidation(input:Either[String, Double]): Validation[String, Double] = {
| val month = input match {
| case Right(l) => l
| case Left(l) => l
| }
| ((month.toString).toDouble).success
| }
eitherToValidation: (input: Either[String,Double])scalaz.Validation[String,Double]
@AALEKH
AALEKH / gist:83204410f10ac10dbcbe
Created January 28, 2015 16:44
function for Right purpose
scala> def eitherToValidation(input:Either[com.snowplowanalytics.forex.oerclient.OerResponseError,org.joda.money.Money]): Validation[String, Double] = {
| val month = input match {
| case Right(l) => l
| case Left(l) => l
| }
| ((month.toString).toDouble).success
| }
eitherToValidation: (input: Either[com.snowplowanalytics.forex.oerclient.OerResponseError,org.joda.money.Money])scalaz.Validation[String,Double]
@AALEKH
AALEKH / gist:3075cf1177cc0d2df0cf
Created January 28, 2015 17:36
function eitherToValidation
scala> def eitherToValidation(input:Either[String, Double]): Validation[String, Double] = {
| val month = input match {
| case Right(l) => l
| case Left(l) => "Error for" + l + " occurred."
| }
| ((month.toString).toDouble).success
| }
eitherToValidation: (input: Either[String,Double])scalaz.Validation[String,Double]
scala> "aa".toString
def eitherToValidation(input:Either[String, Double]): Validation[String, Double] = {
input match {
case Right(l) => (l.toString).toDouble.success
case Left(l) => l.failure
}
}
@AALEKH
AALEKH / gist:31f0d752b80933abf656
Last active August 29, 2015 14:14
for exercise 2
scala> val t: Option[Double] = None
t: Option[Double] = None
scala> val p: Option[Double] = None
p: Option[Double] = None
scala> def toRight[Ok, Err](x: Option[Ok], orElse: => Err): Either.RightProjection[Err, Ok] = {
| val either =
| x match {
| case Some(x) => Right(x)
scala> def eitherToValidation(input:Either[com.snowplowanalytics.forex.oerclient.OerResponseError,org.joda.money.Money]): Validation[String, Double]= {
| input match {
| case Right(l) => (l.getAmount().doubleValue()).success[String]
| case Left(l) => "Some error occurred".failure
| }
| }
eitherToValidation: (input: Either[com.snowplowanalytics.forex.oerclient.OerResponseError,org.joda.money.Money])scalaz.Validation[String,Double]
scala> newCurrency_tr
def eitherToValidation(input:Either[com.snowplowanalytics.forex.oerclient.OerResponseError,org.joda.money.Money]): [String, Double]= {
input match {
case Right(l) => (l.getAmount().doubleValue()).success[String]
case Left(l) => "Error is type ${l.errorType} message: ${l.errorMessage}".failure
}
}
def eitherToValidation(input:Either[com.snowplowanalytics.forex.oerclient.OerResponseError,org.joda.money.Money]): Validation[String, Double]= {
input match {
case Right(l) => (l.getAmount().doubleValue()).success[String]
@AALEKH
AALEKH / gist:1ea9f754d2b8449d6de5
Last active August 29, 2015 14:14
complete function for scala Either conversion
def tryParse(s: Either[com.snowplowanalytics.forex.oerclient.OerResponseError,org.joda.money.Money]):String = {
eitherToValidation(s) match {
case Success(pass) => {
pass.toString()
}
case Failure(failure) => {
failure
}
}
}