LibreOffice Module connectivity (master) 1
Public Member Functions | Static Public Member Functions | Private Types | Static Private Member Functions | Private Attributes | List of all members
connectivity::file::OSQLAnalyzer Class Referencefinal

#include <fanalyzer.hxx>

Collaboration diagram for connectivity::file::OSQLAnalyzer:
[legend]

Public Member Functions

 OSQLAnalyzer (OConnection *_pConnection)
 
 ~OSQLAnalyzer ()
 
OConnectiongetConnection () const
 
void bindEvaluationRow (OValueRefRow const &_pRow)
 
void bindSelectRow (const OValueRefRow &_pRow)
 bind the select columns if they contain a function which needs a row value More...
 
void bindParameterRow (OValueRefRow const &_pRow)
 binds the row to parameter for the restrictions More...
 
void dispose ()
 
void start (OSQLParseNode const *pSQLParseNode)
 
bool hasRestriction () const
 
bool hasFunctions () const
 
bool evaluateRestriction ()
 
void setSelectionEvaluationResult (OValueRefRow const &_pRow, const std::vector< sal_Int32 > &_rColumnMapping)
 
void setOrigColumns (const css::uno::Reference< css::container::XNameAccess > &rCols)
 

Static Public Member Functions

static OOperandAttrcreateOperandAttr (sal_Int32 _nPos, const css::uno::Reference< css::beans::XPropertySet > &_xCol)
 

Private Types

typedef std::pair< ::rtl::Reference< OPredicateCompiler >,::rtl::Reference< OPredicateInterpreter > > TPredicates
 

Static Private Member Functions

static void bindRow (OCodeList &rCodeList, const OValueRefRow &_pRow)
 

Private Attributes

std::vector< TPredicatesm_aSelectionEvaluations
 
::rtl::Reference< OPredicateCompilerm_aCompiler
 
::rtl::Reference< OPredicateInterpreterm_aInterpreter
 
OConnectionm_pConnection
 
bool m_bHasSelectionCode
 
bool m_bSelectionFirstTime
 

Detailed Description

Definition at line 27 of file fanalyzer.hxx.

Member Typedef Documentation

◆ TPredicates

Definition at line 29 of file fanalyzer.hxx.

Constructor & Destructor Documentation

◆ OSQLAnalyzer()

OSQLAnalyzer::OSQLAnalyzer ( OConnection _pConnection)

Definition at line 34 of file fanalyzer.cxx.

References m_aCompiler, and m_aInterpreter.

◆ ~OSQLAnalyzer()

OSQLAnalyzer::~OSQLAnalyzer ( )

Definition at line 44 of file fanalyzer.cxx.

Member Function Documentation

◆ bindEvaluationRow()

void OSQLAnalyzer::bindEvaluationRow ( OValueRefRow const &  _pRow)

Definition at line 134 of file fanalyzer.cxx.

References bindRow(), and m_aCompiler.

◆ bindParameterRow()

void OSQLAnalyzer::bindParameterRow ( OValueRefRow const &  _pRow)

binds the row to parameter for the restrictions

Parameters
_pRowthe parameter row

Definition at line 55 of file FNoException.cxx.

References connectivity::file::OOperandRow::bindValue(), code, and m_aCompiler.

◆ bindRow()

void OSQLAnalyzer::bindRow ( OCodeList rCodeList,
const OValueRefRow _pRow 
)
staticprivate

Definition at line 112 of file fanalyzer.cxx.

References connectivity::file::OOperandRow::bindValue(), and code.

Referenced by bindEvaluationRow(), and bindSelectRow().

◆ bindSelectRow()

void OSQLAnalyzer::bindSelectRow ( const OValueRefRow _pRow)

bind the select columns if they contain a function which needs a row value

Parameters
_pRowthe result row

Definition at line 124 of file fanalyzer.cxx.

References bindRow(), and m_aSelectionEvaluations.

◆ createOperandAttr()

OOperandAttr * OSQLAnalyzer::createOperandAttr ( sal_Int32  _nPos,
const css::uno::Reference< css::beans::XPropertySet > &  _xCol 
)
static

Definition at line 139 of file fanalyzer.cxx.

References _nPos.

Referenced by connectivity::file::OPredicateCompiler::execute_Operand().

◆ dispose()

void OSQLAnalyzer::dispose ( void  )

Definition at line 186 of file fanalyzer.cxx.

References m_aCompiler, and m_aSelectionEvaluations.

◆ evaluateRestriction()

bool connectivity::file::OSQLAnalyzer::evaluateRestriction ( )
inline

Definition at line 61 of file fanalyzer.hxx.

References m_aInterpreter.

Referenced by connectivity::file::OResultSet::ExecuteRow().

◆ getConnection()

OConnection * connectivity::file::OSQLAnalyzer::getConnection ( ) const
inline

◆ hasFunctions()

bool OSQLAnalyzer::hasFunctions ( ) const

◆ hasRestriction()

bool OSQLAnalyzer::hasRestriction ( ) const

◆ setOrigColumns()

void OSQLAnalyzer::setOrigColumns ( const css::uno::Reference< css::container::XNameAccess > &  rCols)

Definition at line 196 of file fanalyzer.cxx.

References m_aCompiler, and m_aSelectionEvaluations.

◆ setSelectionEvaluationResult()

void OSQLAnalyzer::setSelectionEvaluationResult ( OValueRefRow const &  _pRow,
const std::vector< sal_Int32 > &  _rColumnMapping 
)

◆ start()

void OSQLAnalyzer::start ( OSQLParseNode const *  pSQLParseNode)

Member Data Documentation

◆ m_aCompiler

::rtl::Reference<OPredicateCompiler> connectivity::file::OSQLAnalyzer::m_aCompiler
private

◆ m_aInterpreter

::rtl::Reference<OPredicateInterpreter> connectivity::file::OSQLAnalyzer::m_aInterpreter
private

Definition at line 33 of file fanalyzer.hxx.

Referenced by evaluateRestriction(), and OSQLAnalyzer().

◆ m_aSelectionEvaluations

std::vector< TPredicates > connectivity::file::OSQLAnalyzer::m_aSelectionEvaluations
private

◆ m_bHasSelectionCode

bool connectivity::file::OSQLAnalyzer::m_bHasSelectionCode
mutableprivate

Definition at line 36 of file fanalyzer.hxx.

Referenced by hasFunctions().

◆ m_bSelectionFirstTime

bool connectivity::file::OSQLAnalyzer::m_bSelectionFirstTime
mutableprivate

Definition at line 37 of file fanalyzer.hxx.

Referenced by hasFunctions().

◆ m_pConnection

OConnection* connectivity::file::OSQLAnalyzer::m_pConnection
private

Definition at line 34 of file fanalyzer.hxx.

Referenced by getConnection(), and start().


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