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 *pDataIgoreCase)
 
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   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 ( )
inline

Definition at line 142 of file compiler.hxx.

ScRawToken::~ScRawToken ( )
inlineprivate

Definition at line 144 of file compiler.hxx.

Member Function Documentation

FormulaToken * ScRawToken::CreateToken ( ScSheetLimits rLimits) const
OpCode ScRawToken::GetOpCode ( ) const
inline

Definition at line 147 of file compiler.hxx.

References eOp.

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

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

only delete via Delete()

Definition at line 146 of file compiler.hxx.

References eType.

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 337 of file token.cxx.

References eType, formula::svDoubleRef, formula::svExternalDoubleRef, formula::svExternalSingleRef, and formula::svSingleRef.

Referenced by ScCompiler::NextNewToken().

void ScRawToken::NewOpCode ( OpCode  e)
inline

Definition at line 148 of file compiler.hxx.

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

void ScRawToken::SetDouble ( double  fVal)

Definition at line 277 of file token.cxx.

References eType, nValue, ocPush, and formula::svDouble.

Referenced by ScCompiler::IsValue().

void ScRawToken::SetDoubleReference ( const ScComplexRefData rRef)

Definition at line 270 of file token.cxx.

References eType, ocPush, and formula::svDoubleRef.

Referenced by ScCompiler::IsDoubleReference().

void ScRawToken::SetErrorConstant ( FormulaError  nErr)

Definition at line 284 of file token.cxx.

References eType, ocPush, and formula::svError.

Referenced by ScCompiler::IsErrorConstant().

void ScRawToken::SetExternal ( const OUString &  rStr)

Definition at line 330 of file token.cxx.

References eType, ocExternal, and formula::svExternal.

Referenced by ScCompiler::IsMacro(), and ScCompiler::IsOpCode().

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

Definition at line 311 of file token.cxx.

References eType, ocPush, and formula::svExternalDoubleRef.

Referenced by ScCompiler::IsDoubleReference().

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

Definition at line 321 of file token.cxx.

References eType, ocPush, and formula::svExternalName.

Referenced by ScCompiler::IsExternalNamedRange().

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

Definition at line 300 of file token.cxx.

References eType, ocPush, and formula::svExternalSingleRef.

Referenced by ScCompiler::IsSingleReference().

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

Definition at line 291 of file token.cxx.

References eType, name, ocName, and formula::svIndex.

Referenced by ScCompiler::IsDBRange(), and ScCompiler::IsNamedRange().

void ScRawToken::SetOpCode ( OpCode  eCode)
void ScRawToken::SetSingleReference ( const ScSingleRefData rRef)
void ScRawToken::SetString ( rtl_uString *  pData,
rtl_uString *  pDataIgoreCase 
)

Definition at line 253 of file token.cxx.

References eType, ocPush, and formula::svString.

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

Friends And Related Function Documentation

friend class ScCompiler
friend

Definition at line 102 of file compiler.hxx.

friend class ScTokenArray
friend

Definition at line 105 of file compiler.hxx.

Member Data Documentation

union { ... }
ScComplexRefData ScRawToken::aRef

Definition at line 115 of file compiler.hxx.

sal_uInt8 ScRawToken::cByte

Definition at line 112 of file compiler.hxx.

formula::ParamClass ScRawToken::eInForceArray

Definition at line 113 of file compiler.hxx.

ScTableRefToken::Item ScRawToken::eItem

Definition at line 129 of file compiler.hxx.

OpCode ScRawToken::eOp
formula::StackVar ScRawToken::eType

Definition at line 107 of file compiler.hxx.

Referenced by GetType().

struct { ... } ScRawToken::extname
struct { ... } ScRawToken::extref
OUString ScRawToken::maExternalName

Definition at line 139 of file compiler.hxx.

rtl_uString* ScRawToken::mpData

Definition at line 132 of file compiler.hxx.

rtl_uString* ScRawToken::mpDataIgnoreCase

Definition at line 133 of file compiler.hxx.

struct { ... } ScRawToken::name
FormulaError ScRawToken::nError

Definition at line 136 of file compiler.hxx.

sal_uInt16 ScRawToken::nFileId

Definition at line 117 of file compiler.hxx.

sal_uInt16 ScRawToken::nIndex

Definition at line 125 of file compiler.hxx.

short ScRawToken::nJump[FORMULA_MAXJUMPCOUNT+1]

Definition at line 137 of file compiler.hxx.

sal_Int16 ScRawToken::nSheet

Definition at line 124 of file compiler.hxx.

double ScRawToken::nValue

Definition at line 110 of file compiler.hxx.

ScMatrix* ScRawToken::pMat

Definition at line 135 of file compiler.hxx.

struct { ... } ScRawToken::sbyte
struct { ... } ScRawToken::sharedstring
struct { ... } ScRawToken::table

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