public class XbaseHighlightingCalculator extends java.lang.Object implements ISemanticHighlightingCalculator
A base implementation of the semantic highlighting calculation.
Highlights references to Primitives
, e.g. void, int, boolean
and the identifier
this
.
Constructor and Description |
---|
XbaseHighlightingCalculator() |
Modifier and Type | Method and Description |
---|---|
protected void |
computeFeatureCallHighlighting(XAbstractFeatureCall featureCall,
IHighlightedPositionAcceptor acceptor) |
protected void |
computeReferencedJvmTypeHighlighting(IHighlightedPositionAcceptor acceptor,
org.eclipse.emf.ecore.EObject referencer) |
protected void |
doProvideHighlightingFor(XtextResource resource,
IHighlightedPositionAcceptor acceptor)
Actual implementation of the semantic highlighting calculation.
|
protected TerminalRule |
getIDRule() |
protected void |
highlightAnnotation(XAnnotation annotation,
IHighlightedPositionAcceptor acceptor) |
protected void |
highlightDeprecation(IHighlightedPositionAcceptor acceptor,
org.eclipse.emf.ecore.EObject referencer,
org.eclipse.emf.ecore.EReference reference,
org.eclipse.emf.ecore.EObject resolvedReferencedObject) |
protected void |
highlightFeatureCall(XAbstractFeatureCall featureCall,
IHighlightedPositionAcceptor acceptor,
java.lang.String id) |
protected void |
highlightNode(INode node,
java.lang.String id,
IHighlightedPositionAcceptor acceptor)
Highlights the non-hidden parts of
node with the style that is associated with id . |
protected void |
highlightNumberLiterals(XNumberLiteral literal,
IHighlightedPositionAcceptor acceptor) |
protected void |
highlightObjectAtFeature(IHighlightedPositionAcceptor acceptor,
org.eclipse.emf.ecore.EObject object,
org.eclipse.emf.ecore.EStructuralFeature feature,
java.lang.String id)
Highlights an object at the position of the given
EStructuralFeature |
protected void |
highlightReferenceJvmType(IHighlightedPositionAcceptor acceptor,
org.eclipse.emf.ecore.EObject referencer,
org.eclipse.emf.ecore.EReference reference,
org.eclipse.emf.ecore.EObject resolvedReferencedObject) |
protected void |
highlightSpecialIdentifiers(IHighlightedPositionAcceptor acceptor,
ICompositeNode root) |
protected void |
highlightSpecialIdentifiers(ILeafNode leafNode,
IHighlightedPositionAcceptor acceptor,
TerminalRule idRule) |
protected java.util.Map<java.lang.String,java.lang.String> |
initializeHighlightedIdentifiers()
Returns a mapping from identifier (e.g.
|
void |
provideHighlightingFor(XtextResource resource,
IHighlightedPositionAcceptor acceptor) |
protected void |
searchAndHighlightElements(XtextResource resource,
IHighlightedPositionAcceptor acceptor) |
public void provideHighlightingFor(XtextResource resource, IHighlightedPositionAcceptor acceptor)
provideHighlightingFor
in interface ISemanticHighlightingCalculator
resource
- the resource that will be highlighted. May be null
in some rare cases.acceptor
- used to announce the mapping from text-range to the style's id. The acceptor will never be null
.protected void doProvideHighlightingFor(XtextResource resource, IHighlightedPositionAcceptor acceptor)
Actual implementation of the semantic highlighting calculation. It is ensured, that the given resource is not
null
and refers to an initialized parse result.
Clients should override this method in order to perform custom highlighting.
resource
- a valid to-be-processed resource. Is never null
.acceptor
- the acceptor. Is never null
.protected void searchAndHighlightElements(XtextResource resource, IHighlightedPositionAcceptor acceptor)
protected void computeReferencedJvmTypeHighlighting(IHighlightedPositionAcceptor acceptor, org.eclipse.emf.ecore.EObject referencer)
protected void highlightReferenceJvmType(IHighlightedPositionAcceptor acceptor, org.eclipse.emf.ecore.EObject referencer, org.eclipse.emf.ecore.EReference reference, org.eclipse.emf.ecore.EObject resolvedReferencedObject)
protected void highlightDeprecation(IHighlightedPositionAcceptor acceptor, org.eclipse.emf.ecore.EObject referencer, org.eclipse.emf.ecore.EReference reference, org.eclipse.emf.ecore.EObject resolvedReferencedObject)
protected void computeFeatureCallHighlighting(XAbstractFeatureCall featureCall, IHighlightedPositionAcceptor acceptor)
protected void highlightFeatureCall(XAbstractFeatureCall featureCall, IHighlightedPositionAcceptor acceptor, java.lang.String id)
protected void highlightAnnotation(XAnnotation annotation, IHighlightedPositionAcceptor acceptor)
protected void highlightNumberLiterals(XNumberLiteral literal, IHighlightedPositionAcceptor acceptor)
protected void highlightSpecialIdentifiers(IHighlightedPositionAcceptor acceptor, ICompositeNode root)
protected TerminalRule getIDRule()
protected void highlightSpecialIdentifiers(ILeafNode leafNode, IHighlightedPositionAcceptor acceptor, TerminalRule idRule)
protected java.util.Map<java.lang.String,java.lang.String> initializeHighlightedIdentifiers()
null
.protected void highlightObjectAtFeature(IHighlightedPositionAcceptor acceptor, org.eclipse.emf.ecore.EObject object, org.eclipse.emf.ecore.EStructuralFeature feature, java.lang.String id)
EStructuralFeature
protected void highlightNode(INode node, java.lang.String id, IHighlightedPositionAcceptor acceptor)
node
with the style that is associated with id
.