src/Pure/Isar/method.ML
changeset 26762 78ed28528ca6
parent 26472 9afdd61cf528
child 26892 9454a8bd1114
     1.1 --- a/src/Pure/Isar/method.ML	Tue Apr 29 15:25:50 2008 +0200
     1.2 +++ b/src/Pure/Isar/method.ML	Tue Apr 29 19:55:02 2008 +0200
     1.3 @@ -79,6 +79,7 @@
     1.4    val method_setup: bstring -> string * Position.T -> string -> theory -> theory
     1.5    val syntax: (Context.generic * Args.T list -> 'a * (Context.generic * Args.T list))
     1.6      -> src -> Proof.context -> 'a * Proof.context
     1.7 +  val simple_text: Args.T list -> text * Args.T list
     1.8    val simple_args: (Args.T list -> 'a * Args.T list)
     1.9      -> ('a -> Proof.context -> method) -> src -> Proof.context -> method
    1.10    val ctxt_args: (Proof.context -> method) -> src -> Proof.context -> method
    1.11 @@ -467,6 +468,11 @@
    1.12  
    1.13  fun syntax scan = Args.context_syntax "method" scan;
    1.14  
    1.15 +val simple_text = (Args.$$$ "(" |-- Args.name
    1.16 +    -- Scan.repeat (Scan.one (fn x => not (Args.string_of x = ")"))) --| Args.$$$ ")"
    1.17 +  || Args.name -- Scan.succeed [])
    1.18 +  >> (fn (name, args) => Source (Args.src ((name, args), Position.none)));
    1.19 +
    1.20  fun simple_args scan f src ctxt : method =
    1.21    fst (syntax (Scan.lift (scan >> (fn x => f x ctxt))) src ctxt);
    1.22