org.apache.poi.ss.formula.functions
Class FactDouble

java.lang.Object
  extended by org.apache.poi.ss.formula.functions.Fixed1ArgFunction
      extended by org.apache.poi.ss.formula.functions.FactDouble
All Implemented Interfaces:
FreeRefFunction, Function, Function1Arg

public class FactDouble
extends Fixed1ArgFunction
implements FreeRefFunction

Implementation for Excel FACTDOUBLE() function.

Syntax:
FACTDOUBLE (number)

Returns the double factorial of a number.

Number is the value for which to return the double factorial. If number is not an integer, it is truncated.

Remarks

Use a cache for more speed of previously calculated factorial


Field Summary
static FreeRefFunction instance
           
 
Constructor Summary
FactDouble()
           
 
Method Summary
 ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval numberVE)
          see Function.evaluate(ValueEval[], int, int)
 ValueEval evaluate(ValueEval[] args, OperationEvaluationContext ec)
           
static java.math.BigInteger factorial(int n)
           
 
Methods inherited from class org.apache.poi.ss.formula.functions.Fixed1ArgFunction
evaluate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

instance

public static final FreeRefFunction instance
Constructor Detail

FactDouble

public FactDouble()
Method Detail

evaluate

public ValueEval evaluate(int srcRowIndex,
                          int srcColumnIndex,
                          ValueEval numberVE)
Description copied from interface: Function1Arg
see Function.evaluate(ValueEval[], int, int)

Specified by:
evaluate in interface Function1Arg

factorial

public static java.math.BigInteger factorial(int n)

evaluate

public ValueEval evaluate(ValueEval[] args,
                          OperationEvaluationContext ec)
Specified by:
evaluate in interface FreeRefFunction
Parameters:
args - the pre-evaluated arguments for this function. args is never null, nor are any of its elements.
ec - primarily used to identify the source cell containing the formula being evaluated. may also be used to dynamically create reference evals.
Returns:
never null. Possibly an instance of ErrorEval in the case of a specified Excel error (Exceptions are never thrown to represent Excel errors).