LibreOffice Module sc (master) 1
Public Member Functions | Private Types | Private Attributes | List of all members
ScFormulaParserPool Class Reference

Stores the used instances of the FilterFormulaParser service implementations, mapped by the formula namespace they support. More...

#include <formulaparserpool.hxx>

Collaboration diagram for ScFormulaParserPool:
[legend]

Public Member Functions

 ScFormulaParserPool (const ScDocument &rDoc)
 
 ~ScFormulaParserPool ()
 
bool hasFormulaParser (const OUString &rNamespace)
 Returns true, if a formula parser is registered for the passed namespace. More...
 
css::uno::Reference< css::sheet::XFormulaParser > getFormulaParser (const OUString &rNamespace)
 Returns the formula parser that is registered for the passed namespace. More...
 

Private Types

typedef std::unordered_map< OUString, css::uno::Reference< css::sheet::XFormulaParser > > ParserMap
 

Private Attributes

const ScDocumentmrDoc
 
ParserMap maParsers
 

Detailed Description

Stores the used instances of the FilterFormulaParser service implementations, mapped by the formula namespace they support.

Definition at line 29 of file formulaparserpool.hxx.

Member Typedef Documentation

◆ ParserMap

typedef std::unordered_map< OUString, css::uno::Reference< css::sheet::XFormulaParser > > ScFormulaParserPool::ParserMap
private

Definition at line 45 of file formulaparserpool.hxx.

Constructor & Destructor Documentation

◆ ScFormulaParserPool()

ScFormulaParserPool::ScFormulaParserPool ( const ScDocument rDoc)
explicit

Definition at line 104 of file formulaparserpool.cxx.

◆ ~ScFormulaParserPool()

ScFormulaParserPool::~ScFormulaParserPool ( )

Definition at line 109 of file formulaparserpool.cxx.

Member Function Documentation

◆ getFormulaParser()

Reference< XFormulaParser > ScFormulaParserPool::getFormulaParser ( const OUString &  rNamespace)

Returns the formula parser that is registered for the passed namespace.

Definition at line 118 of file formulaparserpool.cxx.

References Exception, ScDocument::GetDocumentShell(), maParsers, and mrDoc.

Referenced by ScCompiler::CompileString(), and hasFormulaParser().

◆ hasFormulaParser()

bool ScFormulaParserPool::hasFormulaParser ( const OUString &  rNamespace)

Returns true, if a formula parser is registered for the passed namespace.

Definition at line 113 of file formulaparserpool.cxx.

References getFormulaParser().

Referenced by ScXMLImport::ExtractFormulaNamespaceGrammar().

Member Data Documentation

◆ maParsers

ParserMap ScFormulaParserPool::maParsers
private

Definition at line 48 of file formulaparserpool.hxx.

Referenced by getFormulaParser().

◆ mrDoc

const ScDocument& ScFormulaParserPool::mrDoc
private

Definition at line 47 of file formulaparserpool.hxx.

Referenced by getFormulaParser().


The documentation for this class was generated from the following files: