Current section
Files
Jump to
Current section
Files
lib/data/contains.ex
# DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
# Version 2, December 2004
#
# DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
# TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
#
# 0. You just DO WHAT THE FUCK YOU WANT TO.
defprotocol Data.Contains do
def contains?(self, what)
end
defimpl Data.Contains, for: List do
def contains?([], _) do
false
end
def contains?([{ _, _ } | _] = self, { _, _ } = what) do
:lists.member(what, self)
end
def contains?([{ _, _ } | _] = self, key) do
:lists.keymember(key, 1, self)
end
def contains?(self, what) do
:lists.member(what, self)
end
end