summaryrefslogtreecommitdiff
path: root/2025/ocaml/lib/infrastructure
diff options
context:
space:
mode:
authorDJ O'Leary <dijitol@proton.me>2025-12-01 22:52:12 +0100
committerDJ O'Leary <dijitol@proton.me>2025-12-01 22:52:12 +0100
commitca7631ff2fdc6d783f1ae8043de95dcd1b6b7d08 (patch)
treec92542fac87894f6ab8b8540bb7932fc0c5aa910 /2025/ocaml/lib/infrastructure
parentcdbf4be6fa793ca1286604bdc2a1bb5c9e6a197a (diff)
feat(file): implement file reader
Diffstat (limited to '2025/ocaml/lib/infrastructure')
-rw-r--r--2025/ocaml/lib/infrastructure/file_reader.ml4
-rw-r--r--2025/ocaml/lib/infrastructure/file_reader.mli3
2 files changed, 7 insertions, 0 deletions
diff --git a/2025/ocaml/lib/infrastructure/file_reader.ml b/2025/ocaml/lib/infrastructure/file_reader.ml
new file mode 100644
index 0000000..7a80c0b
--- /dev/null
+++ b/2025/ocaml/lib/infrastructure/file_reader.ml
@@ -0,0 +1,4 @@
+let read_file filename =
+ let chan = In_channel.open_text filename in
+ let content = In_channel.input_all chan in
+ In_channel.close chan ; content
diff --git a/2025/ocaml/lib/infrastructure/file_reader.mli b/2025/ocaml/lib/infrastructure/file_reader.mli
new file mode 100644
index 0000000..bb40577
--- /dev/null
+++ b/2025/ocaml/lib/infrastructure/file_reader.mli
@@ -0,0 +1,3 @@
+val read_file : string -> string
+(** [read_file filename] is the contents of [filename] as a string.
+ The empty string is returned if [filename] does not exist. *)