Changeset 200 in dev


Ignore:
Timestamp:
Jul 2, 2007, 9:55:12 AM (17 years ago)
Author:
dai_9181
Message:
 
Location:
trunk/jenga/include/smoothie
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/jenga/include/smoothie/Class.h

    r192 r200  
    5151    ClassType classType;
    5252
    53     bool isReady;
    54 
    5553    // importされている名前空間
    5654    NamespaceScopesCollection importedNamespaces;
     
    7674    // 静的メソッド
    7775    Methods staticMethods;
     76
     77
     78    // XMLシリアライズ用
     79private:
     80    friend class boost::serialization::access;
     81    template<class Archive> void serialize(Archive& ar, const unsigned int version)
     82    {
     83        ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP( Prototype );
     84        ar & BOOST_SERIALIZATION_NVP( classType );
     85        ar & BOOST_SERIALIZATION_NVP( importedNamespaces );
     86        //ar & BOOST_SERIALIZATION_NVP( interfaces );
     87        ar & BOOST_SERIALIZATION_NVP( blittableType );
     88        //ar & BOOST_SERIALIZATION_NVP( dynamicMembers );
     89        //ar & BOOST_SERIALIZATION_NVP( staticMembers );
     90        //ar & BOOST_SERIALIZATION_NVP( methods );
     91        ar & BOOST_SERIALIZATION_NVP( ConstructorMemberSubIndex );
     92        ar & BOOST_SERIALIZATION_NVP( DestructorMemberSubIndex );
     93        ar & BOOST_SERIALIZATION_NVP( vtblNum );
     94        //ar & BOOST_SERIALIZATION_NVP( staticMethods );
     95    }
     96
     97
     98    bool isReady;
    7899
    79100public:
     
    264285    //線形リスト用
    265286    CClass *pobj_NextClass;
    266 
    267     // XMLシリアライズ用
    268 private:
    269     friend class boost::serialization::access;
    270     template<class Archive> void serialize(Archive& ar, const unsigned int version)
    271     {
    272         ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP( Prototype );
    273         ar & BOOST_SERIALIZATION_NVP( classType );
    274     }
    275287
    276288
  • trunk/jenga/include/smoothie/Namespace.h

    r194 r200  
    55#include <boost/foreach.hpp>
    66
     7#include <jenga/include/common/BoostXmlSupport.h>
     8
    79using namespace std;
    810
    911class NamespaceScopes : public vector<string>
    1012{
     13    // XMLシリアライズ用
     14private:
     15    friend class boost::serialization::access;
     16    template<class Archive> void serialize(Archive& ar, const unsigned int version)
     17    {
     18        ar & boost::serialization::make_nvp("vector_string", boost::serialization::base_object<vector<string>>(*this));
     19    }
     20
     21
    1122public:
    1223    NamespaceScopes(){}
     
    7384class NamespaceScopesCollection : public vector<NamespaceScopes>
    7485{
     86    // XMLシリアライズ用
     87private:
     88    friend class boost::serialization::access;
     89    template<class Archive> void serialize(Archive& ar, const unsigned int version)
     90    {
     91        ar & boost::serialization::make_nvp("vector_NamespaceScopes", boost::serialization::base_object<vector<NamespaceScopes>>(*this));
     92    }
     93
    7594public:
    7695    bool IsExist( const NamespaceScopes &namespaceScopes ) const
  • trunk/jenga/include/smoothie/Prototype.h

    r192 r200  
    2525private:
    2626    mutable bool isUsing;
     27
     28
     29    // XMLシリアライズ用
     30private:
     31    friend class boost::serialization::access;
     32    template<class Archive> void serialize(Archive& ar, const unsigned int version)
     33    {
     34        ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP( Symbol );
     35    }
     36
    2737
    2838public:
     
    6474        isUsing = true;
    6575    }
    66 
    67     // XMLシリアライズ用
    68 private:
    69     friend class boost::serialization::access;
    70     template<class Archive> void serialize(Archive& ar, const unsigned int version)
    71     {
    72         ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP( Symbol );
    73     }
    74 
    7576};
    7677
  • trunk/jenga/include/smoothie/Symbol.h

    r190 r200  
    1414    NamespaceScopes namespaceScopes;
    1515    string name;
     16
     17    // XMLシリアライズ用
     18private:
     19    friend class boost::serialization::access;
     20    template<class Archive> void serialize(Archive& ar, const unsigned int version)
     21    {
     22        ar & BOOST_SERIALIZATION_NVP( namespaceScopes );
     23        ar & BOOST_SERIALIZATION_NVP( name );
     24    }
     25
    1626public:
    1727    Symbol( const NamespaceScopes &namespaceScopes, const string &name )
     
    3444        return name;
    3545    }
    36 
    37 private:
    38     friend class boost::serialization::access;
    39     template<class Archive> void serialize(Archive& ar, const unsigned int version)
    40     {
    41         //ar & BOOST_SERIALIZATION_NVP( namespaceScopes );
    42         ar & BOOST_SERIALIZATION_NVP( name );
    43     }
    4446};
  • trunk/jenga/include/smoothie/Type.h

    r197 r200  
    66#include <boost/foreach.hpp>
    77
     8#include <jenga/include/common/BoostXmlSupport.h>
     9
    810#include <windows.h>
    9 
    1011#include "BasicFixed.h"
    1112
     
    1819        const CClass *pClass;
    1920    };
     21
     22    // XMLシリアライズ用
     23private:
     24    friend class boost::serialization::access;
     25    template<class Archive> void serialize(Archive& ar, const unsigned int version)
     26    {
     27        ar & BOOST_SERIALIZATION_NVP( basicType );
     28        if( HasMember() )
     29        {
     30            ar & boost::serialization::make_nvp("pClass", const_cast<CClass *&>(pClass));
     31        }
     32        else
     33        {
     34            ar & BOOST_SERIALIZATION_NVP( index );
     35        }
     36    }
    2037
    2138public:
Note: See TracChangeset for help on using the changeset viewer.