src/Pure/General/properties.scala
changeset 73024 337e1b135d2f
parent 72885 1b0f81e556a2
child 73031 f93f0597f4fb
--- a/src/Pure/General/properties.scala	Sat Jan 02 14:24:03 2021 +0100
+++ b/src/Pure/General/properties.scala	Sat Jan 02 15:58:48 2021 +0100
@@ -37,18 +37,12 @@
 
   def encode(ps: T): Bytes = Bytes(YXML.string_of_body(XML.Encode.properties(ps)))
 
-  def decode(bs: Bytes, xml_cache: Option[XML.Cache] = None): T =
-  {
-    val ps = XML.Decode.properties(YXML.parse_body(bs.text))
-    xml_cache match {
-      case None => ps
-      case Some(cache) => cache.props(ps)
-    }
-  }
+  def decode(bs: Bytes, xml_cache: XML.Cache = XML.Cache.none): T =
+    xml_cache.props(XML.Decode.properties(YXML.parse_body(bs.text)))
 
   def compress(ps: List[T],
     options: XZ.Options = XZ.options(),
-    cache: XZ.Cache = XZ.cache()): Bytes =
+    cache: XZ.Cache = XZ.Cache()): Bytes =
   {
     if (ps.isEmpty) Bytes.empty
     else {
@@ -58,17 +52,14 @@
   }
 
   def uncompress(bs: Bytes,
-    cache: XZ.Cache = XZ.cache(),
-    xml_cache: Option[XML.Cache] = None): List[T] =
+    cache: XZ.Cache = XZ.Cache(),
+    xml_cache: XML.Cache = XML.Cache.none): List[T] =
   {
     if (bs.is_empty) Nil
     else {
       val ps =
         XML.Decode.list(XML.Decode.properties)(YXML.parse_body(bs.uncompress(cache = cache).text))
-      xml_cache match {
-        case None => ps
-        case Some(cache) => ps.map(cache.props)
-      }
+      if (xml_cache.no_cache) ps else ps.map(xml_cache.props)
     }
   }