Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- {
- module Lex
- open Microsoft.FSharp.Text.Lexing
- open Par;
- let lexemeAsString lexbuf =
- LexBuffer<char>.LexemeString lexbuf
- }
- let char = ['a'-'z' 'A'-'Z']
- let aps = '\''
- let eps = "eps"
- let star = '*'
- let alt = '|'
- let lpar = '('
- let rpar = ')'
- let whitespace = [' ' '\t' '\r' '\n']
- rule Token = parse
- | char { Token lexbuf }
- | aps { APS }
- | eps { EPS }
- | star { STAR }
- | alt { ALT }
- | lpar { LPAR }
- | rpar { RPAR }
- | whitespace { Token lexbuf }
- | eof { EOF }
- | _ { failwith "Lexer error: illegal symbol" }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement