Sha256: abc5c7fdfade48f1a675111e5cae33bad94907aeaaf85b309e65b3264018169d

Contents?: true

Size: 433 Bytes

Versions: 151

Compression:

Stored size: 433 Bytes

Contents

open Core

let digit_to_int c =
  match c with
  | '0'..'9'  -> Some (int_of_char(c) - 48)
  | 'a'..'f'  -> Some (Char.to_int(c) - 97 + 10)
  | 'A'..'F'  -> Some (Char.to_int(c) - 97 + 10)
  | _ -> None

let to_int hex_str =
  let rec go acc = function
    | []    -> acc
    | c::cs -> match digit_to_int c with
                    | Some n -> go (acc * 16 + n) cs
                    | None -> 0 in
  go 0 (String.to_list hex_str)

Version data entries

151 entries across 151 versions & 1 rubygems

Version Path
trackler-2.2.1.70 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.69 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.68 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.67 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.66 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.65 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.64 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.63 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.62 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.61 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.60 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.59 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.58 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.57 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.56 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.55 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.54 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.53 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.52 tracks/ocaml/exercises/hexadecimal/example.ml
trackler-2.2.1.51 tracks/ocaml/exercises/hexadecimal/example.ml