diff options
Diffstat (limited to 'lib/ingcsv.ml')
-rw-r--r-- | lib/ingcsv.ml | 18 |
1 files changed, 1 insertions, 17 deletions
diff --git a/lib/ingcsv.ml b/lib/ingcsv.ml index 53258fe..edb8aaa 100644 --- a/lib/ingcsv.ml +++ b/lib/ingcsv.ml | |||
@@ -1,6 +1,5 @@ | |||
1 | open Core | 1 | open Prelude |
2 | open Result.Let_syntax | 2 | open Result.Let_syntax |
3 | module Time_ns = Time_ns_unix | ||
4 | 3 | ||
5 | module Debit_credit = struct | 4 | module Debit_credit = struct |
6 | type t = Debit | Credit [@@deriving string, sexp_of] | 5 | type t = Debit | Credit [@@deriving string, sexp_of] |
@@ -561,21 +560,6 @@ let tx_from_prim ptx ~ams_tz : (tx, parse_err_ext) result = | |||
561 | 560 | ||
562 | type csv_err = Parse_err of parse_err_ext | Exn of exn | 561 | type csv_err = Parse_err of parse_err_ext | Exn of exn |
563 | 562 | ||
564 | module List = struct | ||
565 | include List | ||
566 | |||
567 | let map_result ~(f : 'a -> ('b, 'c) result) : 'a list -> ('b list, 'c) result | ||
568 | = | ||
569 | let open Result.Let_syntax in | ||
570 | let rec go = function | ||
571 | | [] -> return [] | ||
572 | | x :: xs -> | ||
573 | let%map x' = f x and xs' = go xs in | ||
574 | x' :: xs' | ||
575 | in | ||
576 | go | ||
577 | end | ||
578 | |||
579 | let read_channel (c : In_channel.t) ~ams_tz : (tx list, csv_err) result = | 563 | let read_channel (c : In_channel.t) ~ams_tz : (tx list, csv_err) result = |
580 | let%bind ptxs = | 564 | let%bind ptxs = |
581 | try | 565 | try |