public static ITemplateType ApplyBinary(ITemplateType lhs, ITemplateType rhs, int id, ErrorList errors) { if (rhs == null || lhs == null) return null; var op = (Operator) id; try { var rt = lhs.ApplyBinary(op, rhs); return PrimitiveType.Create(rt); } catch (Exception e) { errors.ErrorRuntimeError(e); } return null; }
public ErrorList WarmUp(TemplateDictionary state) { _buffer = null; _errors = new ErrorList(); _state = state; try { _image(this); } catch (Exception e) { _errors.ErrorRuntimeError(e); } return _errors; }
public static ITemplateType ApplyUnary(ITemplateType lhs, int id, ErrorList errors) { if (lhs == null) return null; var op = (Operator) id; try { return PrimitiveType.Create(lhs.ApplyUnary(op)); } catch (Exception e) { errors.ErrorRuntimeError(e); } return null; }
public TemplateExecutionResult Execute(TemplateDictionary state) { var result = new TemplateExecutionResult {Template = this}; _buffer = new StringBuilder(); _errors = new ErrorList(); _state = state; try { _image(this); result.Output = _buffer.ToString(); } catch (Exception e) { result.Output = string.Empty; _errors.ErrorRuntimeError(e); } result.Errors.AddRange(_errors); return result; }