summaryrefslogtreecommitdiff
path: root/src/Print.ml
diff options
context:
space:
mode:
authorSon Ho2021-11-22 10:33:17 +0100
committerSon Ho2021-11-22 10:33:17 +0100
commit3d47e1943547780aed2f86736bfaef31c6431ce0 (patch)
tree4ad235a99db7426e8fb3ed983490951f583108da /src/Print.ml
parent61e54d5c7fa5e8662d8cc438f4f2bd4856bf3ca6 (diff)
Implement abs_to_string
Diffstat (limited to 'src/Print.ml')
-rw-r--r--src/Print.ml13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/Print.ml b/src/Print.ml
index 1555afc4..0240a307 100644
--- a/src/Print.ml
+++ b/src/Print.ml
@@ -379,4 +379,17 @@ module Values = struct
^ ")"
| AProjBorrows (sv, rty) ->
"proj_borrows (" ^ symbolic_value_proj_to_string fmt sv rty ^ ")"
+
+ let abs_to_string (fmt : value_formatter) (abs : abs) : string =
+ let avs =
+ List.map (fun av -> " " ^ typed_avalue_to_string fmt av) abs.avalues
+ in
+ let avs = String.concat ",\n" avs in
+ "abs@"
+ ^ AbstractionId.to_string abs.abs_id
+ ^ "{parents="
+ ^ AbstractionId.set_to_string abs.parents
+ ^ "}" ^ "{regions="
+ ^ RegionId.set_to_string abs.regions
+ ^ "}" ^ " {\n" ^ avs ^ "\n}"
end