package catala

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

Module File.TreeSource

A lazy tree structure mirroring the filesystem ; uses the comparison from File, so paths are case-insensitive.

Sourcetype path = t

Alias for File.t

Sourcetype item =
  1. | F
    (*

    Plain file

    *)
  2. | D of t
    (*

    Directory with subtree

    *)

Contents of a directory, lazily loaded. The map keys are the basenames of the files and subdirectories, while the values contain the original path (with correct capitalisation)

Sourceval empty : t
Sourceval build : path -> t

Lazily builds a Tree.path from the files read at path. The names in the maps are qualified (i.e. they all start with "path/")

Sourceval subtree : t -> path -> t

Looks up a path within a lazy tree

Sourceval lookup : t -> path -> path option

Checks if there is a matching plain file (case-insensitively) ; and returns its path with the correct case if so

Sourceval union : t -> t -> t

Merges two trees. In case of conflict, lhs entry wins

OCaml

Innovation. Community. Security.