Use `External` to wrap `initialize_source_control` arguments
Dependencies
- [2]
NB2MF3MYAdd `OpenWorkspaceFolder` event - [3]
MGJ23FHFAssign repository URI to source control in `OpenWorkspaceFolder` events - [4]
OUADGWKRCreate fully-initialized `SourceControl` object in `event_loop` - [5]
QY4Z5ZXZRefactor `event_loop/threadsafe_function` file into `event_loop::js_function` module
Change contents
- replacement in editors/vscode/src/event_loop/js_function/mod.rs at line 1
use napi::bindgen_prelude::{FnArgs, Object};use napi::bindgen_prelude::{External, FnArgs, Object}; - replacement in editors/vscode/src/event_loop/js_function/mod.rs at line 5
mod initialize_source_control;pub mod initialize_source_control; - replacement in editors/vscode/src/event_loop/js_function/mod.rs at line 22
uri: crate::vscode_sys::reference::UriRef,repository_uri_ref: crate::vscode_sys::reference::UriRef, - replacement in editors/vscode/src/event_loop/js_function/mod.rs at line 26
) -> Result<(vscode_sys::reference::SourceControlRef,vscode_sys::reference::SourceControlResourceGroupRef,vscode_sys::reference::SourceControlResourceGroupRef,),napi::Error,> {let arguments = FnArgs::from((uri, pijul_label, changes_label, untracked_label));) -> Result<initialize_source_control::Return, napi::Error> {let arguments = initialize_source_control::Arguments {repository_uri_ref,pijul_label,changes_label,untracked_label,}; - replacement in editors/vscode/src/event_loop/js_function/mod.rs at line 34
self.initialize_source_control.call_async(arguments).awaitself.initialize_source_control.call_async(External::new(arguments)).await - replacement in editors/vscode/src/event_loop/js_function/initialize_source_control.rs at line 1
use napi::bindgen_prelude::{FnArgs, FunctionCallContext};use napi::bindgen_prelude::{External, FunctionCallContext};use napi::threadsafe_function::ThreadsafeFunction; - replacement in editors/vscode/src/event_loop/js_function/initialize_source_control.rs at line 6
pub type Arguments = (vscode_sys::reference::UriRef, String, String, String);pub struct Arguments {pub repository_uri_ref: vscode_sys::reference::UriRef,pub pijul_label: String,pub changes_label: String,pub untracked_label: String,} - replacement in editors/vscode/src/event_loop/js_function/initialize_source_control.rs at line 19
pub type Prototype = napi::threadsafe_function::ThreadsafeFunction<FnArgs<Arguments>,pub type Prototype = ThreadsafeFunction<External<Arguments>, - replacement in editors/vscode/src/event_loop/js_function/initialize_source_control.rs at line 22
FnArgs<Arguments>,External<Arguments>, - replacement in editors/vscode/src/event_loop/js_function/initialize_source_control.rs at line 36
let (repository_uri_ref, pijul_label, changes_label, untracked_label): Arguments =function_call_context.args()?;let (external,): (&External<Arguments>,) = function_call_context.args()?;let Arguments {repository_uri_ref,pijul_label,changes_label,untracked_label,} = &**external; - replacement in editors/vscode/src/event_loop/js_function/initialize_source_control.rs at line 47
&pijul_label,pijul_label, - replacement in editors/vscode/src/event_loop/js_function/initialize_source_control.rs at line 51
let unrecorded_changes = source_control.create_resource_group("changes", &changes_label)?;let untracked_paths = source_control.create_resource_group("untracked", &untracked_label)?;let unrecorded_changes = source_control.create_resource_group("changes", changes_label)?;let untracked_paths = source_control.create_resource_group("untracked", untracked_label)?;