NAME¶
jocamllex - The JoCaml lexer generator
SYNOPSIS¶
jocamllex [
-o output-file ] [
-ml ]
filename.mll
DESCRIPTION¶
The
jocamllex(1) command generates Objective Caml lexers from a set of
regular expressions with associated semantic actions, in the style of
lex(1).
Running
jocamllex(1) on the input file
lexer.mll produces Caml
code for a lexical analyzer in file
lexer.ml.
This file defines one lexing function per entry point in the lexer definition.
These functions have the same names as the entry points. Lexing functions take
as argument a lexer buffer, and return the semantic attribute of the
corresponding entry point.
Lexer buffers are an abstract data type implemented in the standard library
module Lexing. The functions Lexing.from_channel, Lexing.from_string and
Lexing.from_function create lexer buffers that read from an input channel, a
character string, or any reading function, respectively.
When used in conjunction with a parser generated by
jocamlyacc(1), the
semantic actions compute a value belonging to the type token defined by the
generated parsing module.
OPTIONS¶
The
jocamllex(1) command recognizes the following options:
- -o output-file
- Specify the output file name output-file instead of
the default naming convention.
- -ml
- Output code that does not use the Caml built-in automata
interpreter. Instead, the automaton is encoded by Caml functions. This
option is useful for debugging jocamllex(1), using it for
production lexers is not recommended.
SEE ALSO¶
jocamlyacc(1).
The Objective Caml user's manual, chapter "Lexer and parser
generators".