src/Pure/sign.ML
changeset 2693 8300bba275e3
parent 2672 85d7e800d754
child 2963 f3b5af1c5a67
equal deleted inserted replaced
2692:484ec6ca0c50 2693:8300bba275e3
    58     (string * (term list -> term)) list *
    58     (string * (term list -> term)) list *
    59     (string * (term list -> term)) list *
    59     (string * (term list -> term)) list *
    60     (string * (ast list -> ast)) list -> sg -> sg
    60     (string * (ast list -> ast)) list -> sg -> sg
    61   val add_trfunsT:
    61   val add_trfunsT:
    62     (string * (typ -> term list -> term)) list -> sg -> sg
    62     (string * (typ -> term list -> term)) list -> sg -> sg
       
    63   val add_tokentrfuns:
       
    64     (string * string * (string -> string * int)) list -> sg -> sg
    63   val add_trrules: (string * string) Syntax.trrule list -> sg -> sg
    65   val add_trrules: (string * string) Syntax.trrule list -> sg -> sg
    64   val add_trrules_i: ast Syntax.trrule list -> sg -> sg
    66   val add_trrules_i: ast Syntax.trrule list -> sg -> sg
    65   val add_name: string -> sg -> sg
    67   val add_name: string -> sg -> sg
    66   val make_draft: sg -> sg
    68   val make_draft: sg -> sg
    67   val merge: sg * sg -> sg
    69   val merge: sg * sg -> sg
   550 val add_syntax_i     = extend_sign ext_syntax_i "#";
   552 val add_syntax_i     = extend_sign ext_syntax_i "#";
   551 val add_modesyntax   = extend_sign ext_modesyntax "#";
   553 val add_modesyntax   = extend_sign ext_modesyntax "#";
   552 val add_modesyntax_i = extend_sign ext_modesyntax_i "#";
   554 val add_modesyntax_i = extend_sign ext_modesyntax_i "#";
   553 val add_trfuns       = extend_sign (ext_syn Syntax.extend_trfuns) "#";
   555 val add_trfuns       = extend_sign (ext_syn Syntax.extend_trfuns) "#";
   554 val add_trfunsT      = extend_sign (ext_syn Syntax.extend_trfunsT) "#";
   556 val add_trfunsT      = extend_sign (ext_syn Syntax.extend_trfunsT) "#";
       
   557 val add_tokentrfuns  = extend_sign (ext_syn Syntax.extend_tokentrfuns) "#";
   555 val add_trrules      = extend_sign (ext_syn Syntax.extend_trrules) "#";
   558 val add_trrules      = extend_sign (ext_syn Syntax.extend_trrules) "#";
   556 val add_trrules_i    = extend_sign (ext_syn Syntax.extend_trrules_i) "#";
   559 val add_trrules_i    = extend_sign (ext_syn Syntax.extend_trrules_i) "#";
   557 
   560 
   558 fun add_name name sg = extend_sign K name () sg;
   561 fun add_name name sg = extend_sign K name () sg;
   559 val make_draft = add_name "#";
   562 val make_draft = add_name "#";
   614     ("prop", [], logicS),
   617     ("prop", [], logicS),
   615     ("itself", [logicS], logicS)]
   618     ("itself", [logicS], logicS)]
   616   |> add_syntax Syntax.pure_syntax
   619   |> add_syntax Syntax.pure_syntax
   617   |> add_modesyntax (("symbols", true), Syntax.pure_sym_syntax)
   620   |> add_modesyntax (("symbols", true), Syntax.pure_sym_syntax)
   618   |> add_trfuns Syntax.pure_trfuns
   621   |> add_trfuns Syntax.pure_trfuns
       
   622   |> add_trfunsT Syntax.pure_trfunsT
   619   |> add_consts
   623   |> add_consts
   620    [("==", "['a::{}, 'a] => prop", InfixrName ("==", 2)),
   624    [("==", "['a::{}, 'a] => prop", InfixrName ("==", 2)),
   621     ("=?=", "['a::{}, 'a] => prop", InfixrName ("=?=", 2)),
   625     ("=?=", "['a::{}, 'a] => prop", InfixrName ("=?=", 2)),
   622     ("==>", "[prop, prop] => prop", Mixfix ("(_/ ==> _)", [2, 1], 1)),
   626     ("==>", "[prop, prop] => prop", Mixfix ("(_/ ==> _)", [2, 1], 1)),
   623     ("all", "('a => prop) => prop", Binder ("!!", 0, 0)),
   627     ("all", "('a => prop) => prop", Binder ("!!", 0, 0)),