-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathart.rho
36 lines (36 loc) · 940 Bytes
/
art.rho
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
new artobj, $stdout, transferagreement in {
contract artobj (@"new", certOfAuth, artist, owner, resalecontract, return) = {
new buy, sell, data, artistCh, anArtObj, admin in {
data!({"certOfAuth": *certOfAuth, "owner": *owner, "contract": *resalecontract}) |
artistCh!(*artist) |
return!(*anArtObj,*admin)|
contract admin ( @"sell", price ) = {
stdout!("hi")
} |
contract admin (@"setData", key, value ) = {
for ( dat <- data ) {
data!({*key: *value}.union(*dat))
}
} |
contract anArtObj (@"getData", key, value ) = {
for ( dat <- data ) {
data!(*dat) |
value!({*dat}.get(*key) )
}
} |
contract anArtObj (@"buy", who, payment ) = {
Nil
} |
contract anArtObj (@"info", payment ) = {
Nil
}
}
|
contract transferagreement () = {
Nil
}
} |
new ericvideo,caps in {
artobj!("new", {"name": "cool vid"}, {"name": "eric" }, *transferagreement, *caps)
}
}