src/Pure/Thy/sessions.ML
changeset 69677 a06b204527e6
parent 69349 7cef9e386ffe
child 70049 c1226e4c273e
equal deleted inserted replaced
69661:a03a63b81f44 69677:a06b204527e6
    33 val document_files =
    33 val document_files =
    34   Parse.$$$ "document_files" |--
    34   Parse.$$$ "document_files" |--
    35     Parse.!!! (Scan.optional in_path ("document", Position.none)
    35     Parse.!!! (Scan.optional in_path ("document", Position.none)
    36       -- Scan.repeat1 (Parse.position Parse.path));
    36       -- Scan.repeat1 (Parse.position Parse.path));
    37 
    37 
       
    38 val prune =
       
    39   Scan.optional (Parse.$$$ "[" |-- Parse.!!! (Parse.nat --| Parse.$$$ "]")) 0;
       
    40 
    38 val export_files =
    41 val export_files =
    39   Parse.$$$ "export_files" |--
    42   Parse.$$$ "export_files" |--
    40     Parse.!!! (Scan.optional in_path ("export", Position.none) -- Scan.repeat1 Parse.embedded);
    43     Parse.!!!
       
    44       (Scan.optional in_path ("export", Position.none) -- prune -- Scan.repeat1 Parse.embedded);
    41 
    45 
    42 in
    46 in
    43 
    47 
    44 val command_parser =
    48 val command_parser =
    45   Parse.session_name --
    49   Parse.session_name --
    93               val dir = Resources.check_dir ctxt session_dir doc_dir;
    97               val dir = Resources.check_dir ctxt session_dir doc_dir;
    94               val _ = List.app (ignore o Resources.check_file ctxt dir) doc_files;
    98               val _ = List.app (ignore o Resources.check_file ctxt dir) doc_files;
    95             in () end);
    99             in () end);
    96 
   100 
    97         val _ =
   101         val _ =
    98           export_files |> List.app (fn (export_dir, _) =>
   102           export_files |> List.app (fn ((export_dir, _), _) =>
    99             ignore (Resources.check_path ctxt session_dir export_dir));
   103             ignore (Resources.check_path ctxt session_dir export_dir));
   100       in () end));
   104       in () end));
   101 
   105 
   102 end;
   106 end;
   103 
   107