This document lists changes made to the Braces Matching SPI.
Fuller descriptions of all changes can be found below (follow links).
Not all deprecations are listed here, assuming that the deprecated APIs continue to essentially work. For a full deprecation list, please consult the Javadoc.
These API specification versions may be used to indicate that a module requires a certain API feature in order to function. For example, if you see here a feature you need which is labelled 1.20, your manifest should contain in its main attributes the line:
OpenIDE-Module-Module-Dependencies: org.netbeans.modules.editor.bracesmatching/0 > 1.20
org.netbeans.spi.editor.bracesmatching.BraceContext
org.netbeans.spi.editor.bracesmatching.BracesMatcher
BracesMatcher
BraceContext
; made by: sdedic; issues:
#217730
The infrastructure does not lock the document prior calling the
BracesMatcher
methods. This change was done in order to
support BracesMatcher
implementations that need parser
results and have to lock the parser first.
From now on it's up to BracesMatcher
implementations
to readlock the document when directly searching through it
for the origin or matching areas.
The concept of using Thread.currentThread().interrupt()
for canceling braces matching tasks is flawed. The call breaks
synchronization of other parts ofthe system that are used from the
braces matching tasks, which results in InterruptedException
s
throw from various random places and possibly in corruption of
internal data.
We introduced MatcherContext.isTaskCanceled()
method
for determinig if a braces matching task was caceled.
The API has gone through a fast track review, but we would like
to give it one relase as a stabilization period. Therefore its
major version was set to 0
.
The BracesMatcher.findOrigin
can return additional
offset pairs for areas that it wants to be highlighted. The first
offset pair should always mark the whole original area. If no other
pairs are supplied the whole original area will be highlighted.
The Braces Matching SPI was created.
Built on June 4 2024. | Copyright © 2017-2024 Apache Software Foundation. All Rights Reserved.