Interface InvertIfBaseProvider

The interface that is provided by the 1nVitr0.invert-if extension.

import { InvertIfBaseProvider } from "vscode-invert-if";

export function activate(context: ExtensionContext) {
const invertIfExtension = extensions.getExtension<InvertIfBaseProvider>("1nVitr0.invert-if");

if (invertIfExtension) {
invertIf = invertIfExtension.exports;
provider = new JavaScriptInvertIfProvider();

invertIf.registerConditionProvider(provider, documentFilter);
invertIf.registerIfElseProvider(provider, documentFilter);
invertIf.registerGuardClauseProvider(provider, documentFilter);
}
}
interface InvertIfBaseProvider {
    onRegisterProvider: Event<
        Plugin<
            any,
            | EmbeddedLanguageProvider
            | InvertConditionProvider<any>
            | InvertIfElseProvider<any>
            | GuardClauseProvider<any>,
        >,
    >;
    onUnregisterProvider: Event<
        Plugin<
            any,
            | EmbeddedLanguageProvider
            | InvertConditionProvider<any>
            | InvertIfElseProvider<any>
            | GuardClauseProvider<any>,
        >,
    >;
    registerConditionProvider<T>(
        provider: InvertConditionProvider<T>,
        documentSelector: DocumentSelector,
    ): Disposable;
    registerEmbeddedLanguageProvider(
        provider: EmbeddedLanguageProvider,
        documentSelector: DocumentSelector,
    ): Disposable;
    registerGuardClauseProvider<T>(
        provider: GuardClauseProvider<T>,
        documentSelector: DocumentSelector,
    ): Disposable;
    registerIfElseProvider<T>(
        provider: InvertIfElseProvider<T>,
        documentSelector: DocumentSelector,
    ): Disposable;
    unregisterConditionProvider<T>(provider: InvertConditionProvider<T>): void;
    unregisterEmbeddedLanguageProvider(
        provider: EmbeddedLanguageProvider,
    ): void;
    unregisterGuardClauseProvider<T>(provider: GuardClauseProvider<T>): void;
    unregisterIfElseProvider<T>(provider: InvertIfElseProvider<T>): void;
}

Properties

onRegisterProvider: Event<
    Plugin<
        any,
        | EmbeddedLanguageProvider
        | InvertConditionProvider<any>
        | InvertIfElseProvider<any>
        | GuardClauseProvider<any>,
    >,
>

Register an Event listener that is called when a plugin is registered.

onUnregisterProvider: Event<
    Plugin<
        any,
        | EmbeddedLanguageProvider
        | InvertConditionProvider<any>
        | InvertIfElseProvider<any>
        | GuardClauseProvider<any>,
    >,
>

Register an Event listener that is called when a plugin is unregistered.

Methods

  • Register a new provider, which can handles the inversion of conditions. It is recommended to register your provider for each type, to prevent conflicts with other extensions.

    Your extension should call unregisterConditionProvider in deactivate.

    Type Parameters

    • T

    Parameters

    • provider: InvertConditionProvider<T>

      The provider that will be used to invert conditions.

    • documentSelector: DocumentSelector

      The document selector that selects for languages supported by your extension.

    Returns Disposable

  • Register a new provider, which can handles the resolving of embedded language sections. Your provider will be called based on the document selector and the sections will then be passed on to the providers corresponding to the embedded language.

    Your extension should call unregisterEmbeddedLanguageProvider in deactivate.

    Parameters

    • provider: EmbeddedLanguageProvider

      The provider that will be used to resolve embedded language sections.

    • documentSelector: DocumentSelector

      The document selector that selects for languages supported by your extension.

    Returns Disposable

  • Register a new provider, which can handles the creation of guard clauses. It is recommended to register your provider for each type, to prevent conflicts with other extensions.

    Your extension should call unregisterGuardClauseProvider in deactivate.

    Type Parameters

    • T

    Parameters

    • provider: GuardClauseProvider<T>

      The provider that will be used to create guard clauses.

    • documentSelector: DocumentSelector

      The document selector that selects for languages supported by your extension.

    Returns Disposable

  • Register a new provider, which can handles the inversion of if-else statements. It is recommended to register your provider for each type, to prevent conflicts with other extensions.

    Your extension should call unregisterIfElseProvider in deactivate.

    Type Parameters

    • T

    Parameters

    • provider: InvertIfElseProvider<T>

      The provider that will be used to invert if-else statements.

    • documentSelector: DocumentSelector

      The document selector that selects for languages supported by your extension.

    Returns Disposable