ocaml/camlp4/Camlp4/PreCast.mli

77 lines
3.1 KiB
OCaml

(****************************************************************************)
(* *)
(* OCaml *)
(* *)
(* INRIA Rocquencourt *)
(* *)
(* Copyright 2006 Institut National de Recherche en Informatique et *)
(* en Automatique. All rights reserved. This file is distributed under *)
(* the terms of the GNU Library General Public License, with the special *)
(* exception on linking described in LICENSE at the top of the OCaml *)
(* source tree. *)
(* *)
(****************************************************************************)
(* Authors:
* - Daniel de Rauglaudre: initial version
* - Nicolas Pouillard: refactoring
*)
type camlp4_token = Sig.camlp4_token ==
[ KEYWORD of string
| SYMBOL of string
| LIDENT of string
| UIDENT of string
| ESCAPED_IDENT of string
| INT of int and string
| INT32 of int32 and string
| INT64 of int64 and string
| NATIVEINT of nativeint and string
| FLOAT of float and string
| CHAR of char and string
| STRING of string and string
| LABEL of string
| OPTLABEL of string
| QUOTATION of Sig.quotation
| ANTIQUOT of string and string
| COMMENT of string
| BLANKS of string
| NEWLINE
| LINE_DIRECTIVE of int and option string
| EOI ];
module Id : Sig.Id;
module Loc : Sig.Loc;
module Ast : Sig.Camlp4Ast with module Loc = Loc;
module Token : Sig.Token
with module Loc = Loc
and type t = camlp4_token;
module Lexer : Sig.Lexer
with module Loc = Loc
and module Token = Token;
module Gram : Sig.Grammar.Static
with module Loc = Loc
and module Token = Token;
module Quotation : Sig.Quotation with module Ast = Sig.Camlp4AstToAst Ast;
module DynLoader : Sig.DynLoader;
module AstFilters : Sig.AstFilters with module Ast = Ast;
module Syntax : Sig.Camlp4Syntax
with module Loc = Loc
and module Token = Token
and module Ast = Ast
and module Gram = Gram
and module Quotation = Quotation;
module Printers : sig
module OCaml : (Sig.Printer Ast).S;
module OCamlr : (Sig.Printer Ast).S;
module DumpOCamlAst : (Sig.Printer Ast).S;
module DumpCamlp4Ast : (Sig.Printer Ast).S;
module Null : (Sig.Printer Ast).S;
end;
module MakeGram (Lexer : Sig.Lexer with module Loc = Loc)
: Sig.Grammar.Static with module Loc = Loc and module Token = Lexer.Token;
module MakeSyntax (U : sig end) : Sig.Syntax;