ocaml/man/csllex.m

46 lines
1.2 KiB
Matlab

.TH CSLLEX 1
.SH NAME
csllex \- The Caml Special Light lexer generator
.SH SYNOPSIS
.B csllex
.I filename.mll
.SH DESCRIPTION
The
.BR csllex (1)
command generates Caml Special Light lexers from a set of regular
expressions with associated semantic actions, in the style of
.BR lex (1).
Running
.BR csllex (1)
on the input file
.IR lexer \&.mll
produces Caml code for a lexical analyzer in file
.IR 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
.BR cslyacc (1),
the semantic actions compute a value belonging to the type token defined
by the generated parsing module.
.SH SEE ALSO
.BR cslyacc (1).
.br
.I The Caml Special Light user's manual,
chapter "Lexer and parser generators".