Module Melange_compiler_libs

module Annot : sig ... end
module Ast_helper : sig ... end

Helpers to produce Parsetree fragments

module Ast_iterator : sig ... end

Ast_iterator.iterator enables AST inspection using open recursion. A typical mapper would be based on Ast_iterator.default_iterator, a trivial iterator, and will fall back on it for handling the syntax it does not modify.

module Ast_mapper : sig ... end

The interface of a -ppx rewriter

module Attr_helper : sig ... end

Helpers for attributes

module Bs_clflags : sig ... end
module Btype : sig ... end
module Builtin_attributes : sig ... end

Support for some of the builtin attributes

module Cmi_format : sig ... end
module Cmt_format : sig ... end

cmt and cmti files format.

module Config : sig ... end

System configuration

module Consistbl : sig ... end

Consistency tables: for checking consistency of module CRCs

module Ctype : sig ... end
module Datarepr : sig ... end
module Depend : sig ... end

Module dependencies.

module Diffing : sig ... end

Parametric diffing

module Diffing_with_keys : sig ... end

When diffing lists where each element has a distinct key, we can refine the diffing patch by introducing two composite edit moves: swaps and moves.

module Docstrings : sig ... end

Documentation comments

module Env : sig ... end
module Envaux : sig ... end
module Errortrace : sig ... end
module Includeclass : sig ... end
module Includecore : sig ... end
module Includemod : sig ... end
module Includemod_errorprinter : sig ... end
module Lambda : sig ... end
module Lazy_backtrack : sig ... end
module Lexer : sig ... end

The lexical analyzer

module Load_path : sig ... end

Management of include directories.

module Location : sig ... end

Source code locations (ranges of positions), used in parsetree.

module Matching : sig ... end
module Misc : sig ... end

Miscellaneous useful types and functions

module Mtype : sig ... end
module Oprint : sig ... end
module Outcometree : sig ... end
module Parmatch : sig ... end

Detection of partial matches and unused match cases.

module Parse : sig ... end

Entry points in the parser

module Parser : sig ... end
module Parsetree : sig ... end

Abstract syntax tree produced by parsing

module Path : sig ... end
module Patterns : sig ... end
module Persistent_env : sig ... end
module Pprintast : sig ... end

Pretty-printers for Parsetree

module Predef : sig ... end
module Primitive : sig ... end
module Printast : sig ... end

Raw printer for Parsetree

module Printlambda : sig ... end
module Printpat : sig ... end
module Printtyp : sig ... end
module Printtyped : sig ... end
module Rec_check : sig ... end
module Shape : sig ... end
module Syntaxerr : sig ... end

Auxiliary type for reporting syntax errors

module Signature_group : sig ... end

Iterate on signature by syntactic group of items

module Simplif : sig ... end

Lambda simplification.

module Stypes : sig ... end
module Subst : sig ... end
module Switch : sig ... end
module Tast_iterator : sig ... end

Allows the implementation of typed tree inspection using open recursion

module Tast_mapper : sig ... end
module Tmc : sig ... end

Tail-modulo-cons optimization.

module Translattribute : sig ... end
module Translclass : sig ... end
module Translcore : sig ... end
module Translmod : sig ... end
module Translobj : sig ... end
module Translprim : sig ... end
module Type_immediacy : sig ... end

Immediacy status of a type

module Typeclass : sig ... end
module Typecore : sig ... end
module Typedecl : sig ... end
module Typedecl_immediacy : sig ... end
module Typedecl_properties : sig ... end
module Typedecl_separability : sig ... end

The OCaml runtime assumes for type-directed optimizations that all types are "separable". A type is "separable" if either all its inhabitants (the values of this type) are floating-point numbers, or none of them are.

module Typedecl_unboxed : sig ... end
module Typedecl_variance : sig ... end
module Typedtree : sig ... end

Abstract syntax tree after typing

module Typemod : sig ... end

Type-checking of the module language and typed ast hooks

module Typeopt : sig ... end
module Types : sig ... end
module Typetexp : sig ... end
module Untypeast : sig ... end
module Warnings : sig ... end

Warning definitions