src/Pure/Isar/class.ML
changeset 62939 ef8d840f39fb
parent 62765 5b95a12b7b19
child 63347 e344dc82f6c2
equal deleted inserted replaced
62938:79f41fbdf74a 62939:ef8d840f39fb
   766 
   766 
   767 fun standard_tac ctxt facts =
   767 fun standard_tac ctxt facts =
   768   HEADGOAL (Method.some_rule_tac ctxt [] facts) ORELSE
   768   HEADGOAL (Method.some_rule_tac ctxt [] facts) ORELSE
   769   standard_intro_classes_tac ctxt facts;
   769   standard_intro_classes_tac ctxt facts;
   770 
   770 
   771 fun default_tac ctxt facts st =
       
   772   (if Method.detect_closure_state st then
       
   773     legacy_feature
       
   774       ("Old method \"default\"; use \"standard\" instead" ^ Position.here (Position.thread_data ()))
       
   775    else ();
       
   776    standard_tac ctxt facts st);
       
   777 
       
   778 val _ = Theory.setup
   771 val _ = Theory.setup
   779  (Method.setup @{binding intro_classes} (Scan.succeed (METHOD o intro_classes_tac))
   772  (Method.setup @{binding intro_classes} (Scan.succeed (METHOD o intro_classes_tac))
   780     "back-chain introduction rules of classes" #>
   773     "back-chain introduction rules of classes" #>
   781   Method.setup @{binding standard} (Scan.succeed (METHOD o standard_tac))
   774   Method.setup @{binding standard} (Scan.succeed (METHOD o standard_tac))
   782     "standard proof step: Pure intro/elim rule or class introduction" #>
   775     "standard proof step: Pure intro/elim rule or class introduction");
   783   Method.setup @{binding default} (Scan.succeed (METHOD o default_tac))
       
   784     "standard proof step: Pure intro/elim rule or class introduction (legacy)");
       
   785 
   776 
   786 
   777 
   787 
   778 
   788 (** diagnostics **)
   779 (** diagnostics **)
   789 
   780