LibreOffice Module sc (master) 1
Functions | Variables
interpr1.cxx File Reference
#include <interpre.hxx>
#include <scitems.hxx>
#include <editeng/langitem.hxx>
#include <editeng/justifyitem.hxx>
#include <o3tl/safeint.hxx>
#include <o3tl/temporary.hxx>
#include <osl/thread.h>
#include <unotools/textsearch.hxx>
#include <svl/numformat.hxx>
#include <svl/zforlist.hxx>
#include <svl/zformat.hxx>
#include <tools/urlobj.hxx>
#include <unotools/charclass.hxx>
#include <sfx2/docfile.hxx>
#include <sfx2/printer.hxx>
#include <unotools/collatorwrapper.hxx>
#include <unotools/transliterationwrapper.hxx>
#include <rtl/character.hxx>
#include <rtl/ustring.hxx>
#include <sal/log.hxx>
#include <osl/diagnose.h>
#include <unicode/uchar.h>
#include <unicode/regex.h>
#include <i18nlangtag/mslangid.hxx>
#include <patattr.hxx>
#include <global.hxx>
#include <document.hxx>
#include <dociter.hxx>
#include <formulacell.hxx>
#include <scmatrix.hxx>
#include <docoptio.hxx>
#include <attrib.hxx>
#include <jumpmatrix.hxx>
#include <cellkeytranslator.hxx>
#include <lookupcache.hxx>
#include <rangenam.hxx>
#include <rangeutl.hxx>
#include <compiler.hxx>
#include <externalrefmgr.hxx>
#include <doubleref.hxx>
#include <queryparam.hxx>
#include <queryentry.hxx>
#include <queryiter.hxx>
#include <tokenarray.hxx>
#include <compare.hxx>
#include <comphelper/processfactory.hxx>
#include <comphelper/random.hxx>
#include <comphelper/string.hxx>
#include <svl/sharedstringpool.hxx>
#include <stdlib.h>
#include <vector>
#include <memory>
#include <limits>
#include <string_view>
#include <cmath>
Include dependency graph for interpr1.cxx:

Go to the source code of this file.

Functions

static void lcl_storeJumpMatResult (const ScMatrix *pMat, ScJumpMatrix *pJumpMat, SCSIZE nC, SCSIZE nR)
 Store a matrix value in another matrix in the context of that other matrix is the result matrix of a jump matrix. More...
 
static void lcl_AdjustJumpMatrix (ScJumpMatrix *pJumpM, SCSIZE nParmCols, SCSIZE nParmRows)
 
static bool lcl_FormatHasNegColor (const SvNumberformat *pFormat)
 
static bool lcl_FormatHasOpenPar (const SvNumberformat *pFormat)
 
static bool lcl_ScInterpreter_IsPrintable (sal_uInt32 nCodePoint)
 
static OUString lcl_convertIntoHalfWidth (const OUString &rStr)
 
static OUString lcl_convertIntoFullWidth (const OUString &rStr)
 
static bool lcl_IsTableStructuredRef (const OUString &sRefStr, sal_Int32 &nIndex)
 
static bool IsDBCS (sal_Unicode currentChar)
 
static sal_Int32 lcl_getLengthB (std::u16string_view str, sal_Int32 nPos)
 
static sal_Int32 getLengthB (std::u16string_view str)
 
static OUString lcl_RightB (const OUString &rStr, sal_Int32 n)
 
static OUString lcl_LeftB (const OUString &rStr, sal_Int32 n)
 
static bool MayBeRegExp (std::u16string_view rStr)
 
static bool MayBeWildcard (std::u16string_view rStr)
 
static bool lcl_LookupQuery (ScAddress &o_rResultPos, ScDocument &rDoc, ScInterpreterContext &rContext, const ScQueryParam &rParam, const ScQueryEntry &rEntry, const ScFormulaCell *cell, const ScComplexRefData *refData)
 
static SCROW lcl_getPrevRowWithEmptyValueLookup (const ScLookupCache &rCache, const ScLookupCache::QueryCriteria &rCriteria, const ScQueryParam &rParam)
 

Variables

const sal_uInt64 n2power48 = SAL_CONST_UINT64( 281474976710656)
 
const UBlockScript scriptList []
 

Function Documentation

◆ getLengthB()

static sal_Int32 getLengthB ( std::u16string_view  str)
static

◆ IsDBCS()

static bool IsDBCS ( sal_Unicode  currentChar)
static

◆ lcl_AdjustJumpMatrix()

static void lcl_AdjustJumpMatrix ( ScJumpMatrix pJumpM,
SCSIZE  nParmCols,
SCSIZE  nParmRows 
)
static

◆ lcl_convertIntoFullWidth()

static OUString lcl_convertIntoFullWidth ( const OUString &  rStr)
static

◆ lcl_convertIntoHalfWidth()

static OUString lcl_convertIntoHalfWidth ( const OUString &  rStr)
static

◆ lcl_FormatHasNegColor()

static bool lcl_FormatHasNegColor ( const SvNumberformat pFormat)
static

Definition at line 2233 of file interpr1.cxx.

References SvNumberformat::GetColor().

Referenced by ScInterpreter::ScCell(), and ScInterpreter::ScCellExternal().

◆ lcl_FormatHasOpenPar()

static bool lcl_FormatHasOpenPar ( const SvNumberformat pFormat)
static

◆ lcl_getLengthB()

static sal_Int32 lcl_getLengthB ( std::u16string_view  str,
sal_Int32  nPos 
)
static

Definition at line 9302 of file interpr1.cxx.

References index, IsDBCS(), length, and nPos.

Referenced by getLengthB(), ScInterpreter::ScFindB(), and ScInterpreter::ScSearchB().

◆ lcl_getPrevRowWithEmptyValueLookup()

static SCROW lcl_getPrevRowWithEmptyValueLookup ( const ScLookupCache rCache,
const ScLookupCache::QueryCriteria rCriteria,
const ScQueryParam rParam 
)
static

◆ lcl_IsTableStructuredRef()

static bool lcl_IsTableStructuredRef ( const OUString &  sRefStr,
sal_Int32 &  nIndex 
)
static

Definition at line 8244 of file interpr1.cxx.

References ScGlobal::FindUnquoted(), and nIndex.

Referenced by ScInterpreter::ScIndirect().

◆ lcl_LeftB()

static OUString lcl_LeftB ( const OUString &  rStr,
sal_Int32  n 
)
static

Definition at line 9376 of file interpr1.cxx.

References aBuf, getLengthB(), index, IsDBCS(), and n.

Referenced by ScInterpreter::ScLeftB(), ScInterpreter::ScMidB(), and ScInterpreter::ScReplaceB().

◆ lcl_LookupQuery()

static bool lcl_LookupQuery ( ScAddress o_rResultPos,
ScDocument rDoc,
ScInterpreterContext rContext,
const ScQueryParam rParam,
const ScQueryEntry rEntry,
const ScFormulaCell cell,
const ScComplexRefData refData 
)
static

◆ lcl_RightB()

static OUString lcl_RightB ( const OUString &  rStr,
sal_Int32  n 
)
static

◆ lcl_ScInterpreter_IsPrintable()

static bool lcl_ScInterpreter_IsPrintable ( sal_uInt32  nCodePoint)
static

Definition at line 3509 of file interpr1.cxx.

Referenced by ScInterpreter::ScClean().

◆ lcl_storeJumpMatResult()

static void lcl_storeJumpMatResult ( const ScMatrix pMat,
ScJumpMatrix pJumpMat,
SCSIZE  nC,
SCSIZE  nR 
)
static

Store a matrix value in another matrix in the context of that other matrix is the result matrix of a jump matrix.

All arguments must be valid and are not checked.

Definition at line 231 of file interpr1.cxx.

References ScMatrix::GetDouble(), ScMatrix::GetString(), ScMatrix::IsEmpty(), ScMatrix::IsValue(), ScJumpMatrix::PutResultDouble(), ScJumpMatrix::PutResultEmpty(), and ScJumpMatrix::PutResultString().

Referenced by ScInterpreter::JumpMatrix(), and ScInterpreter::ScIfError().

◆ MayBeRegExp()

static bool MayBeRegExp ( std::u16string_view  rStr)
static

Definition at line 10163 of file interpr1.cxx.

References u.

Referenced by ScInterpreter::DetectSearchType().

◆ MayBeWildcard()

static bool MayBeWildcard ( std::u16string_view  rStr)
static

Definition at line 10172 of file interpr1.cxx.

References u.

Referenced by ScInterpreter::DetectSearchType().

Variable Documentation

◆ n2power48

const sal_uInt64 n2power48 = SAL_CONST_UINT64( 281474976710656)

◆ scriptList

const UBlockScript scriptList[]
Initial value:
= {
{UBLOCK_HANGUL_JAMO, UBLOCK_HANGUL_JAMO},
{UBLOCK_CJK_RADICALS_SUPPLEMENT, UBLOCK_HANGUL_SYLLABLES},
{UBLOCK_CJK_COMPATIBILITY_IDEOGRAPHS,UBLOCK_CJK_RADICALS_SUPPLEMENT },
{UBLOCK_IDEOGRAPHIC_DESCRIPTION_CHARACTERS,UBLOCK_CJK_COMPATIBILITY_IDEOGRAPHS},
{UBLOCK_CJK_COMPATIBILITY_FORMS, UBLOCK_CJK_COMPATIBILITY_FORMS},
{UBLOCK_HALFWIDTH_AND_FULLWIDTH_FORMS, UBLOCK_HALFWIDTH_AND_FULLWIDTH_FORMS},
{UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B, UBLOCK_CJK_COMPATIBILITY_IDEOGRAPHS_SUPPLEMENT},
{UBLOCK_CJK_STROKES, UBLOCK_CJK_STROKES}
}

Definition at line 9277 of file interpr1.cxx.

Referenced by IsDBCS().