Files
resolver/priv/resolver.aes
T
2026-05-27 15:33:29 +09:00

36 lines
1.1 KiB
Plaintext

@compiler == 9.0.0
include "String.aes"
contract Resolver =
record state =
{ips : list(string),
port : int,
salt : bytes(),
ids : list(address)}
stateful entrypoint init(ips : list(string), port : int, salt : string, ids : list(address)) : state =
{ips = ips,
port = port,
salt = String.to_bytes(salt),
ids = ids}
public stateful entrypoint ips(ips : list(string)) : unit =
require(Call.caller == Contract.creator, "Unauthorized")
put(state{ips = ips})
public stateful entrypoint port(port : int) : unit =
require(Call.caller == Contract.creator, "Unauthorized")
put(state{port = port})
public stateful entrypoint salt(salt : string) : unit =
require(Call.caller == Contract.creator, "Unauthorized")
put(state{salt = String.to_bytes(salt)})
public stateful entrypoint ids(ids : list(address)) : unit =
require(Call.caller == Contract.creator, "Unauthorized")
put(state{ids = ids})
public entrypoint resolve() : list(string) * int * bytes() * list(address) =
(state.ips, state.port, state.salt, state.ids)