A function that delays calling fn
until after wait
milliseconds have elapsed since the last time it was called.
Resolved when the preference provider is ready to provide preferences It should be resolved by subclasses.
Dispose this object.
Informs the listeners that one or more preferences of this provider are changed. The listeners are able to find what was changed from the emitted event.
Retrieve the stored value for the given preference and resource URI.
the preference identifier.
the uri of the resource for which the preference is stored. This is used to retrieve
a potentially different value for the same preference for different resources, for example files.encoding
.
the value stored for the given preference and resourceUri if it exists, otherwise undefined
.
Retrieve the configuration URI for the given resource URI.
the uri of the resource or undefined
.
the section to return the URI for, e.g. tasks
or launch
. Defaults to settings.
the corresponding resource URI or undefined
if there is no valid URI.
Retrieves the first valid configuration URI contained by the given resource.
the uri of the container resource or undefined
.
the first valid configuration URI contained by the given resource undefined
if there is no valid configuration URI at all.
Retrieve the domain for this provider.
the domain or undefined
if this provider is suitable for all domains.
Resolve the value for the given preference and resource URI.
the preference identifier.
the URI of the resource for which this provider should resolve the preference. This is used to retrieve
a potentially different value for the same preference for different resources, for example files.encoding
.
an object containing the value stored for the given preference and resourceUri if it exists,
otherwise undefined
.
Stores a new value for the given preference key in the provider.
a promise that only resolves if all changes were delivered.
If changes were made then implementation must either
await on this.emitPreferencesChangedEvent(...)
or
this.pendingChanges
if changes are fired indirectly.
Handles deep equality with the possibility of undefined
Debounce promise-returning & async functions.