tangled
alpha
login
or
join now
jon.recoil.org
/
day10
0
fork
atom
A fork of mtelver's day10 project
0
fork
atom
overview
issues
pulls
pipelines
Add json_packages.ml
Mark Elvers
4 months ago
70d23dd5
33f82dfb
+14
1 changed file
expand all
collapse all
unified
split
bin
json_packages.ml
+14
bin/json_packages.ml
···
1
1
+
type package_list = {
2
2
+
packages: string list;
3
3
+
} [@@deriving yojson]
4
4
+
5
5
+
let read_packages filename =
6
6
+
let json = Yojson.Safe.from_file filename in
7
7
+
match package_list_of_yojson json with
8
8
+
| Ok { packages } -> packages
9
9
+
| Error msg -> failwith (Printf.sprintf "Failed to parse package list from %s: %s" filename msg)
10
10
+
11
11
+
let write_packages filename packages =
12
12
+
let package_list = { packages } in
13
13
+
let json = package_list_to_yojson package_list in
14
14
+
Yojson.Safe.to_file filename json