pub trait WorkspaceEditApplier:
Environment
+ Send
+ Sync {
// Required method
fn ApplyWorkspaceEdit<'life0, 'async_trait>(
&'life0 self,
EditDTO: WorkspaceEditDTO,
) -> Pin<Box<dyn Future<Output = Result<bool, CommonError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
}Expand description
An abstract service contract for an environment component that can apply a
WorkspaceEdit.
A WorkspaceEdit is a complex, potentially transactional operation that can
include text edits to multiple files, as well as file system operations like
creating, deleting, or renaming files. This trait isolates the complex
logic of applying such edits.
Required Methods§
Sourcefn ApplyWorkspaceEdit<'life0, 'async_trait>(
&'life0 self,
EditDTO: WorkspaceEditDTO,
) -> Pin<Box<dyn Future<Output = Result<bool, CommonError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn ApplyWorkspaceEdit<'life0, 'async_trait>(
&'life0 self,
EditDTO: WorkspaceEditDTO,
) -> Pin<Box<dyn Future<Output = Result<bool, CommonError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".