]> git.lyx.org Git - lyx.git/blobdiff - src/lyxlex_pimpl.h
The Gtk patch.
[lyx.git] / src / lyxlex_pimpl.h
index 1f63abc1115d7fcaa4e93306eb16c7a54e78fce4..c7acd92e7901f88a8d446e1bb9c05cc9e3d13131 100644 (file)
@@ -1,26 +1,29 @@
 // -*- C++ -*-
+/**
+ * \file lyxlex_pimpl.h
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
+ *
+ * \author Lars Gullik Bjønnes
+ *
+ * Full author contact details are available in file CREDITS.
+ */
 
 #ifndef LYXLEX_PIMPL_H
 #define LYXLEX_PIMPL_H
 
-#include <fstream>
-#include <stack>
-#include <boost/utility.hpp>
-
 #include "lyxlex.h"
 
-#ifdef __GNUG__
-#pragma interface
-#endif
+#include "support/gzstream.h"
+
+#include <boost/utility.hpp>
+
+#include <fstream>
+#include <stack>
+#include <vector>
 
 ///
 struct LyXLex::Pimpl : boost::noncopyable {
-       ///
-       enum {
-               ///
-               LEX_MAX_BUFF = 2048
-       };
-
        ///
        Pimpl(keyword_item * tab, int num);
        ///
@@ -51,8 +54,11 @@ struct LyXLex::Pimpl : boost::noncopyable {
        bool nextToken();
        ///
        void pushToken(string const &);
-       /// fb__ is only used to open files, the stream is accessed through is
+       /// fb__ is only used to open files, the stream is accessed through is.
        std::filebuf fb__;
+       /// gz__ is only used to open files, the stream is accessed through is.
+       gz::gzstreambuf gz__;
+
        /// the stream that we use.
        std::istream is;
        ///
@@ -62,7 +68,7 @@ struct LyXLex::Pimpl : boost::noncopyable {
        ///
        int no_items;
        ///
-       char buff[LEX_MAX_BUFF];
+       std::vector<char> buff;
        ///
        int status;
        ///