| 
    LibreOffice Module sc (master) 1
    
   | 
 
Represents an ARRAY record that contains the token array of a matrix formula. More...
#include <xetable.hxx>
Public Member Functions | |
| XclExpArray (const XclTokenArrayRef &xTokArr, const ScRange &rScRange) | |
| virtual XclTokenArrayRef | CreateCellTokenArray (const XclExpRoot &rRoot) const override | 
| Creates and returns the token array for a corresponding FORMULA cell record.  More... | |
| virtual bool | IsVolatile () const override | 
| Returns true, if the array formula contains volatile functions.  More... | |
  Public Member Functions inherited from XclExpRangeFmlaBase | |
| bool | IsBasePos (sal_uInt16 nXclCol, sal_uInt32 nXclRow) const | 
| Returns true, if the passed cell position is equal to own base position.  More... | |
| virtual XclTokenArrayRef | CreateCellTokenArray (const XclExpRoot &rRoot) const =0 | 
| Derived classes create the token array for a corresponding FORMULA cell record.  More... | |
| virtual bool | IsVolatile () const =0 | 
| Derived classes return true, if the own formula contains volatile functions.  More... | |
  Public Member Functions inherited from XclExpRecord | |
| XclExpRecord (sal_uInt16 nRecId=EXC_ID_UNKNOWN, std::size_t nRecSize=0) | |
| XclExpRecord (XclExpRecord const &)=default | |
| virtual | ~XclExpRecord () override | 
| sal_uInt16 | GetRecId () const | 
| Returns the current record ID.  More... | |
| std::size_t | GetRecSize () const | 
| Returns the current record size prediction.  More... | |
| void | SetRecId (sal_uInt16 nRecId) | 
| Sets a new record ID.  More... | |
| void | SetRecSize (std::size_t nRecSize) | 
| Sets a new record size prediction.  More... | |
| void | AddRecSize (std::size_t nRecSize) | 
| Adds a size value to the record size prediction.  More... | |
| void | SetRecHeader (sal_uInt16 nRecId, std::size_t nRecSize) | 
| Sets record ID and size with one call.  More... | |
| virtual void | Save (XclExpStream &rStrm) override | 
| Writes the record header and calls WriteBody().  More... | |
  Public Member Functions inherited from XclExpRecordBase | |
| XclExpRecordBase () | |
| XclExpRecordBase (XclExpRecordBase const &) | |
| XclExpRecordBase (XclExpRecordBase &&) | |
| XclExpRecordBase & | operator= (XclExpRecordBase const &) | 
| XclExpRecordBase & | operator= (XclExpRecordBase &&) noexcept | 
| virtual | ~XclExpRecordBase () | 
| virtual void | Save (XclExpStream &rStrm) | 
| Overwrite this method to do any operation while saving the record.  More... | |
| virtual void | SaveXml (XclExpXmlStream &rStrm) | 
  Public Member Functions inherited from salhelper::SimpleReferenceObject | |
| SimpleReferenceObject () | |
| void | acquire () | 
| void | release () | 
Private Member Functions | |
| virtual void | WriteBody (XclExpStream &rStrm) override | 
| Writes the body of the record (without record header).  More... | |
Private Attributes | |
| XclTokenArrayRef | mxTokArr | 
Additional Inherited Members | |
  Static Public Member Functions inherited from salhelper::SimpleReferenceObject | |
| static void * | operator new (std::size_t nSize) | 
| static void * | operator new (std::size_t nSize, std::nothrow_t const &rNothrow) | 
| static void | operator delete (void *pPtr) | 
| static void | operator delete (void *pPtr, std::nothrow_t const &rNothrow) | 
  Protected Member Functions inherited from XclExpRangeFmlaBase | |
| XclExpRangeFmlaBase (sal_uInt16 nRecId, sal_uInt32 nRecSize, const ScAddress &rScPos) | |
| Constructs the record with a single cell.  More... | |
| XclExpRangeFmlaBase (sal_uInt16 nRecId, sal_uInt32 nRecSize, const ScRange &rScRange) | |
| Constructs the record with a cell range.  More... | |
| void | Extend (const ScAddress &rScPos) | 
| Extends the cell range to include the passed cell address.  More... | |
| void | WriteRangeAddress (XclExpStream &rStrm) const | 
| Writes the range address covered by this record.  More... | |
| virtual void | WriteBody (XclExpStream &rStrm) | 
| Writes the body of the record (without record header).  More... | |
  Protected Member Functions inherited from salhelper::SimpleReferenceObject | |
| virtual | ~SimpleReferenceObject () COVERITY_NOEXCEPT_FALSE | 
  Protected Attributes inherited from XclExpRangeFmlaBase | |
| XclRange | maXclRange | 
| XclAddress | maBaseXclPos | 
| Range described by this record.  More... | |
  Protected Attributes inherited from salhelper::SimpleReferenceObject | |
| oslInterlockedCount | m_nCount | 
Represents an ARRAY record that contains the token array of a matrix formula.
An ARRAY record is stored following the first FORMULA record that is part of a matrix formula. All FORMULA records of a matrix formula contain a reference to the ARRAY record, while the ARRAY record contains the formula token array used by all formulas.
Definition at line 107 of file xetable.hxx.
      
  | 
  explicit | 
Definition at line 118 of file xetable.cxx.
      
  | 
  overridevirtual | 
Creates and returns the token array for a corresponding FORMULA cell record.
Implements XclExpRangeFmlaBase.
Definition at line 124 of file xetable.cxx.
References XclExpFormulaCompiler::CreateSpecialRefFormula(), EXC_TOKID_EXP, XclExpRoot::GetFormulaCompiler(), and XclExpRangeFmlaBase::maBaseXclPos.
      
  | 
  overridevirtual | 
Returns true, if the array formula contains volatile functions.
Implements XclExpRangeFmlaBase.
Definition at line 129 of file xetable.cxx.
References mxTokArr.
Referenced by WriteBody().
      
  | 
  overrideprivatevirtual | 
Writes the body of the record (without record header).
@descr Usually this method will be overwritten by derived classes.
Reimplemented from XclExpRecord.
Definition at line 134 of file xetable.cxx.
References EXC_ARRAY_DEFAULTFLAGS, EXC_ARRAY_RECALC_ALWAYS, IsVolatile(), mxTokArr, rStrm, set_flag(), and XclExpRangeFmlaBase::WriteRangeAddress().
      
  | 
  private | 
Definition at line 121 of file xetable.hxx.
Referenced by IsVolatile(), and WriteBody().