diff options
author | pacien | 2018-04-29 20:24:38 +0200 |
---|---|---|
committer | pacien | 2018-04-29 20:24:38 +0200 |
commit | 0647f37eebbefb8446fc8abfc533a23952fbb8be (patch) | |
tree | fc9d69f32bd6c04de27c3795f6d54ed150bd4958 /src/reg.ml | |
parent | 80d7f0f204aacefa768d34f6db30108cb430cede (diff) | |
download | urm-0647f37eebbefb8446fc8abfc533a23952fbb8be.tar.gz |
Move sources to dedicated directory
Diffstat (limited to 'src/reg.ml')
-rw-r--r-- | src/reg.ml | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/reg.ml b/src/reg.ml new file mode 100644 index 0000000..56c4ae6 --- /dev/null +++ b/src/reg.ml | |||
@@ -0,0 +1,16 @@ | |||
1 | (* | ||
2 | * UPEM / L3 / Functional programming / Project: URM | ||
3 | * Pacien TRAN-GIRARD, Adam NAILI | ||
4 | *) | ||
5 | |||
6 | open Common | ||
7 | |||
8 | let reg_idx (Reg(idx, _)) = idx | ||
9 | let reg_val (Reg(_, value)) = value | ||
10 | let reg_compar l r = (reg_val l) - (reg_val r) | ||
11 | let reg_string (Reg (index, value)) = "(" ^ (string_of_int index) ^ "," ^ (string_of_int value) ^ ")" | ||
12 | |||
13 | let regs_get reglist index = List.find (fun (Reg(idx, _)) -> idx = index) reglist |> reg_val | ||
14 | let regs_set reglist index value = Reg(index, value) :: List.filter (fun (Reg(idx, _)) -> idx != index) reglist | ||
15 | let regs_sort = List.sort (fun (Reg(l, _)) (Reg(r, _)) -> compare l r) | ||
16 | let regs_string reglist = regs_sort reglist |> List.map (reg_string) |> String.concat "," | ||