org.eclipse.xtext.ui.editor.templates
Class CrossReferenceTemplateVariableResolver

java.lang.Object
  extended by org.eclipse.jface.text.templates.TemplateVariableResolver
      extended by org.eclipse.xtext.ui.editor.templates.AbstractTemplateVariableResolver
          extended by org.eclipse.xtext.ui.editor.templates.CrossReferenceTemplateVariableResolver

public class CrossReferenceTemplateVariableResolver
extends AbstractTemplateVariableResolver

Resolves a template variable to EClass classes which are visible in the current scope, and are assignment-compatible with the TemplateVariable reference type parameter (e.g. 'myRef' in ${someText:CrossReference('[MyPackageName.]MyType.myRef')}).

Author:
Michael Clay - Initial contribution and API, Sebastian Zarnekow - Initial contribution and API

Constructor Summary
CrossReferenceTemplateVariableResolver()
           
 
Method Summary
protected  org.eclipse.emf.ecore.EReference getReference(java.lang.String eClassName, java.lang.String eReferenceName, Grammar grammar)
           
protected  java.lang.Iterable<IEObjectDescription> queryScope(IScope scope)
           
 java.util.List<java.lang.String> resolveValues(org.eclipse.jface.text.templates.TemplateVariable variable, XtextTemplateContext castedContext)
           
 
Methods inherited from class org.eclipse.xtext.ui.editor.templates.AbstractTemplateVariableResolver
getEClassifierForGrammar, getGrammar, resolve
 
Methods inherited from class org.eclipse.jface.text.templates.TemplateVariableResolver
getDescription, getType, isUnambiguous, resolve, resolveAll, setDescription, setType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CrossReferenceTemplateVariableResolver

public CrossReferenceTemplateVariableResolver()
Method Detail

resolveValues

public java.util.List<java.lang.String> resolveValues(org.eclipse.jface.text.templates.TemplateVariable variable,
                                                      XtextTemplateContext castedContext)
Specified by:
resolveValues in class AbstractTemplateVariableResolver

queryScope

protected java.lang.Iterable<IEObjectDescription> queryScope(IScope scope)

getReference

protected org.eclipse.emf.ecore.EReference getReference(java.lang.String eClassName,
                                                        java.lang.String eReferenceName,
                                                        Grammar grammar)