[Groonga-commit] groonga/grnxx at f5d6851 [master] Move #include "grnxx/storage.hpp" from *.hpp to *.cpp.

Back to archive index

susumu.yata null+****@clear*****
Wed May 15 17:30:17 JST 2013


susumu.yata	2013-05-15 17:30:17 +0900 (Wed, 15 May 2013)

  New Revision: f5d6851041903055b6c10678bc2bf7fe0f3e2519
  https://github.com/groonga/grnxx/commit/f5d6851041903055b6c10678bc2bf7fe0f3e2519

  Message:
    Move #include "grnxx/storage.hpp" from *.hpp to *.cpp.

  Modified files:
    lib/grnxx/array/array_1d.cpp
    lib/grnxx/array/array_1d.hpp
    lib/grnxx/array/array_2d.cpp
    lib/grnxx/array/array_2d.hpp
    lib/grnxx/array/array_3d.cpp
    lib/grnxx/array/array_3d.hpp

  Modified: lib/grnxx/array/array_1d.cpp (+13 -9)
===================================================================
--- lib/grnxx/array/array_1d.cpp    2013-05-15 17:14:31 +0900 (199bf4c)
+++ lib/grnxx/array/array_1d.cpp    2013-05-15 17:30:17 +0900 (1fbce3b)
@@ -21,6 +21,7 @@
 #include <new>
 
 #include "grnxx/logger.hpp"
+#include "grnxx/storage.hpp"
 
 namespace grnxx {
 
@@ -38,7 +39,7 @@ Array1DHeader::Array1DHeader(uint64_t value_size, uint64_t page_size)
       page_storage_node_id(STORAGE_INVALID_NODE_ID) {}
 
 Array1D::Array1D()
-    : storage_node_(),
+    : storage_node_id_(STORAGE_INVALID_NODE_ID),
       header_(nullptr),
       page_(nullptr) {}
 
@@ -99,16 +100,18 @@ bool Array1D::unlink(Storage *storage, uint32_t storage_node_id,
 bool Array1D::create_array(Storage *storage, uint32_t storage_node_id,
                            uint64_t value_size, uint64_t page_size,
                            const void *default_value, FillPage fill_page) {
-  storage_node_ = storage->create_node(storage_node_id, sizeof(Array1DHeader));
-  if (!storage_node_) {
+  StorageNode storage_node =
+      storage->create_node(storage_node_id, sizeof(Array1DHeader));
+  if (!storage_node) {
     return false;
   }
-  header_ = static_cast<Array1DHeader *>(storage_node_.body());
+  storage_node_id_ = storage_node.id();
+  header_ = static_cast<Array1DHeader *>(storage_node.body());
   *header_ = Array1DHeader(value_size, page_size);
   StorageNode page_node =
-      storage->create_node(storage_node_.id(), value_size * page_size);
+      storage->create_node(storage_node_id_, value_size * page_size);
   if (!page_node) {
-    storage->unlink_node(storage_node_.id());
+    storage->unlink_node(storage_node_id_);
     return false;
   }
   header_->page_storage_node_id = page_node.id();
@@ -121,11 +124,12 @@ bool Array1D::create_array(Storage *storage, uint32_t storage_node_id,
 
 bool Array1D::open_array(Storage *storage, uint32_t storage_node_id,
                          uint64_t value_size, uint64_t page_size) {
-  storage_node_ = storage->open_node(storage_node_id);
-  if (!storage_node_) {
+  StorageNode storage_node = storage->open_node(storage_node_id);
+  if (!storage_node) {
     return false;
   }
-  header_ = static_cast<Array1DHeader *>(storage_node_.body());
+  storage_node_id_ = storage_node.id();
+  header_ = static_cast<Array1DHeader *>(storage_node.body());
   if (header_->value_size != value_size) {
     GRNXX_ERROR() << "parameter conflict: value_size = " << value_size
                   << ", stored_value_size = " << header_->value_size;

  Modified: lib/grnxx/array/array_1d.hpp (+4 -3)
===================================================================
--- lib/grnxx/array/array_1d.hpp    2013-05-15 17:14:31 +0900 (1d5702c)
+++ lib/grnxx/array/array_1d.hpp    2013-05-15 17:30:17 +0900 (793c151)
@@ -19,11 +19,12 @@
 #define GRNXX_ARRAY_ARRAY_1D_HPP
 
 #include "grnxx/features.hpp"
-#include "grnxx/storage.hpp"
 #include "grnxx/types.hpp"
 
 namespace grnxx {
 
+class Storage;
+
 struct Array1DHeader;
 
 class Array1D {
@@ -45,7 +46,7 @@ class Array1D {
                      uint64_t value_size, uint64_t page_size);
 
   uint32_t storage_node_id() const {
-    return storage_node_.id();
+    return storage_node_id_;
   }
 
   template <typename T>
@@ -54,7 +55,7 @@ class Array1D {
   }
 
  private:
-  StorageNode storage_node_;
+  uint32_t storage_node_id_;
   Array1DHeader *header_;
   void *page_;
 

  Modified: lib/grnxx/array/array_2d.cpp (+14 -10)
===================================================================
--- lib/grnxx/array/array_2d.cpp    2013-05-15 17:14:31 +0900 (f141fc2)
+++ lib/grnxx/array/array_2d.cpp    2013-05-15 17:30:17 +0900 (d4e2bdc)
@@ -23,6 +23,7 @@
 #include "grnxx/exception.hpp"
 #include "grnxx/lock.hpp"
 #include "grnxx/logger.hpp"
+#include "grnxx/storage.hpp"
 
 namespace grnxx {
 
@@ -49,7 +50,7 @@ Array2DHeader::Array2DHeader(uint64_t value_size, uint64_t page_size,
 
 Array2D::Array2D()
     : storage_(nullptr),
-      storage_node_(),
+      storage_node_id_(STORAGE_INVALID_NODE_ID),
       header_(nullptr),
       default_value_(nullptr),
       fill_page_(nullptr),
@@ -129,11 +130,13 @@ bool Array2D::create_array(Storage *storage, uint32_t storage_node_id,
   if (default_value) {
     storage_node_size += value_size;
   }
-  storage_node_ = storage->create_node(storage_node_id, storage_node_size);
-  if (!storage_node_) {
+  StorageNode storage_node =
+      storage->create_node(storage_node_id, storage_node_size);
+  if (!storage_node) {
     return false;
   }
-  header_ = static_cast<Array2DHeader *>(storage_node_.body());
+  storage_node_id_ = storage_node.id();
+  header_ = static_cast<Array2DHeader *>(storage_node.body());
   *header_ = Array2DHeader(value_size, page_size, table_size, default_value);
   if (default_value) {
     default_value_ = header_ + 1;
@@ -141,9 +144,9 @@ bool Array2D::create_array(Storage *storage, uint32_t storage_node_id,
     fill_page_ = fill_page;
   }
   StorageNode table_node =
-      storage->create_node(storage_node_.id(), sizeof(uint32_t) * table_size);
+      storage->create_node(storage_node_id_, sizeof(uint32_t) * table_size);
   if (!table_node) {
-    storage->unlink_node(storage_node_.id());
+    storage->unlink_node(storage_node_id_);
     return false;
   }
   header_->table_storage_node_id = table_node.id();
@@ -154,7 +157,7 @@ bool Array2D::create_array(Storage *storage, uint32_t storage_node_id,
   table_cache_.reset(new (std::nothrow) void *[table_size]);
   if (!table_cache_) {
     GRNXX_ERROR() << "new void *[] failed: size = " << table_size;
-    storage->unlink_node(storage_node_.id());
+    storage->unlink_node(storage_node_id_);
     return false;
   }
   for (uint64_t i = 0; i < table_size; ++i) {
@@ -167,11 +170,12 @@ bool Array2D::open_array(Storage *storage, uint32_t storage_node_id,
                          uint64_t value_size, uint64_t page_size,
                          uint64_t table_size, FillPage fill_page) {
   storage_ = storage;
-  storage_node_ = storage->open_node(storage_node_id);
-  if (!storage_node_) {
+  StorageNode storage_node = storage->open_node(storage_node_id);
+  if (!storage_node) {
     return false;
   }
-  header_ = static_cast<Array2DHeader *>(storage_node_.body());
+  storage_node_id_ = storage_node.id();
+  header_ = static_cast<Array2DHeader *>(storage_node.body());
   if (header_->value_size != value_size) {
     GRNXX_ERROR() << "parameter conflict: value_size = " << value_size
                   << ", stored_value_size = " << header_->value_size;

  Modified: lib/grnxx/array/array_2d.hpp (+4 -3)
===================================================================
--- lib/grnxx/array/array_2d.hpp    2013-05-15 17:14:31 +0900 (7310d96)
+++ lib/grnxx/array/array_2d.hpp    2013-05-15 17:30:17 +0900 (8778f9b)
@@ -23,11 +23,12 @@
 #include <memory>
 
 #include "grnxx/mutex.hpp"
-#include "grnxx/storage.hpp"
 #include "grnxx/types.hpp"
 
 namespace grnxx {
 
+class Storage;
+
 struct Array2DHeader;
 
 class Array2D {
@@ -52,7 +53,7 @@ class Array2D {
                      uint64_t table_size);
 
   uint32_t storage_node_id() const {
-    return storage_node_.id();
+    return storage_node_id_;
   }
 
   template <typename T, uint64_t TABLE_SIZE>
@@ -75,7 +76,7 @@ class Array2D {
 
  private:
   Storage *storage_;
-  StorageNode storage_node_;
+  uint32_t storage_node_id_;
   Array2DHeader *header_;
   void *default_value_;
   FillPage fill_page_;

  Modified: lib/grnxx/array/array_3d.cpp (+13 -9)
===================================================================
--- lib/grnxx/array/array_3d.cpp    2013-05-15 17:14:31 +0900 (768fc91)
+++ lib/grnxx/array/array_3d.cpp    2013-05-15 17:30:17 +0900 (e152d2d)
@@ -23,6 +23,7 @@
 #include "grnxx/exception.hpp"
 #include "grnxx/lock.hpp"
 #include "grnxx/logger.hpp"
+#include "grnxx/storage.hpp"
 
 namespace grnxx {
 
@@ -57,7 +58,7 @@ Array3DHeader::Array3DHeader(uint64_t value_size, uint64_t page_size,
 
 Array3D::Array3D()
     : storage_(nullptr),
-      storage_node_(),
+      storage_node_id_(STORAGE_INVALID_NODE_ID),
       header_(nullptr),
       default_value_(nullptr),
       fill_page_(nullptr),
@@ -141,11 +142,13 @@ bool Array3D::create_array(Storage *storage, uint32_t storage_node_id,
   if (default_value) {
     storage_node_size += value_size;
   }
-  storage_node_ = storage->create_node(storage_node_id, storage_node_size);
-  if (!storage_node_) {
+  StorageNode storage_node =
+      storage->create_node(storage_node_id, storage_node_size);
+  if (!storage_node) {
     return false;
   }
-  header_ = static_cast<Array3DHeader *>(storage_node_.body());
+  storage_node_id_ = storage_node.id();
+  header_ = static_cast<Array3DHeader *>(storage_node.body());
   *header_ = Array3DHeader(value_size, page_size, table_size,
                            secondary_table_size, default_value);
   if (default_value) {
@@ -158,7 +161,7 @@ bool Array3D::create_array(Storage *storage, uint32_t storage_node_id,
   if (!table_caches_) {
     GRNXX_ERROR() << "new std::unique_ptr<void *[]>[] failed: size = "
                   << secondary_table_size;
-    storage->unlink_node(storage_node_.id());
+    storage->unlink_node(storage_node_id_);
     return false;
   }
   return true;
@@ -169,11 +172,12 @@ bool Array3D::open_array(Storage *storage, uint32_t storage_node_id,
                          uint64_t table_size, uint64_t secondary_table_size,
                          FillPage fill_page) {
   storage_ = storage;
-  storage_node_ = storage->open_node(storage_node_id);
-  if (!storage_node_) {
+  StorageNode storage_node = storage->open_node(storage_node_id);
+  if (!storage_node) {
     return false;
   }
-  header_ = static_cast<Array3DHeader *>(storage_node_.body());
+  storage_node_id_ = storage_node.id();
+  header_ = static_cast<Array3DHeader *>(storage_node.body());
   if (header_->value_size != value_size) {
     GRNXX_ERROR() << "parameter conflict: value_size = " << value_size
                   << ", stored_value_size = " << header_->value_size;
@@ -301,7 +305,7 @@ bool Array3D::initialize_secondary_table() {
         const uint64_t secondary_table_size =
             sizeof(uint32_t) * header_->secondary_table_size;
         StorageNode secondary_table_node =
-            storage_->create_node(storage_node_.id(), secondary_table_size);
+            storage_->create_node(storage_node_id_, secondary_table_size);
         if (!secondary_table_node) {
           return false;
         }

  Modified: lib/grnxx/array/array_3d.hpp (+4 -3)
===================================================================
--- lib/grnxx/array/array_3d.hpp    2013-05-15 17:14:31 +0900 (3d48bf4)
+++ lib/grnxx/array/array_3d.hpp    2013-05-15 17:30:17 +0900 (0852efa)
@@ -23,11 +23,12 @@
 #include <memory>
 
 #include "grnxx/mutex.hpp"
-#include "grnxx/storage.hpp"
 #include "grnxx/types.hpp"
 
 namespace grnxx {
 
+class Storage;
+
 struct Array3DHeader;
 
 class Array3D {
@@ -53,7 +54,7 @@ class Array3D {
                      uint64_t table_size, uint64_t secondary_table_size);
 
   uint32_t storage_node_id() const {
-    return storage_node_.id();
+    return storage_node_id_;
   }
 
   template <typename T, uint64_t TABLE_SIZE, uint64_t SECONDARY_TABLE_SIZE>
@@ -80,7 +81,7 @@ class Array3D {
 
  private:
   Storage *storage_;
-  StorageNode storage_node_;
+  uint32_t storage_node_id_;
   Array3DHeader *header_;
   void *default_value_;
   FillPage fill_page_;
-------------- next part --------------
HTML����������������������������...
Télécharger 



More information about the Groonga-commit mailing list
Back to archive index