if (buffer == null) return null;
	public TemplateBuffer evaluate(Template template) throws CoreException {		// test that all variables are defined		Iterator iterator= getContextType().variableIterator();		while (iterator.hasNext()) {			TemplateVariable var= (TemplateVariable) iterator.next();			if (var instanceof CodeTemplateContextType.CodeTemplateVariable) {				Assert.isNotNull(getVariable(var.getName()), "Variable " + var.getName() + "not defined"); //$NON-NLS-1$ //$NON-NLS-2$			}		}		if (!canEvaluate(template))			return null;				TemplateTranslator translator= new TemplateTranslator();		TemplateBuffer buffer= translator.translate(template.getPattern());		getContextType().edit(buffer, this);		return buffer;	}