Types
Describes a collection of dependencies (where each dependency is a value of type kind
. For the moment, a dependency collection is described as a Set on Kinds.
A Deps
can take many forms. For the moment, I only handle the case where the dependency is a file.
Helpers
val to_list : t -> kind list
to_list deps
turns a t
into a List
of kind
.
Translate kind
to Filepath.t
.
Effects Helpers
As working with a list of dependencies usually involves running effects, helpers for this are not a luxury!
Perfrom the effect File_exists
on a kind
.
Perfrom the effect Get_modification_time
on a kind
.
Perform the effect Get_modification_time
to find the largest change date included in the dependencies..
Defines whether a Aliases.Filepath.t
should be updated according to a t
using the effects management logic.
Implementations
module Monoid : Preface.Specs.MONOID with type t = t
module Writer : Preface.Specs.WRITER with type tape = t
A Writer monad over deps.
Included Set operations
include Stdlib.Set.S with type t := t and type elt = kind
val mem : elt -> t -> bool
val remove : elt -> t -> t
val disjoint : t -> t -> bool
val compare : t -> t -> int
val equal : t -> t -> bool
val subset : t -> t -> bool
val iter : (elt -> unit) -> t -> unit
val fold : (elt -> 'a -> 'a) -> t -> 'a -> 'a
val for_all : (elt -> bool) -> t -> bool
val exists : (elt -> bool) -> t -> bool
val filter : (elt -> bool) -> t -> t
val filter_map : (elt -> elt option) -> t -> t
val partition : (elt -> bool) -> t -> t * t
val elements : t -> elt list
val min_elt_opt : t -> elt option
val max_elt_opt : t -> elt option
val choose_opt : t -> elt option
val split : elt -> t -> t * bool * t
val find_opt : elt -> t -> elt option
val find_first : (elt -> bool) -> t -> elt
val find_first_opt : (elt -> bool) -> t -> elt option
val find_last : (elt -> bool) -> t -> elt
val find_last_opt : (elt -> bool) -> t -> elt option
val of_list : elt list -> t
val to_seq_from : elt -> t -> elt Stdlib.Seq.t
val to_seq : t -> elt Stdlib.Seq.t
val to_rev_seq : t -> elt Stdlib.Seq.t
val add_seq : elt Stdlib.Seq.t -> t -> t
val of_seq : elt Stdlib.Seq.t -> t