]> git.lyx.org Git - lyx.git/blobdiff - src/tex2lyx/Parser.h
tex2lyx: update a command
[lyx.git] / src / tex2lyx / Parser.h
index 63c1fcaf42d4cde5cb718eac29c5574911fd3a98..c0c5685bb83fc449cf2567c39f00206b38fb3629 100644 (file)
@@ -107,6 +107,10 @@ private:
 
 std::ostream & operator<<(std::ostream & os, Token const & t);
 
+#ifdef FILEDEBUG
+extern void debugToken(std::ostream & os, Token const & t, unsigned int flags);
+#endif
+
 
 /*!
  * Actual parser class
@@ -166,10 +170,10 @@ public:
         */
        std::string getArg(char left, char right);
        /*!
-        * \returns getFullArg('[', ']') including the brackets or the
-        * empty string if there is no such argument.
+        * Like getOpt(), but distinguishes between a missing argument ""
+        * and an empty argument "[]".
         */
-       std::string getFullOpt();
+       std::string getFullOpt(bool keepws = false);
        /*!
         * \returns getArg('[', ']') including the brackets or the
         * empty string if there is no such argument.
@@ -181,10 +185,6 @@ public:
         * during .tex export, thus creating an invalid command.
         */
        std::string getOpt(bool keepws = false);
-       /*!
-        * the same as getOpt but without the brackets
-        */
-       std::string getOptContent();
        /*!
         * \returns getFullArg('(', ')') including the parentheses or the
         * empty string if there is no such argument.
@@ -196,6 +196,19 @@ public:
         * is parsed but not returned.
         */
        std::string const verbatimEnvironment(std::string const & name);
+       /*
+        * The same as verbatimEnvironment(std::string const & name) but
+        * \begin and \end commands inside the name environment are not parsed.
+        * This function is designed to parse verbatim environments.
+        */
+       std::string const plainEnvironment(std::string const & name);
+       /*
+        * Basically the same as plainEnvironment(std::string const & name) but
+        * instead of \begin and \end commands the parsing is started/stopped
+        * at given characters.
+        * This function is designed to parse verbatim commands.
+        */
+       std::string const plainCommand(char left, char right, std::string const & name);
        /*!
         * Returns the character of the current token and increments
         * the token position.
@@ -213,6 +226,8 @@ public:
        Token const curr_token() const;
        /// The next token.
        Token const next_token();
+       /// The next but one token.
+       Token const next_next_token();
        /// Make the next token current and return that.
        Token const get_token();
        /// \return whether the current token starts a new paragraph