LibreOffice Module sc (master) 1
Public Member Functions | Public Attributes | Private Member Functions | Friends | List of all members
ScRawToken Struct Referencefinal

#include <compiler.hxx>

Collaboration diagram for ScRawToken:
[legend]

Public Member Functions

 ScRawToken ()
 
formula::StackVar GetType () const
 only delete via Delete() More...
 
OpCode GetOpCode () const
 
void NewOpCode (OpCode e)
 
void SetOpCode (OpCode eCode)
 
void SetString (rtl_uString *pData, rtl_uString *pDataIgnoreCase)
 
void SetSingleReference (const ScSingleRefData &rRef)
 
void SetDoubleReference (const ScComplexRefData &rRef)
 
void SetDouble (double fVal)
 
void SetErrorConstant (FormulaError nErr)
 
void SetName (sal_Int16 nSheet, sal_uInt16 nIndex)
 
void SetExternalSingleRef (sal_uInt16 nFileId, const OUString &rTabName, const ScSingleRefData &rRef)
 
void SetExternalDoubleRef (sal_uInt16 nFileId, const OUString &rTabName, const ScComplexRefData &rRef)
 
void SetExternalName (sal_uInt16 nFileId, const OUString &rName)
 
void SetExternal (const OUString &rStr)
 
bool IsValidReference (const ScDocument &rDoc) const
 If the token is a non-external reference, determine if the reference is valid. More...
 
formula::FormulaTokenCreateToken (ScSheetLimits &rLimits) const
 

Public Attributes

OpCode eOp
 
formula::StackVar eType
 
union {
   double   nValue
 
   struct {
      sal_uInt8   nCount
 
      sal_Unicode   cChar
 
   }   whitespace
 
   struct {
      sal_uInt8   cByte
 
      formula::ParamClass   eInForceArray
 
   }   sbyte
 
   ScComplexRefData   aRef
 
   struct {
      sal_uInt16   nFileId
 
      ScComplexRefData   aRef
 
   }   extref
 
   struct {
      sal_uInt16   nFileId
 
   }   extname
 
   struct {
      sal_Int16   nSheet
 
      sal_uInt16   nIndex
 
   }   name
 
   struct {
      sal_uInt16   nIndex
 
      ScTableRefToken::Item   eItem
 
   }   table
 
   struct {
      rtl_uString *   mpData
 
      rtl_uString *   mpDataIgnoreCase
 
   }   sharedstring
 
   ScMatrix *   pMat
 
   FormulaError   nError
 
   short   nJump [FORMULA_MAXJUMPCOUNT+1]
 
}; 
 
OUString maExternalName
 

Private Member Functions

 ~ScRawToken ()
 

Friends

class ScCompiler
 
class ScTokenArray
 

Detailed Description

Definition at line 100 of file compiler.hxx.

Constructor & Destructor Documentation

◆ ScRawToken()

ScRawToken::ScRawToken ( )
inline

Definition at line 146 of file compiler.hxx.

◆ ~ScRawToken()

ScRawToken::~ScRawToken ( )
inlineprivate

Definition at line 148 of file compiler.hxx.

Member Function Documentation

◆ CreateToken()

FormulaToken * ScRawToken::CreateToken ( ScSheetLimits rLimits) const

◆ GetOpCode()

OpCode ScRawToken::GetOpCode ( ) const
inline

Definition at line 151 of file compiler.hxx.

References eOp.

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

◆ GetType()

formula::StackVar ScRawToken::GetType ( ) const
inline

only delete via Delete()

Definition at line 150 of file compiler.hxx.

References eType.

Referenced by CreateToken().

◆ IsValidReference()

bool ScRawToken::IsValidReference ( const ScDocument rDoc) const

If the token is a non-external reference, determine if the reference is valid.

If the token is an external reference, return true. Else return false. Used only in ScCompiler::NextNewToken() to preserve non-existing sheet names in otherwise valid references.

Definition at line 335 of file token.cxx.

References aRef, eType, ScComplexRefData::Ref1, svDoubleRef, svExternalDoubleRef, svExternalSingleRef, svSingleRef, ScSingleRefData::Valid(), and ScComplexRefData::Valid().

Referenced by ScCompiler::NextNewToken().

◆ NewOpCode()

void ScRawToken::NewOpCode ( OpCode  e)
inline

Definition at line 152 of file compiler.hxx.

References eOp.

Referenced by ScCompiler::NextNewToken(), and ScCompiler::ParseOpCode().

◆ SetDouble()

void ScRawToken::SetDouble ( double  fVal)

Definition at line 275 of file token.cxx.

References eOp, eType, nValue, ocPush, and svDouble.

Referenced by ScCompiler::ParseValue().

◆ SetDoubleReference()

void ScRawToken::SetDoubleReference ( const ScComplexRefData rRef)

Definition at line 268 of file token.cxx.

References aRef, eOp, eType, ocPush, and svDoubleRef.

Referenced by ScCompiler::ParseDoubleReference().

◆ SetErrorConstant()

void ScRawToken::SetErrorConstant ( FormulaError  nErr)

Definition at line 282 of file token.cxx.

References eOp, eType, nError, ocPush, and svError.

Referenced by ScCompiler::ParseErrorConstant().

◆ SetExternal()

void ScRawToken::SetExternal ( const OUString &  rStr)

Definition at line 328 of file token.cxx.

References eOp, eType, maExternalName, ocExternal, and svExternal.

Referenced by ScCompiler::ParseMacro(), and ScCompiler::ParseOpCode().

◆ SetExternalDoubleRef()

void ScRawToken::SetExternalDoubleRef ( sal_uInt16  nFileId,
const OUString &  rTabName,
const ScComplexRefData rRef 
)

Definition at line 309 of file token.cxx.

References eOp, eType, extref, maExternalName, nFileId, ocPush, and svExternalDoubleRef.

Referenced by ScCompiler::ParseDoubleReference().

◆ SetExternalName()

void ScRawToken::SetExternalName ( sal_uInt16  nFileId,
const OUString &  rName 
)

Definition at line 319 of file token.cxx.

References eOp, eType, extname, maExternalName, nFileId, ocPush, and svExternalName.

Referenced by ScCompiler::ParseExternalNamedRange().

◆ SetExternalSingleRef()

void ScRawToken::SetExternalSingleRef ( sal_uInt16  nFileId,
const OUString &  rTabName,
const ScSingleRefData rRef 
)

Definition at line 298 of file token.cxx.

References eOp, eType, extref, maExternalName, nFileId, ocPush, and svExternalSingleRef.

Referenced by ScCompiler::ParseSingleReference().

◆ SetName()

void ScRawToken::SetName ( sal_Int16  nSheet,
sal_uInt16  nIndex 
)

Definition at line 289 of file token.cxx.

References eOp, eType, name, nIndex, nSheet, ocName, and svIndex.

Referenced by ScCompiler::ParseDBRange(), and ScCompiler::ParseNamedRange().

◆ SetOpCode()

void ScRawToken::SetOpCode ( OpCode  eCode)

◆ SetSingleReference()

void ScRawToken::SetSingleReference ( const ScSingleRefData rRef)

◆ SetString()

void ScRawToken::SetString ( rtl_uString *  pData,
rtl_uString *  pDataIgnoreCase 
)

Definition at line 251 of file token.cxx.

References eOp, eType, ocPush, pData, sharedstring, and svString.

Referenced by ScCompiler::NextNewToken(), and ScCompiler::ParseString().

Friends And Related Function Documentation

◆ ScCompiler

friend class ScCompiler
friend

Definition at line 102 of file compiler.hxx.

◆ ScTokenArray

friend class ScTokenArray
friend

Definition at line 105 of file compiler.hxx.

Member Data Documentation

◆ 

union { ... } ScRawToken::@18

◆ aRef

ScComplexRefData ScRawToken::aRef

◆ cByte

sal_uInt8 ScRawToken::cByte

Definition at line 116 of file compiler.hxx.

Referenced by ScCompiler::NextNewToken().

◆ cChar

sal_Unicode ScRawToken::cChar

Definition at line 113 of file compiler.hxx.

Referenced by ScCompiler::NextNewToken().

◆ eInForceArray

formula::ParamClass ScRawToken::eInForceArray

Definition at line 117 of file compiler.hxx.

◆ eItem

ScTableRefToken::Item ScRawToken::eItem

Definition at line 133 of file compiler.hxx.

◆ eOp

OpCode ScRawToken::eOp

◆ eType

formula::StackVar ScRawToken::eType

◆ 

struct { ... } ScRawToken::extname

Referenced by CreateToken(), and SetExternalName().

◆ 

struct { ... } ScRawToken::extref

◆ maExternalName

OUString ScRawToken::maExternalName

◆ mpData

rtl_uString* ScRawToken::mpData

Definition at line 136 of file compiler.hxx.

◆ mpDataIgnoreCase

rtl_uString* ScRawToken::mpDataIgnoreCase

Definition at line 137 of file compiler.hxx.

◆ 

struct { ... } ScRawToken::name

Referenced by CreateToken(), and SetName().

◆ nCount

sal_uInt8 ScRawToken::nCount

Definition at line 112 of file compiler.hxx.

Referenced by ScCompiler::NextNewToken().

◆ nError

FormulaError ScRawToken::nError

Definition at line 140 of file compiler.hxx.

Referenced by CreateToken(), and SetErrorConstant().

◆ nFileId

sal_uInt16 ScRawToken::nFileId

Definition at line 121 of file compiler.hxx.

Referenced by SetExternalDoubleRef(), SetExternalName(), and SetExternalSingleRef().

◆ nIndex

sal_uInt16 ScRawToken::nIndex

Definition at line 129 of file compiler.hxx.

Referenced by SetName().

◆ nJump

short ScRawToken::nJump[FORMULA_MAXJUMPCOUNT+1]

Definition at line 141 of file compiler.hxx.

Referenced by CreateToken(), and SetOpCode().

◆ nSheet

sal_Int16 ScRawToken::nSheet

Definition at line 128 of file compiler.hxx.

Referenced by SetName().

◆ nValue

double ScRawToken::nValue

Definition at line 110 of file compiler.hxx.

Referenced by CreateToken(), and SetDouble().

◆ pMat

ScMatrix* ScRawToken::pMat

Definition at line 139 of file compiler.hxx.

Referenced by CreateToken().

◆ 

struct { ... } ScRawToken::sbyte

◆ 

struct { ... } ScRawToken::sharedstring

Referenced by CreateToken(), and SetString().

◆ 

struct { ... } ScRawToken::table

Referenced by CreateToken().

◆ 

struct { ... } ScRawToken::whitespace

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