src/Pure/Isar/parse.scala
changeset 48718 73e6c22e2d94
parent 48600 305ebcd9018a
child 48911 5debc3e4fa81
--- a/src/Pure/Isar/parse.scala	Tue Aug 07 21:38:24 2012 +0200
+++ b/src/Pure/Isar/parse.scala	Tue Aug 07 22:25:17 2012 +0200
@@ -50,9 +50,11 @@
     def atom(s: String, pred: Elem => Boolean): Parser[String] =
       token(s, pred) ^^ (_.content)
 
+    def command(name: String): Parser[String] =
+      atom("command " + quote(name), tok => tok.is_command && tok.source == name)
+
     def keyword(name: String): Parser[String] =
-      atom(Token.Kind.KEYWORD.toString + " " + quote(name),
-        tok => tok.kind == Token.Kind.KEYWORD && tok.content == name)
+      atom("keyword " + quote(name), tok => tok.is_keyword && tok.source == name)
 
     def string: Parser[String] = atom("string", _.is_string)
     def nat: Parser[Int] = atom("natural number", _.is_nat) ^^ (s => Integer.parseInt(s))