# Module BatEnum.Infix

    module Infix: sig .. end

    val (--) : int -> int -> int BatEnum.t

As `range`, without the label.

`5 -- 10` is the enumeration 5,6,7,8,9,10. `10 -- 5` is the empty enumeration

    val (--^) : int -> int -> int BatEnum.t

As `(--)` but without the right endpoint

`5 --^ 10` is the enumeration 5,6,7,8,9.

    val (--.) : float * float -> float -> float BatEnum.t

`(a, step) --. b)` creates a float enumeration from `a` to `b` with an increment of `step` between elements.

`(5.0, 1.0) --. 10.0` is the enumeration 5.0,6.0,7.0,8.0,9.0,10.0. `(10.0, -1.0) --. 5.0` is the enumeration 10.0,9.0,8.0,7.0,6.0,5.0. `(10.0, 1.0) --. 1.0` is the empty enumeration.

    val (---) : int -> int -> int BatEnum.t

As `--`, but accepts enumerations in reverse order.

`5 --- 10` is the enumeration 5,6,7,8,9,10. `10 --- 5` is the enumeration 10,9,8,7,6,5.

    val (--~) : char -> char -> char BatEnum.t

As ( -- ), but for characters.

    val (//) : 'a BatEnum.t -> ('a -> bool) -> 'a BatEnum.t

Filtering (pronounce this operator name "such that").

For instance, `(1 -- 37) // odd` is the enumeration of all odd numbers between 1 and 37.

    val (/@) : 'a BatEnum.t -> ('a -> 'b) -> 'b BatEnum.t

    val (@/) : ('a -> 'b) -> 'a BatEnum.t -> 'b BatEnum.t

Mapping operators.

These operators have the same meaning as function `BatEnum.map` but are sometimes more readable than this function, when chaining several transformations in a row.

    val (//@) : 'a BatEnum.t -> ('a -> 'b option) -> 'b BatEnum.t

    val (@//) : ('a -> 'b option) -> 'a BatEnum.t -> 'b BatEnum.t

Map combined with filter. Same as `BatEnum.filter_map`.