ocamlspot / filepath.mli

(***********************************************************************)
(*                                                                     *)
(*                            OCamlSpotter                             *)
(*                                                                     *)
(*                             Jun FURUSE                              *)
(*                                                                     *)
(*   Copyright 2008-2012 Jun Furuse. All rights reserved.              *)
(*   This file is distributed under the terms of the GNU Library       *)
(*   General Public License, with the special exception on linking     *)
(*   described in file LICENSE.                                        *)
(*                                                                     *)
(***********************************************************************)

(* File path normalization *)

type t

val compare : t -> t -> int
val equal : t -> t -> bool

val contains_abs : t -> t -> string list option
(** contains_abs /a/b/c /a/b/c/d/e = Some ["d"; "e"] 
    Only works for absolute paths
*)

val of_string : string -> t
val to_string : t -> string
val is_absolute : t -> bool
val is_relative : t -> bool
val root : t
val is_root : t -> bool
val dirbase : t -> t * string option
val (^/) : t -> string -> t
val parent : t -> t
val wrap : (t -> t) -> string -> string
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.