Blame builtin/builtin_FilePattern.ml

Packit bd2e5d
(* File patterns *)
Packit bd2e5d
(* type *)
Packit bd2e5d
type filePattern = {
Packit bd2e5d
    typename : string;
Packit bd2e5d
    extensions : string list;
Packit bd2e5d
    mactypes : string list
Packit bd2e5d
  }
Packit bd2e5d
(* /type *)
Packit bd2e5d
Packit bd2e5d
let cCAMLtoTKfilePattern fp =
Packit bd2e5d
  let typename = TkQuote (TkToken fp.typename) in
Packit bd2e5d
  let extensions =
Packit bd2e5d
    TkQuote (TkTokenList (List.map (fun x -> TkToken x) fp.extensions)) in
Packit bd2e5d
  let mactypes =
Packit bd2e5d
    match fp.mactypes with
Packit bd2e5d
    | [] -> []
Packit bd2e5d
    | [s] -> [TkToken s]
Packit bd2e5d
    | _ -> [TkQuote (TkTokenList (List.map (fun x -> TkToken x) fp.mactypes))]
Packit bd2e5d
  in
Packit bd2e5d
  TkQuote (TkTokenList (typename :: extensions :: mactypes))