teal-src/prosody/util/set.d.tl
author Kim Alvefur <zash@zash.se>
Thu, 23 Mar 2023 13:36:52 +0100
changeset 12983 fbbf4f0db8f0
parent 12621 teal-src/util/set.d.tl@36d77cc56ecb
child 13022 9ed4a8502c54
permissions -rw-r--r--
teal: Move into prosody namespace
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12621
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     1
local record lib
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     2
	record Set<T>
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     3
		add : function<T> (Set<T>, T)
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     4
		contains : function<T> (Set<T>, T) : boolean
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     5
		contains_set : function<T> (Set<T>, Set<T>) : boolean
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     6
		items :  function<T> (Set<T>) : function<T> (Set<T>, T) : T
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     7
		add_list : function<T> (Set<T>, { T })
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     8
		include : function<T> (Set<T>, Set<T>)
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     9
		exclude : function<T> (Set<T>, Set<T>)
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    10
		empty : function<T> (Set<T>) : boolean
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    11
	end
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    12
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    13
	new : function<T> ({ T }) : Set<T>
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    14
	is_set : function (any) : boolean
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    15
	union : function<T> (Set<T>, Set<T>) : Set <T>
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    16
	difference : function<T> (Set<T>, Set<T>) : Set <T>
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    17
	intersection : function<T> (Set<T>, Set<T>) : Set <T>
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    18
	xor : function<T> (Set<T>, Set<T>) : Set <T>
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    19
end
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    20
36d77cc56ecb util.set: Add teal type declaration file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    21
return lib