OutputChannelManager

Trait OutputChannelManager 

Source
pub trait OutputChannelManager:
    Environment
    + Send
    + Sync {
    // Required methods
    fn RegisterChannel<'life0, 'async_trait>(
        &'life0 self,
        Name: String,
        LanguageIdentifier: Option<String>,
    ) -> Pin<Box<dyn Future<Output = Result<String, CommonError>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn Append<'life0, 'async_trait>(
        &'life0 self,
        ChannelIdentifier: String,
        Value: String,
    ) -> Pin<Box<dyn Future<Output = Result<(), CommonError>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn Replace<'life0, 'async_trait>(
        &'life0 self,
        ChannelIdentifier: String,
        Value: String,
    ) -> Pin<Box<dyn Future<Output = Result<(), CommonError>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn Clear<'life0, 'async_trait>(
        &'life0 self,
        ChannelIdentifier: String,
    ) -> Pin<Box<dyn Future<Output = Result<(), CommonError>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn Reveal<'life0, 'async_trait>(
        &'life0 self,
        ChannelIdentifier: String,
        PreserveFocus: bool,
    ) -> Pin<Box<dyn Future<Output = Result<(), CommonError>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn Close<'life0, 'async_trait>(
        &'life0 self,
        ChannelIdentifier: String,
    ) -> Pin<Box<dyn Future<Output = Result<(), CommonError>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn Dispose<'life0, 'async_trait>(
        &'life0 self,
        ChannelIdentifier: String,
    ) -> Pin<Box<dyn Future<Output = Result<(), CommonError>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
}
Expand description

An abstract service contract for an environment component that can manage output channels.

Output channels are a common feature in IDEs, used for displaying logs, build outputs, or other textual information from extensions or system processes.

Required Methods§

Source

fn RegisterChannel<'life0, 'async_trait>( &'life0 self, Name: String, LanguageIdentifier: Option<String>, ) -> Pin<Box<dyn Future<Output = Result<String, CommonError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Registers a new output channel with the host.

§Parameters
  • Name: The human-readable name of the channel to be displayed in the UI.
  • LanguageIdentifier: An optional language ID to enable syntax highlighting for the channel’s content.
§Returns

A Result containing a unique identifier (string) for the new channel.

Source

fn Append<'life0, 'async_trait>( &'life0 self, ChannelIdentifier: String, Value: String, ) -> Pin<Box<dyn Future<Output = Result<(), CommonError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Appends a string value to the specified output channel.

§Parameters
  • ChannelIdentifier: The unique ID of the target channel.
  • Value: The string content to append.
Source

fn Replace<'life0, 'async_trait>( &'life0 self, ChannelIdentifier: String, Value: String, ) -> Pin<Box<dyn Future<Output = Result<(), CommonError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Replaces the entire content of the specified output channel with a new value.

§Parameters
  • ChannelIdentifier: The unique ID of the target channel.
  • Value: The new string content for the channel.
Source

fn Clear<'life0, 'async_trait>( &'life0 self, ChannelIdentifier: String, ) -> Pin<Box<dyn Future<Output = Result<(), CommonError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Clears all content from the specified output channel.

Source

fn Reveal<'life0, 'async_trait>( &'life0 self, ChannelIdentifier: String, PreserveFocus: bool, ) -> Pin<Box<dyn Future<Output = Result<(), CommonError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Reveals (opens and focuses) the specified output channel in the UI.

§Parameters
  • ChannelIdentifier: The ID of the channel to reveal.
  • PreserveFocus: If true, the focus will remain in its current location instead of moving to the output channel.
Source

fn Close<'life0, 'async_trait>( &'life0 self, ChannelIdentifier: String, ) -> Pin<Box<dyn Future<Output = Result<(), CommonError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Closes the view of the specified output channel in the UI, but does not dispose of it. The channel can be revealed again later.

Source

fn Dispose<'life0, 'async_trait>( &'life0 self, ChannelIdentifier: String, ) -> Pin<Box<dyn Future<Output = Result<(), CommonError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Disposes of the specified output channel, removing it and its content permanently.

Implementors§