-
Notifications
You must be signed in to change notification settings - Fork 0
/
Anonymous Functions.Secrets.ex
50 lines (44 loc) · 1.02 KB
/
Anonymous Functions.Secrets.ex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
defmodule Secrets do
def secret_add(secret) do
# Please implement the secret_add/1 function
fn param ->
param + secret
end
end
def secret_subtract(secret) do
# Please implement the secret_subtract/1 function
fn param ->
param - secret
end
end
def secret_multiply(secret) do
# Please implement the secret_multiply/1 function
fn param ->
param * secret
end
end
def secret_divide(secret) do
# Please implement the secret_divide/1 function
fn param ->
div param, secret
end
end
def secret_and(secret) do
# Please implement the secret_and/1 function
fn param ->
Bitwise.band(param, secret)
end
end
def secret_xor(secret) do
# Please implement the secret_xor/1 function
fn param ->
Bitwise.bxor(param, secret)
end
end
def secret_combine(secret_function1, secret_function2) do
# Please implement the secret_combine/2 function
fn param ->
secret_function2.(secret_function1.(param))
end
end
end