Enum ClientCommand

Source
pub enum ClientCommand {
Show 40 variants Transfer { sender: Account, recipient: Account, amount: Amount, }, OpenChain { chain_id: Option<ChainId>, owner: Option<AccountOwner>, balance: Amount, }, OpenMultiOwnerChain { chain_id: Option<ChainId>, ownership_config: ChainOwnershipConfig, application_permissions_config: ApplicationPermissionsConfig, balance: Amount, }, ChangeOwnership { chain_id: Option<ChainId>, ownership_config: ChainOwnershipConfig, }, SetPreferredOwner { chain_id: Option<ChainId>, owner: AccountOwner, }, ChangeApplicationPermissions { chain_id: Option<ChainId>, application_permissions_config: ApplicationPermissionsConfig, }, CloseChain { chain_id: ChainId, }, LocalBalance { account: Option<Account>, }, QueryBalance { account: Option<Account>, }, SyncBalance { account: Option<Account>, }, Sync { chain_id: Option<ChainId>, }, ProcessInbox { chain_id: Option<ChainId>, }, QueryValidator { address: String, chain_id: Option<ChainId>, public_key: Option<ValidatorPublicKey>, }, QueryValidators { chain_id: Option<ChainId>, }, SyncValidator { address: String, chains: Vec<ChainId>, }, SetValidator { public_key: ValidatorPublicKey, account_key: AccountPublicKey, address: String, votes: u64, skip_online_check: bool, }, RemoveValidator { public_key: ValidatorPublicKey, }, RevokeEpochs { epoch: Epoch, }, ResourceControlPolicy {
Show 31 fields wasm_fuel_unit: Option<Amount>, evm_fuel_unit: Option<Amount>, read_operation: Option<Amount>, write_operation: Option<Amount>, byte_read: Option<Amount>, byte_written: Option<Amount>, blob_read: Option<Amount>, blob_published: Option<Amount>, blob_byte_read: Option<Amount>, blob_byte_published: Option<Amount>, byte_stored: Option<Amount>, operation: Option<Amount>, operation_byte: Option<Amount>, message: Option<Amount>, message_byte: Option<Amount>, service_as_oracle_query: Option<Amount>, http_request: Option<Amount>, maximum_wasm_fuel_per_block: Option<u64>, maximum_evm_fuel_per_block: Option<u64>, maximum_service_oracle_execution_ms: Option<u64>, maximum_block_size: Option<u64>, maximum_blob_size: Option<u64>, maximum_published_blobs: Option<u64>, maximum_bytecode_size: Option<u64>, maximum_block_proposal_size: Option<u64>, maximum_bytes_read_per_block: Option<u64>, maximum_bytes_written_per_block: Option<u64>, maximum_oracle_response_bytes: Option<u64>, maximum_http_response_bytes: Option<u64>, http_request_timeout_ms: Option<u64>, http_request_allow_list: Option<Vec<String>>,
}, Benchmark(BenchmarkCommand), MultiBenchmark { processes: usize, faucet: String, ssd_dir: Option<String>, command: BenchmarkCommand, delay_between_processes: u64, }, CreateGenesisConfig {
Show 39 fields committee_config_path: PathBuf, genesis_config_path: PathBuf, initial_funding: Amount, start_timestamp: Option<DateTime<Utc>>, num_other_initial_chains: u32, policy_config: ResourceControlPolicyConfig, wasm_fuel_unit_price: Option<Amount>, evm_fuel_unit_price: Option<Amount>, read_operation_price: Option<Amount>, write_operation_price: Option<Amount>, byte_read_price: Option<Amount>, byte_written_price: Option<Amount>, blob_read_price: Option<Amount>, blob_published_price: Option<Amount>, blob_byte_read_price: Option<Amount>, blob_byte_published_price: Option<Amount>, byte_stored_price: Option<Amount>, operation_price: Option<Amount>, operation_byte_price: Option<Amount>, message_price: Option<Amount>, message_byte_price: Option<Amount>, service_as_oracle_query_price: Option<Amount>, http_request_price: Option<Amount>, maximum_wasm_fuel_per_block: Option<u64>, maximum_evm_fuel_per_block: Option<u64>, maximum_service_oracle_execution_ms: Option<u64>, maximum_block_size: Option<u64>, maximum_bytecode_size: Option<u64>, maximum_blob_size: Option<u64>, maximum_published_blobs: Option<u64>, maximum_block_proposal_size: Option<u64>, maximum_bytes_read_per_block: Option<u64>, maximum_bytes_written_per_block: Option<u64>, maximum_oracle_response_bytes: Option<u64>, maximum_http_response_bytes: Option<u64>, http_request_timeout_ms: Option<u64>, http_request_allow_list: Option<Vec<String>>, testing_prng_seed: Option<u64>, network_name: Option<String>,
}, Watch { chain_id: Option<ChainId>, raw: bool, }, Service { config: ChainListenerConfig, port: NonZeroU16, }, Faucet { chain_id: Option<ChainId>, port: NonZeroU16, amount: Amount, limit_rate_until: Option<DateTime<Utc>>, config: ChainListenerConfig, }, PublishModule { contract: PathBuf, service: PathBuf, vm_runtime: VmRuntime, publisher: Option<ChainId>, }, ListEventsFromIndex { chain_id: Option<ChainId>, stream_id: StreamId, start_index: u32, }, PublishDataBlob { blob_path: PathBuf, publisher: Option<ChainId>, }, ReadDataBlob { hash: CryptoHash, reader: Option<ChainId>, }, CreateApplication { module_id: ModuleId, creator: Option<ChainId>, json_parameters: Option<String>, json_parameters_path: Option<PathBuf>, json_argument: Option<String>, json_argument_path: Option<PathBuf>, required_application_ids: Option<Vec<ApplicationId>>, }, PublishAndCreate { contract: PathBuf, service: PathBuf, vm_runtime: VmRuntime, publisher: Option<ChainId>, json_parameters: Option<String>, json_parameters_path: Option<PathBuf>, json_argument: Option<String>, json_argument_path: Option<PathBuf>, required_application_ids: Option<Vec<ApplicationId>>, }, Keygen, Assign { owner: AccountOwner, chain_id: ChainId, }, RetryPendingBlock { chain_id: Option<ChainId>, }, Wallet(WalletCommand), Project(ProjectCommand), Net(NetCommand), Storage(DatabaseToolCommand), HelpMarkdown, ExtractScriptFromMarkdown { path: PathBuf, pause_after_linera_service: Duration, pause_after_gql_mutations: Duration, },
}

Variants§

§

Transfer

Transfer funds

Fields

§sender: Account

Sending chain ID (must be one of our chains)

§recipient: Account

Recipient account

§amount: Amount

Amount to transfer

§

OpenChain

Open (i.e. activate) a new chain deriving the UID from an existing one.

Fields

§chain_id: Option<ChainId>

Chain ID (must be one of our chains).

§owner: Option<AccountOwner>

The new owner (otherwise create a key pair and remember it)

§balance: Amount

The initial balance of the new chain. This is subtracted from the parent chain’s balance.

§

OpenMultiOwnerChain

Open (i.e. activate) a new multi-owner chain deriving the UID from an existing one.

Fields

§chain_id: Option<ChainId>

Chain ID (must be one of our chains).

§ownership_config: ChainOwnershipConfig
§application_permissions_config: ApplicationPermissionsConfig
§balance: Amount

The initial balance of the new chain. This is subtracted from the parent chain’s balance.

§

ChangeOwnership

Change who owns the chain, and how the owners work together proposing blocks.

Specify the complete set of new owners, by public key. Existing owners that are not included will be removed.

Fields

§chain_id: Option<ChainId>

The ID of the chain whose owners will be changed.

§ownership_config: ChainOwnershipConfig
§

SetPreferredOwner

Change the preferred owner of a chain.

Fields

§chain_id: Option<ChainId>

The ID of the chain whose preferred owner will be changed.

§owner: AccountOwner

The new preferred owner.

§

ChangeApplicationPermissions

Changes the application permissions configuration.

Fields

§chain_id: Option<ChainId>

The ID of the chain to which the new permissions will be applied.

§application_permissions_config: ApplicationPermissionsConfig
§

CloseChain

Close an existing chain.

A closed chain cannot execute operations or accept messages anymore. It can still reject incoming messages, so they bounce back to the sender.

Fields

§chain_id: ChainId

Chain ID (must be one of our chains)

§

LocalBalance

Read the current native-token balance of the given account directly from the local state.

NOTE: The local balance does not reflect messages that are waiting to be picked in the local inbox, or that have not been synchronized from validators yet. Use linera sync then either linera query-balance or linera process-inbox && linera local-balance for a consolidated balance.

Fields

§account: Option<Account>

The account to read, written as CHAIN-ID:OWNER or simply CHAIN-ID for the chain balance. By default, we read the chain balance of the default chain in the wallet.

§

QueryBalance

Simulate the execution of one block made of pending messages from the local inbox, then read the native-token balance of the account from the local state.

NOTE: The balance does not reflect messages that have not been synchronized from validators yet. Call linera sync first to do so.

Fields

§account: Option<Account>

The account to query, written as CHAIN-ID:OWNER or simply CHAIN-ID for the chain balance. By default, we read the chain balance of the default chain in the wallet.

§

SyncBalance

(DEPRECATED) Synchronize the local state of the chain with a quorum validators, then query the local balance.

This command is deprecated. Use linera sync && linera query-balance instead.

Fields

§account: Option<Account>

The account to query, written as CHAIN-ID:OWNER or simply CHAIN-ID for the chain balance. By default, we read the chain balance of the default chain in the wallet.

§

Sync

Synchronize the local state of the chain with a quorum validators.

Fields

§chain_id: Option<ChainId>

The chain to synchronize with validators. If omitted, synchronizes the default chain of the wallet.

§

ProcessInbox

Process all pending incoming messages from the inbox of the given chain by creating as many blocks as needed to execute all (non-failing) messages. Failing messages will be marked as rejected and may bounce to their sender depending on their configuration.

Fields

§chain_id: Option<ChainId>

The chain to process. If omitted, uses the default chain of the wallet.

§

QueryValidator

Show the version and genesis config hash of a new validator, and print a warning if it is incompatible. Also print some information about the given chain while we are at it.

Fields

§address: String

The new validator’s address.

§chain_id: Option<ChainId>

The chain to query. If omitted, query the default chain of the wallet.

§public_key: Option<ValidatorPublicKey>

The public key of the validator. If given, the signature of the chain query info will be checked.

§

QueryValidators

Show the current set of validators for a chain. Also print some information about the given chain while we are at it.

Fields

§chain_id: Option<ChainId>

The chain to query. If omitted, query the default chain of the wallet.

§

SyncValidator

Synchronizes a validator with the local state of chains.

Fields

§address: String

The public address of the validator to synchronize.

§chains: Vec<ChainId>

The chains to synchronize, or the default chain if empty.

§

SetValidator

Add or modify a validator (admin only)

Fields

§public_key: ValidatorPublicKey

The public key of the validator.

§account_key: AccountPublicKey

The public key of the account controlled by the validator.

§address: String

Network address

§votes: u64

Voting power

§skip_online_check: bool

Skip the version and genesis config checks.

§

RemoveValidator

Remove a validator (admin only)

Fields

§public_key: ValidatorPublicKey

The public key of the validator.

§

RevokeEpochs

Deprecates all committees up to and including the specified one.

Fields

§epoch: Epoch
§

ResourceControlPolicy

View or update the resource control policy

Fields

§wasm_fuel_unit: Option<Amount>

Set the price per unit of Wasm fuel.

§evm_fuel_unit: Option<Amount>

Set the price per unit of EVM fuel.

§read_operation: Option<Amount>

Set the price per read operation.

§write_operation: Option<Amount>

Set the price per write operation.

§byte_read: Option<Amount>

Set the price per byte read.

§byte_written: Option<Amount>

Set the price per byte written.

§blob_read: Option<Amount>

Set the base price to read a blob.

§blob_published: Option<Amount>

Set the base price to publish a blob.

§blob_byte_read: Option<Amount>

Set the price to read a blob, per byte.

§blob_byte_published: Option<Amount>

The price to publish a blob, per byte.

§byte_stored: Option<Amount>

Set the price per byte stored.

§operation: Option<Amount>

Set the base price of sending an operation from a block..

§operation_byte: Option<Amount>

Set the additional price for each byte in the argument of a user operation.

§message: Option<Amount>

Set the base price of sending a message from a block..

§message_byte: Option<Amount>

Set the additional price for each byte in the argument of a user message.

§service_as_oracle_query: Option<Amount>

Set the price per query to a service as an oracle.

§http_request: Option<Amount>

Set the price for performing an HTTP request.

§maximum_wasm_fuel_per_block: Option<u64>

Set the maximum amount of Wasm fuel per block.

§maximum_evm_fuel_per_block: Option<u64>

Set the maximum amount of EVM fuel per block.

§maximum_service_oracle_execution_ms: Option<u64>

Set the maximum time in milliseconds that a block can spend executing services as oracles.

§maximum_block_size: Option<u64>

Set the maximum size of a block, in bytes.

§maximum_blob_size: Option<u64>

Set the maximum size of data blobs, compressed bytecode and other binary blobs, in bytes.

§maximum_published_blobs: Option<u64>

Set the maximum number of published blobs per block.

§maximum_bytecode_size: Option<u64>

Set the maximum size of decompressed contract or service bytecode, in bytes.

§maximum_block_proposal_size: Option<u64>

Set the maximum size of a block proposal, in bytes.

§maximum_bytes_read_per_block: Option<u64>

Set the maximum read data per block.

§maximum_bytes_written_per_block: Option<u64>

Set the maximum write data per block.

§maximum_oracle_response_bytes: Option<u64>

Set the maximum size of oracle responses.

§maximum_http_response_bytes: Option<u64>

Set the maximum size in bytes of a received HTTP response.

§http_request_timeout_ms: Option<u64>

Set the maximum amount of time allowed to wait for an HTTP response.

§http_request_allow_list: Option<Vec<String>>

Set the list of hosts that contracts and services can send HTTP requests to.

§

Benchmark(BenchmarkCommand)

Start a benchmark, maintaining a given TPS or just sending one transfer per chain in bulk mode.

§

MultiBenchmark

Runs multiple linera benchmark processes in parallel.

Fields

§processes: usize

The number of linera benchmark processes to run in parallel.

§faucet: String

The faucet (which implicitly defines the network)

§ssd_dir: Option<String>

If running on local SSD, specify the directory to store the storage and wallet. If not specified, a temporary directory will be used for each client.

§command: BenchmarkCommand

The benchmark command to run.

§delay_between_processes: u64

The delay between starting the benchmark processes, in seconds.

§

CreateGenesisConfig

Create genesis configuration for a Linera deployment. Create initial user chains and print information to be used for initialization of validator setup. This will also create an initial wallet for the owner of the initial “root” chains.

Fields

§committee_config_path: PathBuf

Sets the file describing the public configurations of all validators

§genesis_config_path: PathBuf

The output config path to be consumed by the server

§initial_funding: Amount

Known initial balance of the chain

§start_timestamp: Option<DateTime<Utc>>

The start timestamp: no blocks can be created before this time.

§num_other_initial_chains: u32

Number of initial (aka “root”) chains to create in addition to the admin chain.

§policy_config: ResourceControlPolicyConfig

Configure the resource control policy (notably fees) according to pre-defined settings.

§wasm_fuel_unit_price: Option<Amount>

Set the price per unit of Wasm fuel. (This will overwrite value from --policy-config)

§evm_fuel_unit_price: Option<Amount>

Set the price per unit of EVM fuel. (This will overwrite value from --policy-config)

§read_operation_price: Option<Amount>

Set the price per read operation. (This will overwrite value from --policy-config)

§write_operation_price: Option<Amount>

Set the price per write operation. (This will overwrite value from --policy-config)

§byte_read_price: Option<Amount>

Set the price per byte read. (This will overwrite value from --policy-config)

§byte_written_price: Option<Amount>

Set the price per byte written. (This will overwrite value from --policy-config)

§blob_read_price: Option<Amount>

Set the base price to read a blob. (This will overwrite value from --policy-config)

§blob_published_price: Option<Amount>

Set the base price to publish a blob. (This will overwrite value from --policy-config)

§blob_byte_read_price: Option<Amount>

Set the price to read a blob, per byte. (This will overwrite value from --policy-config)

§blob_byte_published_price: Option<Amount>

Set the price to publish a blob, per byte. (This will overwrite value from --policy-config)

§byte_stored_price: Option<Amount>

Set the price per byte stored. (This will overwrite value from --policy-config)

§operation_price: Option<Amount>

Set the base price of sending an operation from a block.. (This will overwrite value from --policy-config)

§operation_byte_price: Option<Amount>

Set the additional price for each byte in the argument of a user operation. (This will overwrite value from --policy-config)

§message_price: Option<Amount>

Set the base price of sending a message from a block.. (This will overwrite value from --policy-config)

§message_byte_price: Option<Amount>

Set the additional price for each byte in the argument of a user message. (This will overwrite value from --policy-config)

§service_as_oracle_query_price: Option<Amount>

Set the price per query to a service as an oracle.

§http_request_price: Option<Amount>

Set the price for performing an HTTP request.

§maximum_wasm_fuel_per_block: Option<u64>

Set the maximum amount of Wasm fuel per block. (This will overwrite value from --policy-config)

§maximum_evm_fuel_per_block: Option<u64>

Set the maximum amount of EVM fuel per block. (This will overwrite value from --policy-config)

§maximum_service_oracle_execution_ms: Option<u64>

Set the maximum time in milliseconds that a block can spend executing services as oracles.

§maximum_block_size: Option<u64>

Set the maximum size of a block. (This will overwrite value from --policy-config)

§maximum_bytecode_size: Option<u64>

Set the maximum size of decompressed contract or service bytecode, in bytes. (This will overwrite value from --policy-config)

§maximum_blob_size: Option<u64>

Set the maximum size of data blobs, compressed bytecode and other binary blobs, in bytes. (This will overwrite value from --policy-config)

§maximum_published_blobs: Option<u64>

Set the maximum number of published blobs per block. (This will overwrite value from --policy-config)

§maximum_block_proposal_size: Option<u64>

Set the maximum size of a block proposal, in bytes. (This will overwrite value from --policy-config)

§maximum_bytes_read_per_block: Option<u64>

Set the maximum read data per block. (This will overwrite value from --policy-config)

§maximum_bytes_written_per_block: Option<u64>

Set the maximum write data per block. (This will overwrite value from --policy-config)

§maximum_oracle_response_bytes: Option<u64>

Set the maximum size of oracle responses. (This will overwrite value from --policy-config)

§maximum_http_response_bytes: Option<u64>

Set the maximum size in bytes of a received HTTP response.

§http_request_timeout_ms: Option<u64>

Set the maximum amount of time allowed to wait for an HTTP response.

§http_request_allow_list: Option<Vec<String>>

Set the list of hosts that contracts and services can send HTTP requests to.

§testing_prng_seed: Option<u64>

Force this wallet to generate keys using a PRNG and a given seed. USE FOR TESTING ONLY.

§network_name: Option<String>

A unique name to identify this network.

§

Watch

Watch the network for notifications.

Fields

§chain_id: Option<ChainId>

The chain ID to watch.

§raw: bool

Show all notifications from all validators.

§

Service

Run a GraphQL service to explore and extend the chains of the wallet.

Fields

§port: NonZeroU16

The port on which to run the server

§

Faucet

Run a GraphQL service that exposes a faucet where users can claim tokens. This gives away the chain’s tokens, and is mainly intended for testing.

Fields

§chain_id: Option<ChainId>

The chain that gives away its tokens.

§port: NonZeroU16

The port on which to run the server

§amount: Amount

The number of tokens to send to each new chain.

§limit_rate_until: Option<DateTime<Utc>>

The end timestamp: The faucet will rate-limit the token supply so it runs out of money no earlier than this.

§config: ChainListenerConfig

Configuration for the faucet chain listener.

§

PublishModule

Publish module.

Fields

§contract: PathBuf

Path to the Wasm file for the application “contract” bytecode.

§service: PathBuf

Path to the Wasm file for the application “service” bytecode.

§vm_runtime: VmRuntime

The virtual machine runtime to use.

§publisher: Option<ChainId>

An optional chain ID to publish the module. The default chain of the wallet is used otherwise.

§

ListEventsFromIndex

Print events from a specific chain and stream from a specified index.

Fields

§chain_id: Option<ChainId>

The chain to query. If omitted, query the default chain of the wallet.

§stream_id: StreamId

The stream being considered.

§start_index: u32

Index of the message to start with

§

PublishDataBlob

Publish a data blob of binary data.

Fields

§blob_path: PathBuf

Path to data blob file to be published.

§publisher: Option<ChainId>

An optional chain ID to publish the blob. The default chain of the wallet is used otherwise.

§

ReadDataBlob

Verify that a data blob is readable.

Fields

§hash: CryptoHash

The hash of the content.

§reader: Option<ChainId>

An optional chain ID to verify the blob. The default chain of the wallet is used otherwise.

§

CreateApplication

Create an application.

Fields

§module_id: ModuleId

The module ID of the application to create.

§creator: Option<ChainId>

An optional chain ID to host the application. The default chain of the wallet is used otherwise.

§json_parameters: Option<String>

The shared parameters as JSON string.

§json_parameters_path: Option<PathBuf>

Path to a JSON file containing the shared parameters.

§json_argument: Option<String>

The instantiation argument as a JSON string.

§json_argument_path: Option<PathBuf>

Path to a JSON file containing the instantiation argument.

§required_application_ids: Option<Vec<ApplicationId>>

The list of required dependencies of application, if any.

§

PublishAndCreate

Create an application, and publish the required module.

Fields

§contract: PathBuf

Path to the Wasm file for the application “contract” bytecode.

§service: PathBuf

Path to the Wasm file for the application “service” bytecode.

§vm_runtime: VmRuntime

The virtual machine runtime to use.

§publisher: Option<ChainId>

An optional chain ID to publish the module. The default chain of the wallet is used otherwise.

§json_parameters: Option<String>

The shared parameters as JSON string.

§json_parameters_path: Option<PathBuf>

Path to a JSON file containing the shared parameters.

§json_argument: Option<String>

The instantiation argument as a JSON string.

§json_argument_path: Option<PathBuf>

Path to a JSON file containing the instantiation argument.

§required_application_ids: Option<Vec<ApplicationId>>

The list of required dependencies of application, if any.

§

Keygen

Create an unassigned key pair.

§

Assign

Link the owner to the chain. Expects that the caller has a private key corresponding to the public_key, otherwise block proposals will fail when signing with it.

Fields

§owner: AccountOwner

The owner to assign.

§chain_id: ChainId

The ID of the chain.

§

RetryPendingBlock

Retry a block we unsuccessfully tried to propose earlier.

As long as a block is pending most other commands will fail, since it is unsafe to propose multiple blocks at the same height.

Fields

§chain_id: Option<ChainId>

The chain with the pending block. If not specified, the wallet’s default chain is used.

§

Wallet(WalletCommand)

Show the contents of the wallet.

§

Project(ProjectCommand)

Manage Linera projects.

§

Net(NetCommand)

Manage a local Linera Network.

§

Storage(DatabaseToolCommand)

Operation on the storage.

§

HelpMarkdown

Print CLI help in Markdown format, and exit.

§

ExtractScriptFromMarkdown

Extract a Bash and GraphQL script embedded in a markdown file and print it on stdout.

Fields

§path: PathBuf

The source file

§pause_after_linera_service: Duration

Insert a pause of N seconds after calls to linera service.

§pause_after_gql_mutations: Duration

Insert a pause of N seconds after GraphQL queries.

Implementations§

Source§

impl ClientCommand

Source

pub fn log_file_name(&self) -> Cow<'static, str>

Returns the log file name to use based on the ClientCommand that will run.

Trait Implementations§

Source§

impl Clone for ClientCommand

Source§

fn clone(&self) -> ClientCommand

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl FromArgMatches for ClientCommand

Source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from ArgMatches, parsing the arguments as needed. Read more
Source§

fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>

Instantiate Self from ArgMatches, parsing the arguments as needed. Read more
Source§

fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>

Assign values from ArgMatches to self.
Source§

fn update_from_arg_matches_mut<'b>( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>

Assign values from ArgMatches to self.
Source§

impl Subcommand for ClientCommand

Source§

fn augment_subcommands<'b>(__clap_app: Command) -> Command

Append to Command so it can instantiate Self via FromArgMatches::from_arg_matches_mut Read more
Source§

fn augment_subcommands_for_update<'b>(__clap_app: Command) -> Command

Append to Command so it can instantiate self via FromArgMatches::update_from_arg_matches_mut Read more
Source§

fn has_subcommand(__clap_name: &str) -> bool

Test whether Self can parse a specific subcommand

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> ArchivePointee for T

Source§

type ArchivedMetadata = ()

The archived version of the pointer metadata for this type.
Source§

fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

Converts some archived metadata to the pointer metadata for itself.
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> Conv for T

Source§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
Source§

impl<Choices> CoproductSubsetter<CNil, HNil> for Choices

Source§

type Remainder = Choices

Source§

fn subset( self, ) -> Result<CNil, <Choices as CoproductSubsetter<CNil, HNil>>::Remainder>

Extract a subset of the possible types in a coproduct (or get the remaining possibilities) Read more
Source§

impl<F, W, T, D> Deserialize<With<T, W>, D> for F
where W: DeserializeWith<F, T, D>, D: Fallible + ?Sized, F: ?Sized,

Source§

fn deserialize( &self, deserializer: &mut D, ) -> Result<With<T, W>, <D as Fallible>::Error>

Deserializes using the given deserializer
Source§

impl<T> DynClone for T
where T: Clone,

Source§

fn __clone_box(&self, _: Private) -> *mut ()

Source§

impl<To, From> DynInto<To> for From
where From: Into<To>,

Source§

fn into_box(self: Box<From>) -> To

Converts a boxed object into the target type.
Source§

impl<T> FmtForward for T

Source§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
Source§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
Source§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where Self: LowerExp,

Causes self to use its LowerExp implementation when Debug-formatted.
Source§

fn fmt_lower_hex(self) -> FmtLowerHex<Self>
where Self: LowerHex,

Causes self to use its LowerHex implementation when Debug-formatted.
Source§

fn fmt_octal(self) -> FmtOctal<Self>
where Self: Octal,

Causes self to use its Octal implementation when Debug-formatted.
Source§

fn fmt_pointer(self) -> FmtPointer<Self>
where Self: Pointer,

Causes self to use its Pointer implementation when Debug-formatted.
Source§

fn fmt_upper_exp(self) -> FmtUpperExp<Self>
where Self: UpperExp,

Causes self to use its UpperExp implementation when Debug-formatted.
Source§

fn fmt_upper_hex(self) -> FmtUpperHex<Self>
where Self: UpperHex,

Causes self to use its UpperHex implementation when Debug-formatted.
Source§

fn fmt_list(self) -> FmtList<Self>
where &'a Self: for<'a> IntoIterator,

Formats each item in a sequence. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> FromRef<T> for T
where T: Clone,

Source§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
Source§

impl<T> FromRef<T> for T
where T: Clone,

Source§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> IntoRequest<T> for T

Source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
Source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

Source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
Source§

impl<T> LayoutRaw for T

Source§

fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>

Gets the layout of the type.
Source§

impl<T, U, I> LiftInto<U, I> for T
where U: LiftFrom<T, I>,

Source§

fn lift_into(self) -> U

Performs the indexed conversion.
Source§

impl<T> MockResults for T

Source§

type Results = T

The mock native type of the results for the MockInstance.
Source§

impl<T> Pipe for T
where T: ?Sized,

Source§

fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
where Self: Sized,

Pipes by value. This is generally the method you want to use. Read more
Source§

fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
where R: 'a,

Borrows self and passes that borrow into the pipe function. Read more
Source§

fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
where R: 'a,

Mutably borrows self and passes that borrow into the pipe function. Read more
Source§

fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
where Self: Borrow<B>, B: 'a + ?Sized, R: 'a,

Borrows self, then passes self.borrow() into the pipe function. Read more
Source§

fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
where Self: BorrowMut<B>, B: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.borrow_mut() into the pipe function. Read more
Source§

fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
where Self: AsRef<U>, U: 'a + ?Sized, R: 'a,

Borrows self, then passes self.as_ref() into the pipe function.
Source§

fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
where Self: AsMut<U>, U: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.as_mut() into the pipe function.
Source§

fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
where Self: Deref<Target = T>, T: 'a + ?Sized, R: 'a,

Borrows self, then passes self.deref() into the pipe function.
Source§

fn pipe_deref_mut<'a, T, R>( &'a mut self, func: impl FnOnce(&'a mut T) -> R, ) -> R
where Self: DerefMut<Target = T> + Deref, T: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.deref_mut() into the pipe function.
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Pointee for T

Source§

type Metadata = ()

The type for metadata in pointers and references to Self.
Source§

impl<M, I> RuntimeMemory<&mut I> for M
where M: RuntimeMemory<I>,

Source§

fn read<'instance>( &self, instance: &'instance &mut I, location: GuestPointer, length: u32, ) -> Result<Cow<'instance, [u8]>, RuntimeError>

Reads length bytes from memory from the provided location.

Source§

fn write( &mut self, instance: &mut &mut I, location: GuestPointer, bytes: &[u8], ) -> Result<(), RuntimeError>

Writes the bytes to memory at the provided location.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<Source> Sculptor<HNil, HNil> for Source

Source§

type Remainder = Source

Source§

fn sculpt(self) -> (HNil, <Source as Sculptor<HNil, HNil>>::Remainder)

Consumes the current HList and returns an HList with the requested shape. Read more
Source§

impl<AnyTail> Split<HNil> for AnyTail

Source§

type Remainder = AnyTail

The tail of remaining elements after splitting up the list.
Source§

fn split(self) -> (HNil, <AnyTail as Split<HNil>>::Remainder)

Splits the current heterogeneous list in two.
Source§

impl<T> Tap for T

Source§

fn tap(self, func: impl FnOnce(&Self)) -> Self

Immutable access to a value. Read more
Source§

fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

Mutable access to a value. Read more
Source§

fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
where Self: Borrow<B>, B: ?Sized,

Immutable access to the Borrow<B> of a value. Read more
Source§

fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
where Self: BorrowMut<B>, B: ?Sized,

Mutable access to the BorrowMut<B> of a value. Read more
Source§

fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
where Self: AsRef<R>, R: ?Sized,

Immutable access to the AsRef<R> view of a value. Read more
Source§

fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
where Self: AsMut<R>, R: ?Sized,

Mutable access to the AsMut<R> view of a value. Read more
Source§

fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
where Self: Deref<Target = T>, T: ?Sized,

Immutable access to the Deref::Target of a value. Read more
Source§

fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
where Self: DerefMut<Target = T> + Deref, T: ?Sized,

Mutable access to the Deref::Target of a value. Read more
Source§

fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

Calls .tap() only in debug builds, and is erased in release builds.
Source§

fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

Calls .tap_mut() only in debug builds, and is erased in release builds.
Source§

fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
where Self: Borrow<B>, B: ?Sized,

Calls .tap_borrow() only in debug builds, and is erased in release builds.
Source§

fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
where Self: BorrowMut<B>, B: ?Sized,

Calls .tap_borrow_mut() only in debug builds, and is erased in release builds.
Source§

fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
where Self: AsRef<R>, R: ?Sized,

Calls .tap_ref() only in debug builds, and is erased in release builds.
Source§

fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
where Self: AsMut<R>, R: ?Sized,

Calls .tap_ref_mut() only in debug builds, and is erased in release builds.
Source§

fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
where Self: Deref<Target = T>, T: ?Sized,

Calls .tap_deref() only in debug builds, and is erased in release builds.
Source§

fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
where Self: DerefMut<Target = T> + Deref, T: ?Sized,

Calls .tap_deref_mut() only in debug builds, and is erased in release builds.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T> TryConv for T

Source§

fn try_conv<T>(self) -> Result<T, Self::Error>
where Self: TryInto<T>,

Attempts to convert self into T using TryInto<T>. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> Upcastable for T
where T: Any + Send + Sync + 'static,

Source§

fn upcast_any_ref(&self) -> &(dyn Any + 'static)

upcast ref
Source§

fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)

upcast mut ref
Source§

fn upcast_any_box(self: Box<T>) -> Box<dyn Any>

upcast boxed dyn
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<_INNER> AutoTraits for _INNER
where _INNER: Send + Sync + 'static,

Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> Post for T
where T: Send + Sync,