src/Pure/Thy/sessions.scala
changeset 68733 76e339ef60e3
parent 68732 5472f4409fe6
child 68734 c14a2cc9b5ef
equal deleted inserted replaced
68732:5472f4409fe6 68733:76e339ef60e3
   658       val bad_sessions = SortedSet(names.filterNot(defined(_)): _*).toList
   658       val bad_sessions = SortedSet(names.filterNot(defined(_)): _*).toList
   659       if (bad_sessions.nonEmpty)
   659       if (bad_sessions.nonEmpty)
   660         error("Undefined session(s): " + commas_quote(bad_sessions))
   660         error("Undefined session(s): " + commas_quote(bad_sessions))
   661     }
   661     }
   662 
   662 
       
   663     def check_sessions(sel: Selection): Unit =
       
   664       check_sessions(sel.base_sessions ::: sel.exclude_sessions ::: sel.sessions)
       
   665 
   663     private def selected(graph: Graph[String, Info], sel: Selection): List[String] =
   666     private def selected(graph: Graph[String, Info], sel: Selection): List[String] =
   664     {
   667     {
       
   668       check_sessions(sel)
       
   669 
   665       val select_group = sel.session_groups.toSet
   670       val select_group = sel.session_groups.toSet
   666       val select_session = sel.sessions.toSet ++ graph.all_succs(sel.base_sessions)
   671       val select_session = sel.sessions.toSet ++ graph.all_succs(sel.base_sessions)
   667 
   672 
   668       val selected0 =
   673       val selected0 =
   669         if (sel.all_sessions) graph.keys
   674         if (sel.all_sessions) graph.keys
   679       else selected0
   684       else selected0
   680     }
   685     }
   681 
   686 
   682     def selection(sel: Selection): Structure =
   687     def selection(sel: Selection): Structure =
   683     {
   688     {
   684       check_sessions(sel.base_sessions ::: sel.exclude_sessions ::: sel.sessions)
   689       check_sessions(sel)
   685 
   690 
   686       val excluded =
   691       val excluded =
   687       {
   692       {
   688         val exclude_group = sel.exclude_session_groups.toSet
   693         val exclude_group = sel.exclude_session_groups.toSet
   689         val exclude_group_sessions =
   694         val exclude_group_sessions =