package lascar

  1. Overview
  2. Docs
A library for manipulating Labeled Transition Systems in OCaml

Install

Dune Dependency

Authors

Maintainers

Sources

lascar-0.6-alpha.tbz
sha256=e33fd94f167bd7bc69f30d7a550226126692a00dac9b29c28ff0ff0aca7d7a21
sha512=98fe84ea351a288d371490f002c52c2e3637841f7fafadb1c3a1acb82befc436bbc6321b1c37fb1e2121b595e7fcb33da45510f3b623006a1d1b56d905313058

doc/src/lascar.utils/filenameExt.ml.html

Source file filenameExt.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
(**********************************************************************)
(*                                                                    *)
(*                              LASCAr                                *)
(*                                                                    *)
(*  Copyright (c) 2017-present, Jocelyn SEROT.  All rights reserved.  *)
(*                                                                    *)
(*  This source code is licensed under the license found in the       *)
(*  LICENSE file in the root directory of this source tree.           *)
(*                                                                    *)
(**********************************************************************)

let split_suffix name =
  try
    let i = String.rindex name '.' in
    String.sub name 0 i, String.sub name i (String.length name - i)
  with
    Not_found -> name, ""

let add_before_suffix name e =
  let b, s = split_suffix name in
  b ^ e ^ s

let replace_suffix name s =
  let b, _ = split_suffix name in
  b ^ "." ^ s
  
OCaml

Innovation. Community. Security.