aboutsummaryrefslogtreecommitdiffstats
path: root/lib/concepts/Condition.mli
diff options
context:
space:
mode:
Diffstat (limited to 'lib/concepts/Condition.mli')
-rw-r--r--lib/concepts/Condition.mli14
1 files changed, 14 insertions, 0 deletions
diff --git a/lib/concepts/Condition.mli b/lib/concepts/Condition.mli
new file mode 100644
index 0000000..fba43e6
--- /dev/null
+++ b/lib/concepts/Condition.mli
@@ -0,0 +1,14 @@
+(** an abstract type representing an error condition *)
+type condition
+
+type ps
+
+val ( |=| ) : string -> Value.value -> ps
+val ( & ) : ps -> ps -> ps
+val empty : ps
+
+(** construct a condition out of a name, a message, a set of properties and an optional parent *)
+val condition : string -> string -> ?parent:condition -> ps -> condition
+
+(** print a condition to a human-readable string *)
+val to_string_hum : condition -> string