diff options
Diffstat (limited to 'sc/source/core/inc')
-rw-r--r-- | sc/source/core/inc/interpre.hxx | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sc/source/core/inc/interpre.hxx b/sc/source/core/inc/interpre.hxx index 8a240e617261..a6eaf5cd78ae 100644 --- a/sc/source/core/inc/interpre.hxx +++ b/sc/source/core/inc/interpre.hxx @@ -97,6 +97,7 @@ class SharedStringPool; } #define MAXSTACK (4096 / sizeof(formula::FormulaToken*)) +#define TOKEN_CACHE_SIZE 8 class ScTokenStack { @@ -229,6 +230,8 @@ private: bool bMatrixFormula; // formula cell is a matrix formula VolatileType meVolatileType; + size_t mnTokenCachePos; + std::vector<formula::FormulaToken*> maTokenCache; /// Merge global and document specific settings. void MergeCalcConfig(); @@ -395,6 +398,7 @@ private: sc::RangeMatrix PopRangeMatrix(); void QueryMatrixType(const ScMatrixRef& xMat, short& rRetTypeExpr, sal_uLong& rRetIndexExpr); + formula::FormulaToken* CreateFormulaDoubleToken( double fVal, short nFmt = css::util::NumberFormat::NUMBER ); formula::FormulaToken* CreateDoubleOrTypedToken( double fVal ); void PushDouble(double nVal); |