OCAMLLEX(1)OCAMLLEX(1)NAME
ocamllex - The OCaml lexer generator
SYNOPSIS
ocamllex [ -o output-file ] [ -ml ] filename.mll
DESCRIPTION
The ocamllex(1) command generates OCaml lexers from a set of regular
expressions with associated semantic actions, in the style of lex(1).
Running ocamllex(1) on the input file lexer.mll produces OCaml code for
a lexical analyzer in file lexer.ml.
This file defines one lexing function per entry point in the lexer def‐
inition. These functions have the same names as the entry points. Lex‐
ing 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, Lex‐
ing.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 ocamlyacc(1), the
semantic actions compute a value belonging to the type token defined by
the generated parsing module.
OPTIONS
The ocamllex(1) command recognizes the following options:
-ml Output code that does not use OCaml's built-in automata inter‐
preter. Instead, the automaton is encoded by OCaml functions.
This option is mainly useful for debugging ocamllex(1), using it
for production lexers is not recommended.
-o output-file
Specify the name of the output file produced by ocamllex(1).
The default is the input file name, with its extension replaced
by .ml.
-q Quiet mode. ocamllex(1) normally outputs informational messages
to standard output. They are suppressed if option -q is used.
-v or -version
Print version string and exit.
-vnum Print short version number and exit.
-help or --help
Display a short usage summary and exit.
SEE ALSOocamlyacc(1).
The OCaml user's manual, chapter "Lexer and parser generators".
OCAMLLEX(1)