/// <summary> /// Creates an eval expression given template replacement info /// </summary> /// <param name="context">The context that contains information about the document being rendered</param> /// <returns></returns> public IDocumentExpression CreateExpression(DocumentExpressionContext context) { if (context.Body.Count > 0) { throw new DocumentRenderException("eval tags can't have a body", context.ReplacementKeyToken); } TokenReader <DocumentToken> reader = new TokenReader <DocumentToken>(context.Parameters); DocumentToken fgToken, bgToken; var ret = new EvalExpression(context.ReplacementKeyToken); if (reader.TryAdvance(out fgToken, skipWhitespace: true) == false) { return(ret); } else { ret.ForegroundColorToken = fgToken; } if (reader.TryAdvance(out bgToken, skipWhitespace: true) == false) { return(ret); } else { ret.BackgroundColorToken = bgToken; } return(ret); }
/// <summary> /// Creates an eval expression given template replacement info /// </summary> /// <param name="context">The context that contains information about the document being rendered</param> /// <returns></returns> public IDocumentExpression CreateExpression(DocumentExpressionContext context) { if (context.Body.Count > 0) { throw new DocumentRenderException("eval tags can't have a body", context.ReplacementKeyToken); } TokenReader<DocumentToken> reader = new TokenReader<DocumentToken>(context.Parameters); DocumentToken fgToken, bgToken; var ret = new EvalExpression(context.ReplacementKeyToken); if(reader.TryAdvance(out fgToken, skipWhitespace: true) == false) { return ret; } else { ret.ForegroundColorToken = fgToken; } if (reader.TryAdvance(out bgToken, skipWhitespace: true) == false) { return ret; } else { ret.BackgroundColorToken = bgToken; } return ret; }