pub unsafe fn configure(&mut self, opts: &mut raw::git_checkout_options) {
        opts.version = raw::GIT_CHECKOUT_OPTIONS_VERSION;
        opts.disable_filters = self.disable_filters as c_int;
        opts.dir_mode = self.dir_perm.unwrap_or(0) as c_uint;
        opts.file_mode = self.file_perm.unwrap_or(0) as c_uint;

        if !self.path_ptrs.is_empty() {
            opts.paths.strings = self.path_ptrs.as_ptr() as *mut _;
            opts.paths.count = self.path_ptrs.len() as size_t;
        }

        if let Some(ref c) = self.target_dir {
            opts.target_directory = c.as_ptr();
        }
        if let Some(ref c) = self.ancestor_label {
            opts.ancestor_label = c.as_ptr();
        }
        if let Some(ref c) = self.our_label {
            opts.our_label = c.as_ptr();
        }
        if let Some(ref c) = self.their_label {
            opts.their_label = c.as_ptr();
        }
        if self.progress.is_some() {
            opts.progress_cb = Some(progress_cb);
            opts.progress_payload = self as *mut _ as *mut _;
        }
        if self.notify.is_some() {
            opts.notify_cb = Some(notify_cb);
            opts.notify_payload = self as *mut _ as *mut _;
            opts.notify_flags = self.notify_flags.bits() as c_uint;
        }
        opts.checkout_strategy = self.checkout_opts as c_uint;
    }
/// Configure a raw checkout options based on this configuration.
///
/// This method is unsafe as there is no guarantee that this structure will
/// outlive the provided checkout options.
Configure a raw checkout options based on this configuration.
This method is unsafe as there is no guarantee that this structure will
outlive the provided checkout options.
Configure a raw checkout options based on this configuration . This method is unsafe as there is no guarantee that this structure will outlive the provided checkout options .
pub unsafe fn configure(&mut self, opts: &mut raw::git_checkout_options) {
        opts.version = raw::GIT_CHECKOUT_OPTIONS_VERSION;
        opts.disable_filters = self.disable_filters as c_int;
        opts.dir_mode = self.dir_perm.unwrap_or(0) as c_uint;
        opts.file_mode = self.file_perm.unwrap_or(0) as c_uint;
        if !self.path_ptrs.is_empty() {
            opts.paths.strings = self.path_ptrs.as_ptr() as *mut _;
            opts.paths.count = self.path_ptrs.len() as size_t;
        }
        if let Some(ref c) = self.target_dir {
            opts.target_directory = c.as_ptr();
        }
        if let Some(ref c) = self.ancestor_label {
            opts.ancestor_label = c.as_ptr();
        }
        if let Some(ref c) = self.our_label {
            opts.our_label = c.as_ptr();
        }
        if let Some(ref c) = self.their_label {
            opts.their_label = c.as_ptr();
        }
        if self.progress.is_some() {
            opts.progress_cb = Some(progress_cb);
            opts.progress_payload = self as *mut _ as *mut _;
        }
        if self.notify.is_some() {
            opts.notify_cb = Some(notify_cb);
            opts.notify_payload = self as *mut _ as *mut _;
            opts.notify_flags = self.notify_flags.bits() as c_uint;
        }
        opts.checkout_strategy = self.checkout_opts as c_uint;
    }
pub unsafe fn configure ( & mut self , opts : & mut raw :: git_checkout_options ) { opts . version = raw :: GIT_CHECKOUT_OPTIONS_VERSION ; opts . disable_filters = self . disable_filters as c_int ; opts . dir_mode = self . dir_perm . unwrap_or ( 0 ) as c_uint ; opts . file_mode = self . file_perm . unwrap_or ( 0 ) as c_uint ; if ! self . path_ptrs . is_empty ( ) { opts . paths . strings = self . path_ptrs . as_ptr ( ) as * mut _ ; opts . paths . count = self . path_ptrs . len ( ) as size_t ; } if let Some ( ref c ) = self . target_dir { opts . target_directory = c . as_ptr ( ) ; } if let Some ( ref c ) = self . ancestor_label { opts . ancestor_label = c . as_ptr ( ) ; } if let Some ( ref c ) = self . our_label { opts . our_label = c . as_ptr ( ) ; } if let Some ( ref c ) = self . their_label { opts . their_label = c . as_ptr ( ) ; } if self . progress . is_some ( ) { opts . progress_cb = Some ( progress_cb ) ; opts . progress_payload = self as * mut _ as * mut _ ; } if self . notify . is_some ( ) { opts . notify_cb = Some ( notify_cb ) ; opts . notify_payload = self as * mut _ as * mut _ ; opts . notify_flags = self . notify_flags . bits ( ) as c_uint ; } opts . checkout_strategy = self . checkout_opts as c_uint ; }
Configure a raw checkout options based on this configuration.
Configure a raw checkout options based on this configuration .
&mut self
opts
&mut raw::git_checkout_options
&mut self
opts
&mut raw::git_checkout_options