using System; namespace FormulaEnginePoC.FormulaEngine { public abstract class CalcFormula : Formula { public abstract Func CompiledFunc { get; } public CalcFormula(string expression) : base(expression, typeof(TSource)) { } public TResult Calc(TSource source) { return CompiledFunc(source); } } }