package ppxlib

  1. Overview
  2. Docs
Standard infrastructure for ppx rewriters

Install

Dune Dependency

Authors

Maintainers

Sources

ppxlib-0.35.0.tbz
sha256=d9d959fc9f84260487e45684dc741898a92fc5506b61a7f5cac65d21832db925
sha512=e428b1e3b89261c7efdaa18016264d1afbf067cb9b0d41124b04796c2487ac7ca8ee9a24a60d56f20d1774cb44aaa9ecf1512f17455812ba8d62d4ef93616ee7

doc/src/ppxlib/ast_pattern0.ml.html

Source file ast_pattern0.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
open! Import

exception Expected of Location.t * string

let fail loc expected = raise (Expected (loc, expected))

type context = {
  (* [matched] counts how many constructors have been matched. This is used to find what
     pattern matches the most some piece of ast in [Ast_pattern.alt]. In the case where
     all branches fail to match, we report the error from the one that matches the
     most.

     This is only incremented by combinators that can fail. *)
  mutable matched : int;
}

type ('matched_value, 'k, 'k_result) t =
  | T of (context -> Location.t -> 'matched_value -> 'k -> 'k_result)
OCaml

Innovation. Community. Security.