package ocamlformat-lib

  1. Overview
  2. Docs
OCaml Code Formatter

Install

dune-project
 Dependency

Authors

Maintainers

Sources

ocamlformat-0.29.0.tbz
sha256=dac77f0a957ae782bb4b869b07b9803a872a34f8c1eae8901b42d21b623c9db5
sha512=b4ae6fda3c28e91dc12411b577df7b216e9b1afe5887bcb9e89c158e1313dc92183c29ffb256f47f5c9384af3ac8c505ec76849b26ae950b82c9b4c21a460819

doc/src/ocamlformat-lib.ocamlformat_stdlib/string_ext.ml.html

Source file string_ext.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
include Base
include String

let starts_with_whitespace s = (not (is_empty s)) && Char.is_whitespace s.[0]

let ends_with_whitespace s =
  (not (is_empty s)) && Char.is_whitespace s.[length s - 1]

let rec _indent_of_line s i end_ =
    if Int.equal i end_ then None
    else
      match s.[i] with
      | ' ' | '\t' -> _indent_of_line s (i + 1) end_
      | '\n' | '\r' -> None
      | _ -> Some i

let indent_of_line s = _indent_of_line s 0 (String.length s)