| using System; | |
| using System.Collections.Generic; | |
| using System.Linq; | |
| using System.Text; | |
| namespace OfficeOpenXml.FormulaParsing.ExpressionGraph | |
| { | |
| public static class ConstantExpressions | |
| { | |
| public static Expression Percent | |
| { | |
| get { return new ConstantExpression("Percent", () => new CompileResult(0.01, DataType.Decimal)); } | |
| } | |
| } | |
| public class ConstantExpression : AtomicExpression | |
| { | |
| private readonly Func<CompileResult> _factoryMethod; | |
| public ConstantExpression(string title, Func<CompileResult> factoryMethod) | |
| : base(title) | |
| { | |
| _factoryMethod = factoryMethod; | |
| } | |
| public override CompileResult Compile() | |
| { | |
| return _factoryMethod(); | |
| } | |
| } | |
| } |