Module Doctree.Shift

type state = {
englobing_level : int;
current_level : int;
}
val start : state
val shift : state -> int -> state * int
val enter : state -> int -> state
val walk_documentedsrc : on_sub:([> `Include of Types.Include.t | `Page of Types.Subpage.t ] -> int option) -> state -> Types.DocumentedSrc.t -> Types.DocumentedSrc.t
val subpage : on_sub:([> `Include of Types.Include.t | `Page of Types.Subpage.t ] -> int option) -> state -> Types.Subpage.t -> Types.Subpage.t
val include_ : on_sub:([> `Include of Types.Include.t | `Page of Types.Subpage.t ] -> int option) -> state -> Types.Include.t -> Types.Include.t
val walk_item : on_sub:([> `Include of Types.Include.t | `Page of Types.Subpage.t ] -> int option) -> state -> Types.Item.t list -> Types.Item.t list
val compute : on_sub:([> `Include of Types.Include.t | `Page of Types.Subpage.t ] -> int option) -> Types.Item.t list -> Types.Item.t list