aboutsummaryrefslogtreecommitdiffstats
path: root/teal-src/util
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2022-02-16 16:42:22 +0100
committerKim Alvefur <zash@zash.se>2022-02-16 16:42:22 +0100
commitdfa35e5217b21c8ea8e10a1128c50d07e67c056b (patch)
tree2d5495907045b7ac41fce46a18ac8008acb23ba1 /teal-src/util
parentefb69fa99bc19dc1beab79829bf98987ab5a4a33 (diff)
downloadprosody-dfa35e5217b21c8ea8e10a1128c50d07e67c056b.tar.gz
prosody-dfa35e5217b21c8ea8e10a1128c50d07e67c056b.zip
util.set: Add teal type declaration file
Diffstat (limited to 'teal-src/util')
-rw-r--r--teal-src/util/set.d.tl21
1 files changed, 21 insertions, 0 deletions
diff --git a/teal-src/util/set.d.tl b/teal-src/util/set.d.tl
new file mode 100644
index 00000000..1631eec4
--- /dev/null
+++ b/teal-src/util/set.d.tl
@@ -0,0 +1,21 @@
+local record lib
+ record Set<T>
+ add : function<T> (Set<T>, T)
+ contains : function<T> (Set<T>, T) : boolean
+ contains_set : function<T> (Set<T>, Set<T>) : boolean
+ items : function<T> (Set<T>) : function<T> (Set<T>, T) : T
+ add_list : function<T> (Set<T>, { T })
+ include : function<T> (Set<T>, Set<T>)
+ exclude : function<T> (Set<T>, Set<T>)
+ empty : function<T> (Set<T>) : boolean
+ end
+
+ new : function<T> ({ T }) : Set<T>
+ is_set : function (any) : boolean
+ union : function<T> (Set<T>, Set<T>) : Set <T>
+ difference : function<T> (Set<T>, Set<T>) : Set <T>
+ intersection : function<T> (Set<T>, Set<T>) : Set <T>
+ xor : function<T> (Set<T>, Set<T>) : Set <T>
+end
+
+return lib