Compile formulas using internal API directly...

rather than via UNO API which does triple conversion per formula expression.

Change-Id: Ib397c7976c06b98ce036caa7bfe2748e868299d9
This method is now unused.

Change-Id: I22b1089ee99ad041d567fdac8714c2e7fa774056
Check all call sites of CompileString() and make sure we don't leak.

We *were* leaking quite a bit.

Change-Id: I3f53eff22beab27b34a055a4452311f2e2f771db
Modify ScFormulaCell's ctor to take a const reference to ScTokenArray.

Instead of a pointer to ScTokenArray, and then clone its instance.  If
the token array gets cloned in ctor, take a const reference.

Change-Id: I280fd7eb9eaea9905dbf954a1ace904ab0814dfe
Avoid duplication of ScTokenArray during formula cell construction.

For slightly less overhead.

Change-Id: Ie5861d585d6e22fbd19dfd57edfebae4f4504839
Using OUStringBuffer is faster than chained += operator.

Change-Id: I9991028ddd8ab6e2e43fe9a19428c9fdfbd38db6
Add new test for parsing OOo A1 style single references.

Change-Id: I7644338bd536d16777d330a64764eb26ecda5da5
Avoid using an extra buffer when the name doesn't contain double-quotes.

Change-Id: Idc76ccad114e5964f80c5a3c8c8da2a64c1a2b86
Add mutex to guard the shared string pool content.

Change-Id: I0eb97d0fbeaefd8a1c86d240ed8bd7f208fb662e
Keep the integer type in sync and remove unused data members.

Change-Id: Iaaf1ebddd3b946b3211952729d41b01f0967f374
Use atomic increment and decrement for thread-safe reference count.

Change-Id: I630298b1c37a6d23c1aa17aabc1c9b2dcb48608a
Set mutex for external ref cache content.

Change-Id: Id00c0e553e08740df8d9b7eef19407e1b0d3f022
Make this method private as it is used only internally.

Change-Id: I752c9a6bcd7f5b057cd517a9630a975009d6fb0d
Add mutex for external source document meta-data container.

These get updated from reference parser code (ScAddress, ScRange etc)
which may be run from multiple threads.

Change-Id: I5a1aaa4b51d9b9fb032458eb5e89f0652887184e
Guard cache access with mutex & a new method just to check for range name.

Change-Id: Id24b5ba72362f9d878b4878c1e807bed3e596b20
Make TransformInput() a non-member function.

Change-Id: Ieb077b6ce661e2885d6010519f137235a048f9df
Protect those global symbols containers with mutex during initialization.

Change-Id: Id15b3e1a2bfebd2ea795fd412a259f125f5d9bab
Allow non-pooled instance of SvNumberFormatter inside ScCompiler.

Change-Id: I645079254621c2f2684a69116b094e37e46f46f4
Allow instantiation of more than one SvNumberFormatter from the document.

Change-Id: Ide6875e031268337bf6a21286176a38905c12691
Perform formula cell compilations in multiple threads during xlsx import.

One sheet per thread. Right now the thread count is set to 1 due to non
re-entrancy of a large portion of Calc core, and beyond. We need to fix
that first before setting the thread count to more than 1.

Change-Id: I6997c1e9540de939f1f00b1798e2b32059787ae5