Base class for formula functions.

Inheritance

constructor

protected ExcelCalcFunction()

Returns ExcelCalcFunction

Maximum number of arguments required for the function

public abstract int MaxArgs { get; }

Minimum number of arguments required for the function

public abstract int MinArgs { get; }

Function name used to reference the function in a formula

public abstract string Name { get; }

Determines whether the parameter at the specified index will accept an enumerable reference.

public virtual bool CanParameterBeEnumerable(int parameterIndex)

Parameters

  • parameterIndex: int

Returns any

DoesParameterAllowIntermediateResultArray(int, bool)

Section titled "DoesParameterAllowIntermediateResultArray(int, bool)"

Determines whether the function accepts an intermediate result array created by evaluating a nested function on a per-element basis of an array or region parameter when a single value is expected.

protected virtual bool DoesParameterAllowIntermediateResultArray(int parameterIndex, bool isCreatedFromRegionReference)

Parameters

  • parameterIndex: int
  • isCreatedFromRegionReference: bool

Returns any

Evaluate(ExcelCalcNumberStack, int)

Section titled "Evaluate(ExcelCalcNumberStack, int)"

Evaluates the function against the arguments on the number stack.

protected abstract ExcelCalcValue Evaluate(ExcelCalcNumberStack numberStack, int argumentCount)

Parameters

  • numberStack: ExcelCalcNumberStack
  • argumentCount: int

Returns any

GetArguments(ExcelCalcNumberStack, int, bool)

Section titled "GetArguments(ExcelCalcNumberStack, int, bool)"

A helper method for extracting the instances from the stack.

protected ExcelCalcValue[] GetArguments(ExcelCalcNumberStack numberStack, int argumentCount, bool skipEmptyValues)

Parameters

  • numberStack: ExcelCalcNumberStack
  • argumentCount: int
  • skipEmptyValues: bool

Returns any

GetArguments(ExcelCalcNumberStack, int, bool, bool)

Section titled "GetArguments(ExcelCalcNumberStack, int, bool, bool)"

A helper method for extracting the instances from the stack.

protected ExcelCalcValue[] GetArguments(ExcelCalcNumberStack numberStack, int argumentCount, bool skipEmptyValues, bool skipHiddenCells)

Parameters

  • numberStack: ExcelCalcNumberStack
  • argumentCount: int
  • skipEmptyValues: bool
  • skipHiddenCells: bool

Returns any

PerformEvaluation(ExcelCalcNumberStack, int)

Section titled "PerformEvaluation(ExcelCalcNumberStack, int)"

Evaluates the function against the arguments on the number stack.

public void PerformEvaluation(ExcelCalcNumberStack numberStack, int argumentCount)

Parameters

  • numberStack: ExcelCalcNumberStack
  • argumentCount: int

Returns any