summaryrefslogtreecommitdiff
path: root/rsc/source/parser/rsclex.hxx
diff options
context:
space:
mode:
authorJens-Heiner Rechtien <hr@openoffice.org>2004-09-08 14:34:46 +0000
committerJens-Heiner Rechtien <hr@openoffice.org>2004-09-08 14:34:46 +0000
commit7397d0834f318ebf1ac34243711846676b079270 (patch)
treede7a70a8527fa899bc0d68a5bcbe79d1740a5292 /rsc/source/parser/rsclex.hxx
parentbcad5181c793c82603e5e43f6dc126d511d4ede7 (diff)
INTEGRATION: CWS vcl25 (1.2.94); FILE MERGED
2004/07/15 17:20:52 pl 1.2.94.1: #i31409# do not waste unbeleviable amounts of memory
Diffstat (limited to 'rsc/source/parser/rsclex.hxx')
-rw-r--r--rsc/source/parser/rsclex.hxx27
1 files changed, 18 insertions, 9 deletions
diff --git a/rsc/source/parser/rsclex.hxx b/rsc/source/parser/rsclex.hxx
index b925a119a6bf..f5c29451e129 100644
--- a/rsc/source/parser/rsclex.hxx
+++ b/rsc/source/parser/rsclex.hxx
@@ -2,9 +2,9 @@
*
* $RCSfile: rsclex.hxx,v $
*
- * $Revision: 1.2 $
+ * $Revision: 1.3 $
*
- * last change: $Author: hr $ $Date: 2003-03-26 15:50:46 $
+ * last change: $Author: hr $ $Date: 2004-09-08 15:34:46 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -60,8 +60,21 @@
************************************************************************/
#include <tools/stack.hxx>
-#define MINBUF 256
-#define MAXBUF 256
+#include <hash_set>
+#include <rtl/strbuf.hxx>
+#include <rtl/string.hxx>
+
+// a buffer for unique strings
+class StringContainer
+{
+ std::hash_set< rtl::OString, rtl::OStringHash > m_aStrings;
+public:
+ StringContainer() {}
+ ~StringContainer() {}
+
+ const char* putString( const char* pString );
+};
+
enum MODE_ENUM { MODE_MODELESS, MODE_APPLICATIONMODAL, MODE_SYSTEMMODAL };
@@ -81,9 +94,6 @@ struct RSCHEADER {
RscExpType nName2;
};
-DECLARE_STACK( RscCharStack, char * )
-void PutStringBack( char * pStr );
-
/************** O b j e c t s t a c k ************************************/
struct Node {
Node* pPrev;
@@ -144,10 +154,9 @@ int yylex( void );
class RscTypCont;
class RscFileInst;
-class RscCharStack;
extern RscTypCont* pTC;
extern RscFileInst * pFI;
-extern RscCharStack * pCS;
extern RscExpression * pExp;
extern ObjectStack S;
+extern StringContainer* pStringContainer;