src/Pure/General/json.scala
changeset 71305 2f7da37bab52
parent 71298 93b097726667
child 71601 97ccf48c2f0c
equal deleted inserted replaced
71304:9687209ce8cb 71305:2f7da37bab52
   258           case x: java.lang.String => Some(x)
   258           case x: java.lang.String => Some(x)
   259           case _ => None
   259           case _ => None
   260         }
   260         }
   261     }
   261     }
   262 
   262 
       
   263     object String0
       
   264     {
       
   265       def unapply(json: T): Option[java.lang.String] =
       
   266         json match {
       
   267           case null => Some("")
       
   268           case x: java.lang.String => Some(x)
       
   269           case _ => None
       
   270         }
       
   271     }
       
   272 
   263     object Double
   273     object Double
   264     {
   274     {
   265       def unapply(json: T): Option[scala.Double] =
   275       def unapply(json: T): Option[scala.Double] =
   266         json match {
   276         json match {
   267           case x: scala.Double => Some(x)
   277           case x: scala.Double => Some(x)
   359   def string(obj: T, name: String): Option[String] =
   369   def string(obj: T, name: String): Option[String] =
   360     value(obj, name, Value.String.unapply)
   370     value(obj, name, Value.String.unapply)
   361   def string_default(obj: T, name: String, default: => String = ""): Option[String] =
   371   def string_default(obj: T, name: String, default: => String = ""): Option[String] =
   362     value_default(obj, name, Value.String.unapply, default)
   372     value_default(obj, name, Value.String.unapply, default)
   363 
   373 
       
   374   def string0(obj: T, name: String): Option[String] =
       
   375     value(obj, name, Value.String0.unapply)
       
   376   def string0_default(obj: T, name: String, default: => String = ""): Option[String] =
       
   377     value_default(obj, name, Value.String0.unapply, default)
       
   378 
   364   def double(obj: T, name: String): Option[Double] =
   379   def double(obj: T, name: String): Option[Double] =
   365     value(obj, name, Value.Double.unapply)
   380     value(obj, name, Value.Double.unapply)
   366   def double_default(obj: T, name: String, default: => Double = 0.0): Option[Double] =
   381   def double_default(obj: T, name: String, default: => Double = 0.0): Option[Double] =
   367     value_default(obj, name, Value.Double.unapply, default)
   382     value_default(obj, name, Value.Double.unapply, default)
   368 
   383