[Yamato-svn] [yamato-svn] [5] r3への追加

Back to archive index

svnno****@sourc***** svnno****@sourc*****
2009年 1月 29日 (木) 17:32:43 JST


Revision: 5
          http://svn.sourceforge.jp/view?root=yamato&view=rev&rev=5
Author:   whiteball
Date:     2009-01-29 17:32:43 +0900 (Thu, 29 Jan 2009)

Log Message:
-----------
r3への追加

Modified Paths:
--------------
    trunk/yamato/ident_manager.h

Modified: trunk/yamato/ident_manager.h
===================================================================
--- trunk/yamato/ident_manager.h	2009-01-29 08:27:24 UTC (rev 4)
+++ trunk/yamato/ident_manager.h	2009-01-29 08:32:43 UTC (rev 5)
@@ -19,12 +19,23 @@
 		};
 	typedef boost::shared_ptr<tag_compare_res_t> compare_res_t;
 	
+	typedef std::vector<PToken> IdentBlock;
+	typedef std::list<IdentBlock> TableElement;
+	struct tag_search_res_t : public tag_compare_res_t
+		{				
+			void SetCmpRes(const compare_res_t& val)
+			{
+				this->cmp_res = val->cmp_res;
+				this->token_num = val->token_num;
+				this->itr = val->itr;
+			}
+			TableElement::iterator insert_itr;
+		};
+	typedef boost::shared_ptr<tag_search_res_t> search_res_t;
+
 class CIdentManager
 	{
 	private:
-		typedef std::vector<PToken> IdentBlock;
-		typedef std::list<IdentBlock> TableElement;
-		
 		boost::scoped_array<boost::scoped_ptr<TableElement> > m_table;
 		boost::shared_ptr<CIdentManager> m_parent;
 		
@@ -33,13 +44,13 @@
 		inline TableElement &GetList(size_t);
 		CIdentManager(const CIdentManager&);
 	public:
-		void RegisterIdentList(std::list<PToken>&);
+		void RegisterIdentList(std::list<PToken>&,bool is_force_dec = true);
 		void RegisterIdent(std::list<PToken>&);
 		void RegisterIdent(PToken);
 		//void RegisterIdent(str_t);
 		
-		compare_res_t SearchIdent(std::list<PToken>::iterator,std::list<PToken>::iterator);
-		compare_res_t SearchIdent(std::list<PToken>&);
+		search_res_t SearchIdent(std::list<PToken>::iterator,std::list<PToken>::iterator);
+		search_res_t SearchIdent(std::list<PToken>&);
 		
 		explicit CIdentManager(boost::shared_ptr<CIdentManager>);
 		~CIdentManager(void);




Yamato-svn メーリングリストの案内
Back to archive index