You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: _invalid_input_exception.rs
    path of file: ./repos/aws-sdk-rust/sdk/inspector/src/types/error
    
    the code of the file until where you have to start completion: // Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.

/// <p>The request was rejected because an invalid or out-of-range value was supplied for an input parameter.</p>
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct InvalidInputException {
    /// <p>Details of the exception error.</p>
    pub message: ::std::string::String,
    /// <p>Code that indicates the type of error that is generated.</p>
    pub error_code: crate::types::InvalidInputErrorCode,
    /// <p>You can immediately retry your request.</p>
    pub can_retry: bool,
    pub(crate) meta: ::aws_smithy_types::error::ErrorMetadata,
}
impl InvalidInputException {
    /// <p>Code that indicates the type of error that is generated.</p>
    pub fn error_code(&self) -> &crate::types::InvalidInputErrorCode {
        &self.error_code
    }
    /
    
    pub fn build(self) -> ::std::result::Result<crate::types::error::InvalidInputException, ::aws_smithy_types::error::operation::BuildError> {
        ::std::result::Result::Ok(crate::types::error::InvalidInputException {
            message: self.message.ok_or_else(|| {
                ::aws_smithy_types::error::operation::BuildError::missing_field(
                    "message",
                    "message was not specified but it is required when building InvalidInputException",
                )
            })?,
            error_code: self.error_code.ok_or_else(|| {
                ::aws_smithy_types::error::operation::BuildError::missing_field(
                    "error_code",
                    "error_code was not specified but it is required when building InvalidInputException",
                )
            })?,
            can_retry: self.can_retry.ok_or_else(|| {
                ::aws_smithy_types::error::operation::BuildError::missing_field(
                    "can_retry",
                    "can_retry was not specified but it is required when building InvalidInputException",
                )
            })?,
            meta: self.meta.unwrap_or_default(),
        })
    }