src/Pure/Tools/rule_insts.ML
changeset 61853 fb7756087101
parent 61841 4d3527b94f2a
child 62012 12d3edd62932
equal deleted inserted replaced
61852:d273c24b5776 61853:fb7756087101
   180     -- Parse.for_fixes;
   180     -- Parse.for_fixes;
   181 
   181 
   182 val _ = Theory.setup
   182 val _ = Theory.setup
   183   (Attrib.setup @{binding "where"}
   183   (Attrib.setup @{binding "where"}
   184     (Scan.lift named_insts >> (fn args =>
   184     (Scan.lift named_insts >> (fn args =>
   185       Thm.rule_attribute (fn context => uncurry (where_rule (Context.proof_of context)) args)))
   185       Thm.rule_attribute [] (fn context => uncurry (where_rule (Context.proof_of context)) args)))
   186     "named instantiation of theorem");
   186     "named instantiation of theorem");
   187 
   187 
   188 
   188 
   189 (* of: positional instantiation (terms only) *)
   189 (* of: positional instantiation (terms only) *)
   190 
   190 
   200 in
   200 in
   201 
   201 
   202 val _ = Theory.setup
   202 val _ = Theory.setup
   203   (Attrib.setup @{binding "of"}
   203   (Attrib.setup @{binding "of"}
   204     (Scan.lift (insts -- Parse.for_fixes) >> (fn args =>
   204     (Scan.lift (insts -- Parse.for_fixes) >> (fn args =>
   205       Thm.rule_attribute (fn context => uncurry (of_rule (Context.proof_of context)) args)))
   205       Thm.rule_attribute [] (fn context => uncurry (of_rule (Context.proof_of context)) args)))
   206     "positional instantiation of theorem");
   206     "positional instantiation of theorem");
   207 
   207 
   208 end;
   208 end;
   209 
   209 
   210 
   210