package coq

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

Module CArray.SmartSource

The functions defined in this module are optimized specializations of the main ones, when the returned array is of same type as one of the original array.

Sourceval map : ('a -> 'a) -> 'a array -> 'a array

Smart.map f a behaves as map f a but returns a instead of a copy when f x == x for all x in a.

Sourceval map_i : (int -> 'a -> 'a) -> 'a array -> 'a array
Sourceval map2 : ('a -> 'b -> 'b) -> 'a array -> 'b array -> 'b array

Smart.map2 f a b behaves as map2 f a b but returns a instead of a copy when f x y == y for all x in a and y in b pointwise.

Sourceval fold_left_map : ('a -> 'b -> 'a * 'b) -> 'a -> 'b array -> 'a * 'b array

Smart.fold_left_mapf a b behaves as fold_left_map but returns b as second component instead of a copy of b when the output array is pointwise the same as the input array b

Sourceval fold_left2_map : ('a -> 'b -> 'c -> 'a * 'c) -> 'a -> 'b array -> 'c array -> 'a * 'c array

Smart.fold_left2_map f a b c behaves as fold_left2_map but returns c as second component instead of a copy of c when the output array is pointwise the same as the input array c

OCaml

Innovation. Community. Security.