ExpressionConverter parser= ExpressionConverter.getDefault(); Expression expression= parser.perform(children[0]); EvaluationContext evalContext= new EvaluationContext(null, cunit); evalContext.addVariable("selection", cunit); fLastResult= !(expression.evaluate(evalContext) != EvaluationResult.TRUE); fLastCUnit= cunit; return fLastResult;
try { ExpressionConverter parser= ExpressionConverter.getDefault(); Expression expression= parser.perform(children[0]); EvaluationContext evalContext= new EvaluationContext(null, cunit); evalContext.addVariable("compilationUnit", cunit); String[] natures= cunit.getJavaProject().getProject().getDescription().getNatureIds(); evalContext.addVariable("projectNatures", Arrays.asList(natures));  fLastResult= !(expression.evaluate(evalContext) != EvaluationResult.TRUE); fLastCUnit= cunit; return fLastResult; } catch (CoreException e) { JavaPlugin.log(e); }
	private boolean matches(ICompilationUnit cunit) throws CoreException {		IConfigurationElement[] children= fConfigurationElement.getChildren(ExpressionTagNames.ENABLEMENT);		if (children.length == 1) {			if (cunit.equals(fLastCUnit)) {				return fLastResult;			}						ExpressionConverter parser= ExpressionConverter.getDefault();			Expression expression= parser.perform(children[0]);			EvaluationContext evalContext= new EvaluationContext(null, cunit);			evalContext.addVariable("selection", cunit); //$NON-NLS-1$			fLastResult= !(expression.evaluate(evalContext) != EvaluationResult.TRUE);			fLastCUnit= cunit;			return fLastResult;		}		return true;	}