LibreOffice Module sc (master) 1
|
#include <memory>
#include <vector>
#include <formula/opcode.hxx>
#include "refdata.hxx"
#include "scdllapi.h"
#include <formula/token.hxx>
#include "calcmacros.hxx"
#include "types.hxx"
Go to the source code of this file.
Classes | |
class | ScSingleRefToken |
class | ScDoubleRefToken |
class | ScMatrixToken |
class | ScMatrixRangeToken |
Token storing matrix that represents values in sheet range. More... | |
class | ScExternalSingleRefToken |
class | ScExternalDoubleRefToken |
class | ScExternalNameToken |
class | ScTableRefToken |
Special token to remember details of ocTableRef "structured references". More... | |
class | ScJumpMatrixToken |
class | ScRefListToken |
class | ScEmptyCellToken |
class | ScMatrixCellResultToken |
Transports the result from the interpreter to the formula cell. More... | |
class | ScMatrixFormulaCellToken |
Stores the matrix result at the formula cell, additionally the range the matrix formula occupies. More... | |
class | ScHybridCellToken |
class | SingleDoubleRefModifier |
class | SingleDoubleRefProvider |
Macros | |
#define | MATRIX_TOKEN_HAS_RANGE 1 |
Typedefs | |
typedef ::std::vector< ScComplexRefData > | ScRefList |
Functions | |
formula::FormulaTokenRef | extendRangeReference (ScSheetLimits &rLimits, formula::FormulaToken &rTok1, formula::FormulaToken &rTok2, const ScAddress &rPos, bool bReuseDoubleRef) |
If rTok1 and rTok2 both are SingleRef or DoubleRef tokens, extend/merge ranges as needed for ocRange. More... | |
typedef ::std::vector< ScComplexRefData > ScRefList |
formula::FormulaTokenRef extendRangeReference | ( | ScSheetLimits & | rLimits, |
formula::FormulaToken & | rTok1, | ||
formula::FormulaToken & | rTok2, | ||
const ScAddress & | rPos, | ||
bool | bReuseDoubleRef | ||
) |
If rTok1 and rTok2 both are SingleRef or DoubleRef tokens, extend/merge ranges as needed for ocRange.
rPos | The formula's position, used to calculate absolute positions from relative references. |
bReuseDoubleRef | If true, a DoubleRef token is reused if passed as rTok1 or rTok2, else a new DoubleRef token is created and returned. |
Definition at line 504 of file token.cxx.
References formula::FormulaToken::Clone(), ScComplexRefData::Extend(), formula::FormulaToken::GetIndex(), formula::FormulaToken::GetRef(), formula::FormulaToken::GetRefList(), formula::FormulaToken::GetSingleRef(), formula::FormulaToken::GetString(), formula::FormulaToken::GetType(), i, ScSingleRefData::IsFlag3D(), p, pt, ScComplexRefData::Ref1, ScComplexRefData::Ref2, ScSingleRefData::SetFlag3D(), svDoubleRef, svExternalDoubleRef, svExternalSingleRef, svRefList, svSingleRef, and svUnknown.
Referenced by ScCompiler::ExtendRangeReference(), ScTokenArray::MergeRangeReference(), and ScInterpreter::ScRangeFunc().