1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
13 #include <formula/grammar.hxx>
15 #include "address.hxx"
16 #include "formularesult.hxx"
21 class ScSimpleFormulaCalculator
24 SvNumFormatType mnFormatType
;
27 std::unique_ptr
<ScTokenArray
> mpCode
;
30 ScFormulaResult maResult
;
31 formula::FormulaGrammar::Grammar maGram
;
33 OUString maMatrixFormulaResult
;
38 ScSimpleFormulaCalculator(ScDocument
& rDoc
, const ScAddress
& rAddr
,
39 const OUString
& rFormula
, bool bMatrixFormula
,
40 formula::FormulaGrammar::Grammar eGram
= formula::FormulaGrammar::GRAM_DEFAULT
);
41 ~ScSimpleFormulaCalculator();
46 FormulaError
GetErrCode();
48 svl::SharedString
GetString();
49 SvNumFormatType
GetFormatType() const { return mnFormatType
; }
51 bool HasColRowName() const;
53 ScTokenArray
* GetCode();
55 void SetLimitString(bool bLimitString
);
58 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */