SYNOPSIS

jocamllex [ -ooutput-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:

-ooutput-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.

RELATED TO jocamllex…

jocamlyacc(1).

The Objective Caml user's manual, chapter "Lexer and parser generators".