src/Pure/System/isabelle_system.scala
changeset 62633 e57416b649d5
parent 62616 b89d4b320464
child 63687 1134ee401b20
equal deleted inserted replaced
62632:cd991ba01ffd 62633:e57416b649d5
   323 
   323 
   324   def components(): List[Path] =
   324   def components(): List[Path] =
   325     Path.split(getenv_strict("ISABELLE_COMPONENTS"))
   325     Path.split(getenv_strict("ISABELLE_COMPONENTS"))
   326 
   326 
   327 
   327 
   328   /* logic images */
   328   /* default logic */
   329 
       
   330   def find_logics_dirs(): List[Path] =
       
   331   {
       
   332     val ml_ident = Path.explode("$ML_IDENTIFIER").expand
       
   333     Path.split(getenv_strict("ISABELLE_PATH")).map(_ + ml_ident)
       
   334   }
       
   335 
       
   336   def find_logics(): List[String] =
       
   337     (for {
       
   338       dir <- find_logics_dirs()
       
   339       files = dir.file.listFiles() if files != null
       
   340       file <- files.toList if file.isFile } yield file.getName).sorted
       
   341 
   329 
   342   def default_logic(args: String*): String =
   330   def default_logic(args: String*): String =
   343   {
   331   {
   344     args.find(_ != "") match {
   332     args.find(_ != "") match {
   345       case Some(logic) => logic
   333       case Some(logic) => logic