Module Kurl.Kind

Kinds of URL requests

type root_is = [
| `Dir of string option
| `File

See kind.

type 'a t = 'a kind

See kind.

val v : ?root_is:root_is -> ?name:string -> 'a enc -> 'a dec -> 'a kind

See kind.

val name : 'a kind -> string

kind k is the name of k.

val root_is : 'a kind -> root_is

root_is k is root path encoding behaviour for k, see kind.

val enc : 'a kind -> 'a enc

enc k is the encoder of k.

val dec : 'a kind -> 'a dec

dec k is the decoder of k.

val equal : 'a kind -> 'a kind -> bool

equal k0 k1 is true iff k0 and k1 are the same kind.

Bare kinds

val bare : ?root_is:root_is -> ?name:string -> unit -> bare kind

bare () is a bare request kind. Can be used for untyped formatting tricks.