#[allow(unused_imports, reason = "Some modules may have empty `options` field")]
use cdk_ansible::OptU;
use cdk_ansible::TaskModule;
use serde::Serialize;
#[derive(Clone, Debug, Serialize)]
pub struct Module {
#[serde(rename = "community.general.gem")]
pub module: Args,
}
impl TaskModule for Module {}
#[derive(Clone, Debug, Serialize)]
pub struct Args {
#[serde(flatten)]
pub options: Opt,
}
#[derive(Clone, Debug, Default, Serialize)]
#[serde(rename_all = "snake_case")]
pub struct Opt {
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "bindir"
)]
pub bindir: OptU<std::path::PathBuf>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "build_flags"
)]
pub build_flags: OptU<String>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "env_shebang"
)]
pub env_shebang: OptU<bool>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "executable"
)]
pub executable: OptU<std::path::PathBuf>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "force"
)]
pub force: OptU<bool>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "gem_source"
)]
pub gem_source: OptU<std::path::PathBuf>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "include_dependencies"
)]
pub include_dependencies: OptU<bool>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "include_doc"
)]
pub include_doc: OptU<bool>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "install_dir"
)]
pub install_dir: OptU<std::path::PathBuf>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "name"
)]
pub name: OptU<String>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "norc"
)]
pub norc: OptU<bool>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "pre_release"
)]
pub pre_release: OptU<bool>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "repository"
)]
pub repository: OptU<String>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "state"
)]
pub state: OptU<String>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "user_install"
)]
pub user_install: OptU<bool>,
#[serde(
default = "OptU::default",
skip_serializing_if = "OptU::is_unset",
rename = "version"
)]
pub version: OptU<String>,
}