aboutsummaryrefslogtreecommitdiffstats
path: root/lib/concepts
diff options
context:
space:
mode:
authorMarcos Magueta <maguetamarcos@gmail.com>2026-09-23 03:32:15 -0300
committerMarcos Magueta <maguetamarcos@gmail.com>2026-09-23 03:32:15 -0300
commit882511dc8c0abded18ba6abdca64938db2652771 (patch)
treed1ebc2896cf9bb939a89c10d626d19cd5d4f591e /lib/concepts
parentb4422c99e10a8daee452b22aea84cb1f68ae54bc (diff)
downloadRNT-882511dc8c0abded18ba6abdca64938db2652771.tar.gz
RNT-882511dc8c0abded18ba6abdca64938db2652771.zip
lift retaining, membership and mode checks out of ephemeral relation
Diffstat (limited to 'lib/concepts')
-rw-r--r--lib/concepts/Mode.ml1
-rw-r--r--lib/concepts/Mode.mli1
2 files changed, 2 insertions, 0 deletions
diff --git a/lib/concepts/Mode.ml b/lib/concepts/Mode.ml
index 6ac1704..fc3ef84 100644
--- a/lib/concepts/Mode.ml
+++ b/lib/concepts/Mode.ml
@@ -5,6 +5,7 @@ type mode = {bound: attributes; affords: affordance}
type t = mode list
let attributes_of_list = BatSet.String.of_list
+let attributes_of_map map = BatMap.String.keys map |> BatSet.String.of_enum
let decides_when bound = {bound= attributes_of_list bound; affords= Decides}
let generates_when bound cardinality =
diff --git a/lib/concepts/Mode.mli b/lib/concepts/Mode.mli
index 8d84093..018eeb2 100644
--- a/lib/concepts/Mode.mli
+++ b/lib/concepts/Mode.mli
@@ -11,6 +11,7 @@ type mode = {bound: attributes; affords: affordance}
type t
val attributes_of_list : attribute list -> attributes
+val attributes_of_map : 'a BatMap.String.t -> attributes
val decides_when : attribute list -> mode
val generates_when : attribute list -> Cardinality.t -> mode
val enumerable : Cardinality.t -> mode