public FunctionValue Calculate(IList<FunctionValue> args, Cell currentCell)
{
StringBuilder result = new StringBuilder("");
foreach (FunctionValue arg in args)
if ({
result.Append(',');
switch (arg.Type)
!= FunctionValueType.RANGE)
{
case FunctionValueType.BOOLEAN:
result.Append((bool)arg.Value ? "True" : "False");
break;
case FunctionValueType.STRING:
result.Append(arg.Value);
break;
case FunctionValueType.NUMBER:
result.Append(((double)arg.Value).ToString("0.#####"));
break;
case FunctionValueType.NULL:
result.Append(' ');
break;
case FunctionValueType.RANGE:
result.Append(arg.Value.ToString());
break;
}
}
return new FunctionValue(result.ToString());
} |