unc_cli_rs/commands/contract/call_function/
mod.rs1use strum::{EnumDiscriminants, EnumIter, EnumMessage};
2
3mod as_read_only;
4mod as_transaction;
5pub mod call_function_args_type;
6
7#[derive(Debug, Clone, interactive_clap::InteractiveClap)]
8#[interactive_clap(context = crate::GlobalContext)]
9pub struct CallFunctionCommands {
10 #[interactive_clap(subcommand)]
11 function_call_actions: CallFunctionActions,
12}
13
14#[derive(Debug, EnumDiscriminants, Clone, interactive_clap::InteractiveClap)]
15#[interactive_clap(context = crate::GlobalContext)]
16#[strum_discriminants(derive(EnumMessage, EnumIter))]
17pub enum CallFunctionActions {
19 #[strum_discriminants(strum(message = "as-read-only - Calling a view method"))]
20 AsReadOnly(self::as_read_only::CallFunctionView),
22 #[strum_discriminants(strum(message = "as-transaction - Calling a change method"))]
23 AsTransaction(self::as_transaction::CallFunctionProperties),
25}