src/Pure/General/symbol_pos.ML
changeset 62782 057e8dbe4326
parent 62781 7ba8b944d093
child 62797 e08c44eed27f
--- a/src/Pure/General/symbol_pos.ML	Thu Mar 31 15:42:01 2016 +0200
+++ b/src/Pure/General/symbol_pos.ML	Thu Mar 31 16:23:25 2016 +0200
@@ -46,6 +46,8 @@
   val explode0: string -> T list
   val scan_ident: T list -> T list * T list
   val is_identifier: string -> bool
+  val scan_nat: T list -> T list * T list
+  val scan_float: T list -> T list * T list
 end;
 
 structure Symbol_Pos: SYMBOL_POS =
@@ -300,6 +302,12 @@
       SOME (_, []) => true
     | _ => false);
 
+
+(* numerals *)
+
+val scan_nat = Scan.many1 (Symbol.is_digit o symbol);
+val scan_float = scan_nat @@@ $$$ "." @@@ scan_nat;
+
 end;
 
 structure Basic_Symbol_Pos =   (*not open by default*)