diff options
author | Luboš Luňák <l.lunak@collabora.com> | 2018-08-07 14:48:56 +0200 |
---|---|---|
committer | Luboš Luňák <l.lunak@collabora.com> | 2018-08-07 17:35:16 +0200 |
commit | 1d531077d97e247ebfd14b18a5dc72c45f41ea15 (patch) | |
tree | 8022c6cc5a1e6d977a47bf6caaf9baf7cdbe79c7 /sc/inc/compiler.hxx | |
parent | a30072282e7bc7d9dda68986b4859cc1d6575597 (diff) |
more robust implicit intersection optimizing
For example, FormulaCompiler::MergeRangeReference() may replace
the parameter tokens and merge two into one.
Change-Id: Ie2933dec3ef73b5b605160e86a8ab3b5b1d17c1c
Reviewed-on: https://gerrit.libreoffice.org/58684
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
Diffstat (limited to 'sc/inc/compiler.hxx')
-rw-r--r-- | sc/inc/compiler.hxx | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/sc/inc/compiler.hxx b/sc/inc/compiler.hxx index 969bd41d838a..394f532b57fc 100644 --- a/sc/inc/compiler.hxx +++ b/sc/inc/compiler.hxx @@ -305,10 +305,11 @@ private: // be important. Store candidate parameters and the operation they are the argument for. struct PendingImplicitIntersectionOptimization { - PendingImplicitIntersectionOptimization(formula::FormulaToken** p, const formula::FormulaToken* o) - : parameter( p ), operation( o ) {} - formula::FormulaToken** parameter; - const formula::FormulaToken* operation; + PendingImplicitIntersectionOptimization(formula::FormulaToken** p, formula::FormulaToken* o) + : parameterLocation( p ), parameter( *p ), operation( o ) {} + formula::FormulaToken** parameterLocation; + formula::FormulaTokenRef parameter; + formula::FormulaTokenRef operation; }; std::vector< PendingImplicitIntersectionOptimization > mPendingImplicitIntersectionOptimizations; std::set<formula::FormulaTokenRef> mUnhandledPossibleImplicitIntersections; |