multiversx_sc_modules/
dns_proxy.rs1#![allow(clippy::all)]
2
3use multiversx_sc::proxy_imports::*;
4
5pub struct DnsProxy;
6
7impl<Env, From, To, Gas> TxProxyTrait<Env, From, To, Gas> for DnsProxy
8where
9 Env: TxEnv,
10 From: TxFrom<Env>,
11 To: TxTo<Env>,
12 Gas: TxGas<Env>,
13{
14 type TxProxyMethods = DnsProxyMethods<Env, From, To, Gas>;
15
16 fn proxy_methods(self, tx: Tx<Env, From, To, (), Gas, (), ()>) -> Self::TxProxyMethods {
17 DnsProxyMethods { wrapped_tx: tx }
18 }
19}
20
21pub struct DnsProxyMethods<Env, From, To, Gas>
22where
23 Env: TxEnv,
24 From: TxFrom<Env>,
25 To: TxTo<Env>,
26 Gas: TxGas<Env>,
27{
28 wrapped_tx: Tx<Env, From, To, (), Gas, (), ()>,
29}
30
31#[rustfmt::skip]
32impl<Env, From, To, Gas> DnsProxyMethods<Env, From, To, Gas>
33where
34 Env: TxEnv,
35 Env::Api: VMApi,
36 From: TxFrom<Env>,
37 To: TxTo<Env>,
38 Gas: TxGas<Env>,
39{
40 pub fn register<
41 Arg0: ProxyArg<ManagedBuffer<Env::Api>>,
42 >(
43 self,
44 name: Arg0,
45 ) -> TxTypedCall<Env, From, To, (), Gas, ()> {
46 self.wrapped_tx
47 .raw_call("register")
48 .argument(&name)
49 .original_result()
50 }
51}