// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. ///

Returns information about a submodule reference in a repository folder.

#[non_exhaustive] #[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)] pub struct SubModule { ///

The commit ID that contains the reference to the submodule.

pub commit_id: ::std::option::Option<::std::string::String>, ///

The fully qualified path to the folder that contains the reference to the submodule.

pub absolute_path: ::std::option::Option<::std::string::String>, ///

The relative path of the submodule from the folder where the query originated.

pub relative_path: ::std::option::Option<::std::string::String>, } impl SubModule { ///

The commit ID that contains the reference to the submodule.

pub fn commit_id(&self) -> ::std::option::Option<&str> { self.commit_id.as_deref() } ///

The fully qualified path to the folder that contains the reference to the submodule.

pub fn absolute_path(&self) -> ::std::option::Option<&str> { self.absolute_path.as_deref() } ///

The relative path of the submodule from the folder where the query originated.

pub fn relative_path(&self) -> ::std::option::Option<&str> { self.relative_path.as_deref() } } impl SubModule { /// Creates a new builder-style object to manufacture [`SubModule`](crate::types::SubModule). pub fn builder() -> crate::types::builders::SubModuleBuilder { crate::types::builders::SubModuleBuilder::default() } } /// A builder for [`SubModule`](crate::types::SubModule). #[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)] #[non_exhaustive] pub struct SubModuleBuilder { pub(crate) commit_id: ::std::option::Option<::std::string::String>, pub(crate) absolute_path: ::std::option::Option<::std::string::String>, pub(crate) relative_path: ::std::option::Option<::std::string::String>, } impl SubModuleBuilder { ///

The commit ID that contains the reference to the submodule.

pub fn commit_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { self.commit_id = ::std::option::Option::Some(input.into()); self } ///

The commit ID that contains the reference to the submodule.

pub fn set_commit_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self { self.commit_id = input; self } ///

The commit ID that contains the reference to the submodule.

pub fn get_commit_id(&self) -> &::std::option::Option<::std::string::String> { &self.commit_id } ///

The fully qualified path to the folder that contains the reference to the submodule.

pub fn absolute_path(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { self.absolute_path = ::std::option::Option::Some(input.into()); self } ///

The fully qualified path to the folder that contains the reference to the submodule.

pub fn set_absolute_path(mut self, input: ::std::option::Option<::std::string::String>) -> Self { self.absolute_path = input; self } ///

The fully qualified path to the folder that contains the reference to the submodule.

pub fn get_absolute_path(&self) -> &::std::option::Option<::std::string::String> { &self.absolute_path } ///

The relative path of the submodule from the folder where the query originated.

pub fn relative_path(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { self.relative_path = ::std::option::Option::Some(input.into()); self } ///

The relative path of the submodule from the folder where the query originated.

pub fn set_relative_path(mut self, input: ::std::option::Option<::std::string::String>) -> Self { self.relative_path = input; self } ///

The relative path of the submodule from the folder where the query originated.

pub fn get_relative_path(&self) -> &::std::option::Option<::std::string::String> { &self.relative_path } /// Consumes the builder and constructs a [`SubModule`](crate::types::SubModule). pub fn build(self) -> crate::types::SubModule { crate::types::SubModule { commit_id: self.commit_id, absolute_path: self.absolute_path, relative_path: self.relative_path, } } }