rustenium-cdp-definitions 0.1.1

Generated Chrome DevTools Protocol type definitions for Rustenium
Documentation
use super::commands::*;
#[derive(Debug, Clone, Default)]
pub struct GetInfoBuilder;
impl GetInfoBuilder {
    pub fn new() -> Self {
        Self
    }
    pub fn build(self) -> GetInfo {
        GetInfo {
            method: GetInfoMethod::GetInfo,
            params: GetInfoParams {},
        }
    }
}
impl GetInfo {
    pub fn builder() -> GetInfoBuilder {
        GetInfoBuilder
    }
}
impl GetFeatureState {
    pub fn builder() -> GetFeatureStateBuilder {
        <GetFeatureStateBuilder as Default>::default()
    }
}
#[derive(Default, Clone)]
pub struct GetFeatureStateBuilder {
    feature_state: Option<String>,
}
impl GetFeatureStateBuilder {
    pub fn feature_state(mut self, feature_state: impl Into<String>) -> Self {
        self.feature_state = Some(feature_state.into());
        self
    }
    pub fn build(self) -> Result<GetFeatureState, String> {
        Ok(GetFeatureState {
            method: GetFeatureStateMethod::GetFeatureState,
            params: GetFeatureStateParams {
                feature_state: self.feature_state.ok_or_else(|| {
                    format!("Field `{}` is mandatory.", std::stringify!(feature_state))
                })?,
            },
        })
    }
}
#[derive(Debug, Clone, Default)]
pub struct GetProcessInfoBuilder;
impl GetProcessInfoBuilder {
    pub fn new() -> Self {
        Self
    }
    pub fn build(self) -> GetProcessInfo {
        GetProcessInfo {
            method: GetProcessInfoMethod::GetProcessInfo,
            params: GetProcessInfoParams {},
        }
    }
}
impl GetProcessInfo {
    pub fn builder() -> GetProcessInfoBuilder {
        GetProcessInfoBuilder
    }
}