src/Pure/Syntax/syn_ext.ML
changeset 14647 3f9d3d5cd0cd
parent 12865 6b3484b8d572
child 14697 5ad13d05049b
equal deleted inserted replaced
14646:f5f2340398f9 14647:3f9d3d5cd0cd
    59     -> (string * string * (string -> string * real)) list
    59     -> (string * string * (string -> string * real)) list
    60     -> (Ast.ast * Ast.ast) list * (Ast.ast * Ast.ast) list -> syn_ext
    60     -> (Ast.ast * Ast.ast) list * (Ast.ast * Ast.ast) list -> syn_ext
    61   val syn_ext_logtypes: string list -> syn_ext
    61   val syn_ext_logtypes: string list -> syn_ext
    62   val syn_ext_const_names: string list -> string list -> syn_ext
    62   val syn_ext_const_names: string list -> string list -> syn_ext
    63   val syn_ext_rules: string list -> (Ast.ast * Ast.ast) list * (Ast.ast * Ast.ast) list -> syn_ext
    63   val syn_ext_rules: string list -> (Ast.ast * Ast.ast) list * (Ast.ast * Ast.ast) list -> syn_ext
    64   val fix_tr': (term list -> term) -> bool -> typ -> term list -> term
       
    65   val syn_ext_trfuns: string list ->
    64   val syn_ext_trfuns: string list ->
    66     (string * (Ast.ast list -> Ast.ast)) list * (string * (term list -> term)) list *
    65     (string * (Ast.ast list -> Ast.ast)) list *
    67     (string * (term list -> term)) list * (string * (Ast.ast list -> Ast.ast)) list
    66     (string * (term list -> term)) list *
    68     -> syn_ext
    67     (string * (bool -> typ -> term list -> term)) list *
    69   val syn_ext_trfunsT: string list ->
    68     (string * (Ast.ast list -> Ast.ast)) list -> syn_ext
    70     (string * (bool -> typ -> term list -> term)) list -> syn_ext
       
    71   val syn_ext_tokentrfuns: string list
    69   val syn_ext_tokentrfuns: string list
    72     -> (string * string * (string -> string * real)) list -> syn_ext
    70     -> (string * string * (string -> string * real)) list -> syn_ext
    73   val pure_ext: syn_ext
    71   val pure_ext: syn_ext
    74 end;
    72 end;
    75 
    73 
   362   syn_ext logtypes [] cs ([], [], [], []) [] ([], []);
   360   syn_ext logtypes [] cs ([], [], [], []) [] ([], []);
   363 
   361 
   364 fun syn_ext_rules logtypes rules =
   362 fun syn_ext_rules logtypes rules =
   365   syn_ext logtypes [] [] ([], [], [], []) [] rules;
   363   syn_ext logtypes [] [] ([], [], [], []) [] rules;
   366 
   364 
   367 fun fix_tr' f _ _ ts = f ts;
   365 fun syn_ext_trfuns logtypes trfuns =
   368 
   366   syn_ext logtypes [] [] trfuns [] ([], []);
   369 fun syn_ext_trfuns logtypes (atrs, trs, tr's, atr's) =
       
   370   syn_ext logtypes [] [] (atrs, trs, map (apsnd fix_tr') tr's, atr's) [] ([], []);
       
   371 
       
   372 fun syn_ext_trfunsT logtypes tr's =
       
   373   syn_ext logtypes [] [] ([], [], tr's, []) [] ([], []);
       
   374 
   367 
   375 fun syn_ext_tokentrfuns logtypes tokentrfuns =
   368 fun syn_ext_tokentrfuns logtypes tokentrfuns =
   376   syn_ext logtypes [] [] ([], [], [], []) tokentrfuns ([], []);
   369   syn_ext logtypes [] [] ([], [], [], []) tokentrfuns ([], []);
   377 
   370 
   378 
   371