summaryrefslogtreecommitdiff
path: root/starmath/inc/parse.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'starmath/inc/parse.hxx')
-rw-r--r--starmath/inc/parse.hxx250
1 files changed, 125 insertions, 125 deletions
diff --git a/starmath/inc/parse.hxx b/starmath/inc/parse.hxx
index 5018340b5a01..f549abf4c285 100644
--- a/starmath/inc/parse.hxx
+++ b/starmath/inc/parse.hxx
@@ -41,87 +41,87 @@ class SmDocShell;
// TokenGroups
-#define TGOPER 0x00000001
-#define TGRELATION 0x00000002
-#define TGSUM 0x00000004
-#define TGPRODUCT 0x00000008
-#define TGUNOPER 0x00000010
-#define TGPOWER 0x00000020
-#define TGATTRIBUT 0x00000040
-#define TGALIGN 0x00000080
-#define TGFUNCTION 0x00000100
-#define TGBLANK 0x00000200
-#define TGLBRACES 0x00000400
-#define TGRBRACES 0x00000800
-#define TGCOLOR 0x00001000
-#define TGFONT 0x00002000
-#define TGSTANDALONE 0x00004000
-#define TGDISCARDED 0x00008000
-#define TGLIMIT 0x00010000
-#define TGFONTATTR 0x00020000
+#define TGOPER 0x00000001
+#define TGRELATION 0x00000002
+#define TGSUM 0x00000004
+#define TGPRODUCT 0x00000008
+#define TGUNOPER 0x00000010
+#define TGPOWER 0x00000020
+#define TGATTRIBUT 0x00000040
+#define TGALIGN 0x00000080
+#define TGFUNCTION 0x00000100
+#define TGBLANK 0x00000200
+#define TGLBRACES 0x00000400
+#define TGRBRACES 0x00000800
+#define TGCOLOR 0x00001000
+#define TGFONT 0x00002000
+#define TGSTANDALONE 0x00004000
+#define TGDISCARDED 0x00008000
+#define TGLIMIT 0x00010000
+#define TGFONTATTR 0x00020000
enum SmTokenType
{
- TEND, TLGROUP, TRGROUP, TLPARENT, TRPARENT,
- TLBRACKET, TRBRACKET, TPLUS, TMINUS, TMULTIPLY,
- TDIVIDEBY, TASSIGN, TPOUND, TSPECIAL, TSLASH,
- TBACKSLASH, TBLANK, TSBLANK, TRSUB, TRSUP,
- TCSUB, TCSUP, TLSUB, TLSUP, TGT,
- TLT, TAND, TOR, TINTERSECT, TUNION,
- TNEWLINE, TBINOM, TFROM, TTO, TINT,
- TSUM, TOPER, TABS, TSQRT, TFACT,
- TNROOT, TOVER, TTIMES, TGE, TLE,
- TGG, TLL, TDOTSAXIS, TDOTSLOW, TDOTSVERT,
- TDOTSDIAG, TDOTSUP, TDOTSDOWN, TACUTE, TBAR,
- TBREVE, TCHECK, TCIRCLE, TDOT, TDDOT,
- TDDDOT, TGRAVE, THAT, TTILDE, TVEC,
- TUNDERLINE, TOVERLINE, TOVERSTRIKE, TITALIC, TNITALIC,
- TBOLD, TNBOLD, TPHANTOM, TFONT, TSIZE,
- TCOLOR, TALIGNL, TALIGNC, TALIGNR, TLEFT,
- TRIGHT, TLANGLE, TLBRACE, TLLINE, TLDLINE,
- TLCEIL, TLFLOOR, TNONE, TMLINE, TRANGLE,
- TRBRACE, TRLINE, TRDLINE, TRCEIL, TRFLOOR,
- TSIN, TCOS, TTAN, TCOT, TFUNC,
- TSTACK, TMATRIX, TMATFORM, TDPOUND, TPLACE,
- TTEXT, TNUMBER, TCHARACTER, TIDENT, TNEQ,
- TEQUIV, TDEF, TPROP, TSIM, TSIMEQ,
- TAPPROX, TPARALLEL, TORTHO, TIN, TNOTIN,
- TSUBSET, TSUBSETEQ, TSUPSET, TSUPSETEQ, TPLUSMINUS,
- TMINUSPLUS, TOPLUS, TOMINUS, TDIV, TOTIMES,
- TODIVIDE, TTRANSL, TTRANSR, TIINT, TIIINT,
- TLINT, TLLINT, TLLLINT, TPROD, TCOPROD,
- TFORALL, TEXISTS, TLIM, TNABLA, TTOWARD,
- TSINH, TCOSH, TTANH, TCOTH, TASIN,
- TACOS, TATAN, TLN, TLOG, TUOPER,
- TBOPER, TBLACK, TWHITE, TRED, TGREEN,
- TBLUE, TCYAN, TMAGENTA, TYELLOW, TFIXED,
- TSANS, TSERIF, TPOINT, TASINH, TACOSH,
- TATANH, TACOTH, TACOT, TEXP, TCDOT,
- TODOT, TLESLANT, TGESLANT, TNSUBSET, TNSUPSET,
- TNSUBSETEQ, TNSUPSETEQ, TPARTIAL, TNEG, TNI,
- TBACKEPSILON, TALEPH, TIM, TRE, TWP,
- TEMPTYSET, TINFINITY, TESCAPE, TLIMSUP, TLIMINF,
- TNDIVIDES, TDRARROW, TDLARROW, TDLRARROW, TUNDERBRACE,
- TOVERBRACE, TCIRC, TTOP, THBAR, TLAMBDABAR,
- TLEFTARROW, TRIGHTARROW, TUPARROW, TDOWNARROW, TDIVIDES,
- TNDIBVIDES, TSETN, TSETZ, TSETQ, TSETR,
- TSETC, TWIDEVEC, TWIDETILDE, TWIDEHAT, TWIDESLASH,
- TWIDEBACKSLASH, TLDBRACKET, TRDBRACKET, TNOSPACE,
- TUNKNOWN, TDEBUG
+ TEND, TLGROUP, TRGROUP, TLPARENT, TRPARENT,
+ TLBRACKET, TRBRACKET, TPLUS, TMINUS, TMULTIPLY,
+ TDIVIDEBY, TASSIGN, TPOUND, TSPECIAL, TSLASH,
+ TBACKSLASH, TBLANK, TSBLANK, TRSUB, TRSUP,
+ TCSUB, TCSUP, TLSUB, TLSUP, TGT,
+ TLT, TAND, TOR, TINTERSECT, TUNION,
+ TNEWLINE, TBINOM, TFROM, TTO, TINT,
+ TSUM, TOPER, TABS, TSQRT, TFACT,
+ TNROOT, TOVER, TTIMES, TGE, TLE,
+ TGG, TLL, TDOTSAXIS, TDOTSLOW, TDOTSVERT,
+ TDOTSDIAG, TDOTSUP, TDOTSDOWN, TACUTE, TBAR,
+ TBREVE, TCHECK, TCIRCLE, TDOT, TDDOT,
+ TDDDOT, TGRAVE, THAT, TTILDE, TVEC,
+ TUNDERLINE, TOVERLINE, TOVERSTRIKE, TITALIC, TNITALIC,
+ TBOLD, TNBOLD, TPHANTOM, TFONT, TSIZE,
+ TCOLOR, TALIGNL, TALIGNC, TALIGNR, TLEFT,
+ TRIGHT, TLANGLE, TLBRACE, TLLINE, TLDLINE,
+ TLCEIL, TLFLOOR, TNONE, TMLINE, TRANGLE,
+ TRBRACE, TRLINE, TRDLINE, TRCEIL, TRFLOOR,
+ TSIN, TCOS, TTAN, TCOT, TFUNC,
+ TSTACK, TMATRIX, TMATFORM, TDPOUND, TPLACE,
+ TTEXT, TNUMBER, TCHARACTER, TIDENT, TNEQ,
+ TEQUIV, TDEF, TPROP, TSIM, TSIMEQ,
+ TAPPROX, TPARALLEL, TORTHO, TIN, TNOTIN,
+ TSUBSET, TSUBSETEQ, TSUPSET, TSUPSETEQ, TPLUSMINUS,
+ TMINUSPLUS, TOPLUS, TOMINUS, TDIV, TOTIMES,
+ TODIVIDE, TTRANSL, TTRANSR, TIINT, TIIINT,
+ TLINT, TLLINT, TLLLINT, TPROD, TCOPROD,
+ TFORALL, TEXISTS, TLIM, TNABLA, TTOWARD,
+ TSINH, TCOSH, TTANH, TCOTH, TASIN,
+ TACOS, TATAN, TLN, TLOG, TUOPER,
+ TBOPER, TBLACK, TWHITE, TRED, TGREEN,
+ TBLUE, TCYAN, TMAGENTA, TYELLOW, TFIXED,
+ TSANS, TSERIF, TPOINT, TASINH, TACOSH,
+ TATANH, TACOTH, TACOT, TEXP, TCDOT,
+ TODOT, TLESLANT, TGESLANT, TNSUBSET, TNSUPSET,
+ TNSUBSETEQ, TNSUPSETEQ, TPARTIAL, TNEG, TNI,
+ TBACKEPSILON, TALEPH, TIM, TRE, TWP,
+ TEMPTYSET, TINFINITY, TESCAPE, TLIMSUP, TLIMINF,
+ TNDIVIDES, TDRARROW, TDLARROW, TDLRARROW, TUNDERBRACE,
+ TOVERBRACE, TCIRC, TTOP, THBAR, TLAMBDABAR,
+ TLEFTARROW, TRIGHTARROW, TUPARROW, TDOWNARROW, TDIVIDES,
+ TNDIBVIDES, TSETN, TSETZ, TSETQ, TSETR,
+ TSETC, TWIDEVEC, TWIDETILDE, TWIDEHAT, TWIDESLASH,
+ TWIDEBACKSLASH, TLDBRACKET, TRDBRACKET, TNOSPACE,
+ TUNKNOWN, TDEBUG
};
struct SmToken
{
// token text
- String aText;
+ String aText;
// token info
SmTokenType eType;
- sal_Unicode cMathChar;
+ sal_Unicode cMathChar;
// parse-help info
- ULONG nGroup;
- USHORT nLevel;
+ ULONG nGroup;
+ USHORT nLevel;
// token position
USHORT nRow;
xub_StrLen nCol;
@@ -137,16 +137,16 @@ struct SmToken
enum SmParseError
{
- PE_NONE, PE_UNEXPECTED_END_OF_INPUT,
- PE_UNEXPECTED_CHAR, PE_UNEXPECTED_TOKEN,
- PE_FUNC_EXPECTED, PE_UNOPER_EXPECTED,
- PE_BINOPER_EXPECTED, PE_SYMBOL_EXPECTED,
- PE_IDENTIFIER_EXPECTED, PE_POUND_EXPECTED,
- PE_COLOR_EXPECTED, PE_LGROUP_EXPECTED,
- PE_RGROUP_EXPECTED, PE_LBRACE_EXPECTED,
- PE_RBRACE_EXPECTED, PE_PARENT_MISMATCH,
- PE_RIGHT_EXPECTED, PE_FONT_EXPECTED,
- PE_SIZE_EXPECTED, PE_DOUBLE_ALIGN,
+ PE_NONE, PE_UNEXPECTED_END_OF_INPUT,
+ PE_UNEXPECTED_CHAR, PE_UNEXPECTED_TOKEN,
+ PE_FUNC_EXPECTED, PE_UNOPER_EXPECTED,
+ PE_BINOPER_EXPECTED, PE_SYMBOL_EXPECTED,
+ PE_IDENTIFIER_EXPECTED, PE_POUND_EXPECTED,
+ PE_COLOR_EXPECTED, PE_LGROUP_EXPECTED,
+ PE_RGROUP_EXPECTED, PE_LBRACE_EXPECTED,
+ PE_RBRACE_EXPECTED, PE_PARENT_MISMATCH,
+ PE_RIGHT_EXPECTED, PE_FONT_EXPECTED,
+ PE_SIZE_EXPECTED, PE_DOUBLE_ALIGN,
PE_DOUBLE_SUBSUPSCRIPT
};
@@ -154,8 +154,8 @@ enum SmParseError
struct SmErrorDesc
{
SmParseError Type;
- SmNode *pNode;
- String Text;
+ SmNode *pNode;
+ String Text;
};
DECLARE_STACK(SmNodeStack, SmNode *)
@@ -175,11 +175,11 @@ enum SmConvert
struct SmTokenTableEntry
{
- const sal_Char* pIdent;
- SmTokenType eType;
- sal_Unicode cMathChar;
- ULONG nGroup;
- USHORT nLevel;
+ const sal_Char* pIdent;
+ SmTokenType eType;
+ sal_Unicode cMathChar;
+ ULONG nGroup;
+ USHORT nLevel;
};
class SmParser
@@ -204,57 +204,57 @@ class SmParser
protected:
#if OSL_DEBUG_LEVEL
- BOOL IsDelimiter( const String &rTxt, xub_StrLen nPos );
+ BOOL IsDelimiter( const String &rTxt, xub_StrLen nPos );
#endif
- void NextToken();
- xub_StrLen GetTokenIndex() const { return nTokenIndex; }
- void Insert(const String &rText, USHORT nPos);
+ void NextToken();
+ xub_StrLen GetTokenIndex() const { return nTokenIndex; }
+ void Insert(const String &rText, USHORT nPos);
void Replace( USHORT nPos, USHORT nLen, const String &rText );
- inline BOOL TokenInGroup(ULONG nGroup);
+ inline BOOL TokenInGroup(ULONG nGroup);
// grammar
- void Table();
- void Line();
- void Expression();
- void Relation();
- void Sum();
- void Product();
- void SubSup(ULONG nActiveGroup);
- void OpSubSup();
- void Power();
- void Blank();
- void Term();
- void Escape();
- void Operator();
- void Oper();
- void UnOper();
- void Align();
- void FontAttribut();
- void Attribut();
- void Font();
- void FontSize();
- void Color();
- void Brace();
- void Bracebody(BOOL bIsLeftRight);
- void Function();
- void Binom();
- void Stack();
- void Matrix();
- void Special();
- void GlyphSpecial();
+ void Table();
+ void Line();
+ void Expression();
+ void Relation();
+ void Sum();
+ void Product();
+ void SubSup(ULONG nActiveGroup);
+ void OpSubSup();
+ void Power();
+ void Blank();
+ void Term();
+ void Escape();
+ void Operator();
+ void Oper();
+ void UnOper();
+ void Align();
+ void FontAttribut();
+ void Attribut();
+ void Font();
+ void FontSize();
+ void Color();
+ void Brace();
+ void Bracebody(BOOL bIsLeftRight);
+ void Function();
+ void Binom();
+ void Stack();
+ void Matrix();
+ void Special();
+ void GlyphSpecial();
// end of grammar
LanguageType GetLanguage() const { return nLang; }
void SetLanguage( LanguageType nNewLang ) { nLang = nNewLang; }
- void Error(SmParseError Error);
+ void Error(SmParseError Error);
public:
SmParser();
/** Parse rBuffer to formula tree */
- SmNode *Parse(const String &rBuffer);
+ SmNode *Parse(const String &rBuffer);
/** Parse rBuffer to formula subtree that constitutes an expression */
SmNode *ParseExpression(const String &rBuffer);
@@ -268,11 +268,11 @@ public:
BOOL IsExportSymbolNames() const { return bExportSymNames; }
void SetExportSymbolNames(BOOL bVal) { bExportSymNames = bVal; }
- USHORT AddError(SmParseError Type, SmNode *pNode);
+ USHORT AddError(SmParseError Type, SmNode *pNode);
- const SmErrorDesc * NextError();
- const SmErrorDesc * PrevError();
- const SmErrorDesc * GetError(USHORT i = 0xFFFF);
+ const SmErrorDesc * NextError();
+ const SmErrorDesc * PrevError();
+ const SmErrorDesc * GetError(USHORT i = 0xFFFF);
static const SmTokenTableEntry* GetTokenTableEntry( const String &rName );
};