package dunolint

  1. Overview
  2. Docs
On This Page
  1. Helpers
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Dunolinter.LinterSource

Sourcemodule type S = sig ... end
Sourcetype t =
  1. | Unhandled
  2. | T : {
    1. eval : Dunolint.Predicate.t -> Dunolint.Trilang.t;
    2. enforce : Dunolint.Predicate.t Dunolint.Std.Blang.t -> Base.unit;
    } -> t

Helpers

Sourceval enforce_blang : (module Handler.Predicate with type t = 'predicate) -> 't -> condition:'predicate Dunolint.Std.Blang.t -> eval:('t -> predicate:'predicate -> Dunolint.Trilang.t) -> enforce:('t -> condition:'predicate Dunolint.Std.Blang.t -> Base.unit) -> Base.unit

A helper function that can be useful to implement enforce, in particular in sharing a default logic for blang constructors that cannot be automatically enforced.

Sourceval at_positive_enforcing_position : 'a Dunolint.Std.Blang.t -> 'a Base.list

Returns the list of elements from the input condition that are directly reachable as elements to be enforced, without going through dynamic conditions or SAT logic. In practice, that is Base, and elements under And _ recursively.

Sourceval public_name_is_prefix : Base.string -> prefix:Base.string -> Base.string

A helper that applies some usually helpful heuristic when proposing a new name based on the `is_prefix predicate. Assumed to be called when the given prefix is not already a prefix of the input, otherwise the output is unspecified.

OCaml

Innovation. Community. Security.