src/Pure/System/options.scala
changeset 78560 39f6f180008d
parent 78559 020fecb4da0c
child 78614 4da5cdaa4dcd
--- a/src/Pure/System/options.scala	Tue Aug 22 09:39:37 2023 +0200
+++ b/src/Pure/System/options.scala	Tue Aug 22 10:05:03 2023 +0200
@@ -19,10 +19,21 @@
 
     def ISABELLE_BUILD_OPTIONS: List[Spec] =
       Word.explode(Isabelle_System.getenv("ISABELLE_BUILD_OPTIONS")).map(make)
+
+    def print_value(s: String): String =
+      s match {
+        case Value.Boolean(_) => s
+        case Value.Long(_) => s
+        case Value.Double(_) => s
+        case _ => Token.quote_name(specs_syntax.keywords, s)
+      }
+
+    def print(name: String, value: String): String = Properties.Eq(name, print_value(value))
   }
 
   sealed case class Spec(name: String, value: Option[String] = None, permissive: Boolean = false) {
     override def toString: String = name + if_proper(value, "=" + value.get)
+    def print: String = name + if_proper(value, "=" + Spec.print_value(value.get))
   }
 
   sealed case class Change(name: String, value: String, unknown: Boolean) {