[Groonga-commit] groonga/grnxx at 1d61415 [master] Rename Text::data() to raw_data(). (#116)

Back to archive index

susumu.yata null+****@clear*****
Tue Dec 16 10:45:52 JST 2014


susumu.yata	2014-11-25 18:23:17 +0900 (Tue, 25 Nov 2014)

  New Revision: 1d61415afec6d39449cd301ce70695f2b464e5c1
  https://github.com/groonga/grnxx/commit/1d61415afec6d39449cd301ce70695f2b464e5c1

  Message:
    Rename Text::data() to raw_data(). (#116)

  Modified files:
    include/grnxx/data_types/scalar/text.hpp
    lib/grnxx/impl/column/scalar/text.cpp
    lib/grnxx/impl/column/vector/text.cpp
    lib/grnxx/impl/expression.cpp
    test/test_data_types.cpp

  Modified: include/grnxx/data_types/scalar/text.hpp (+4 -4)
===================================================================
--- include/grnxx/data_types/scalar/text.hpp    2014-11-25 16:49:29 +0900 (b01e31b)
+++ include/grnxx/data_types/scalar/text.hpp    2014-11-25 18:23:17 +0900 (52af5ef)
@@ -29,15 +29,15 @@ class Text {
         size_(string.size()) {}
   explicit constexpr Text(NA) : data_(nullptr), size_(NA()) {}
 
-  constexpr const char *data() const {
+  constexpr const char *raw_data() const {
     return data_;
   }
-  constexpr Int size() const {
-    return size_;
-  }
   constexpr size_t raw_size() const {
     return size_.raw();
   }
+  constexpr Int size() const {
+    return size_;
+  }
 
   constexpr bool is_empty() const {
     return raw_size() == 0;

  Modified: lib/grnxx/impl/column/scalar/text.cpp (+6 -5)
===================================================================
--- lib/grnxx/impl/column/scalar/text.cpp    2014-11-25 16:49:29 +0900 (fd0604a)
+++ lib/grnxx/impl/column/scalar/text.cpp    2014-11-25 18:23:17 +0900 (ac142af)
@@ -65,7 +65,7 @@ void Column<Text>::set(Int row_id, const Datum &datum) {
   uint64_t header;
   if (size < 0xFFFF) {
     bodies_.resize(offset + size);
-    std::memcpy(&bodies_[offset], new_value.data(), size);
+    std::memcpy(&bodies_[offset], new_value.raw_data(), size);
     header = (offset << 16) | size;
   } else {
     // The size of a long text is stored in front of the body.
@@ -74,7 +74,8 @@ void Column<Text>::set(Int row_id, const Datum &datum) {
     }
     bodies_.resize(offset + sizeof(uint64_t) + size);
     *reinterpret_cast<uint64_t *>(&bodies_[offset]) = size;
-    std::memcpy(&bodies_[offset + sizeof(uint64_t)], new_value.data(), size);
+    std::memcpy(&bodies_[offset + sizeof(uint64_t)],
+                new_value.raw_data(), size);
     header = (offset << 16) | 0xFFFF;
   }
   headers_[value_id] = header;
@@ -235,7 +236,7 @@ void Column<Text>::set_key_attribute() {
   for (size_t i = 0; i < valid_size; ++i) try {
     Text value = get(grnxx::Int(i));
     if (!value.is_na()) {
-      if (!set.insert(String(value.data(), value.raw_size())).second) {
+      if (!set.insert(String(value.raw_data(), value.raw_size())).second) {
         throw "Key duplicate";  // TODO
       }
     }
@@ -319,7 +320,7 @@ void Column<Text>::set_key(Int row_id, const Datum &key) {
   uint64_t header;
   if (size < 0xFFFF) {
     bodies_.resize(offset + size);
-    std::memcpy(&bodies_[offset], value.data(), size);
+    std::memcpy(&bodies_[offset], value.raw_data(), size);
     header = (offset << 16) | size;
   } else {
     // The size of a long text is stored in front of the body.
@@ -328,7 +329,7 @@ void Column<Text>::set_key(Int row_id, const Datum &key) {
     }
     bodies_.resize(offset + sizeof(uint64_t) + size);
     *reinterpret_cast<uint64_t *>(&bodies_[offset]) = size;
-    std::memcpy(&bodies_[offset + sizeof(uint64_t)], value.data(), size);
+    std::memcpy(&bodies_[offset + sizeof(uint64_t)], value.raw_data(), size);
     header = (offset << 16) | 0xFFFF;
   }
   headers_[value_id] = header;

  Modified: lib/grnxx/impl/column/vector/text.cpp (+1 -1)
===================================================================
--- lib/grnxx/impl/column/vector/text.cpp    2014-11-25 16:49:29 +0900 (89114cc)
+++ lib/grnxx/impl/column/vector/text.cpp    2014-11-25 18:23:17 +0900 (89a89ad)
@@ -68,7 +68,7 @@ void Column<Vector<Text>>::set(Int row_id, const Datum &datum) {
     text_headers_[text_headers_offset + i].size = new_value[i].size();
     if (!new_value[i].is_na()) {
       std::memcpy(&bodies_[bodies_offset],
-                  new_value[i].data(), new_value[i].raw_size());
+                  new_value[i].raw_data(), new_value[i].raw_size());
       bodies_offset += new_value[i].raw_size();
     }
   }

  Modified: lib/grnxx/impl/expression.cpp (+1 -1)
===================================================================
--- lib/grnxx/impl/expression.cpp    2014-11-25 16:49:29 +0900 (4784f53)
+++ lib/grnxx/impl/expression.cpp    2014-11-25 18:23:17 +0900 (a888143)
@@ -244,7 +244,7 @@ class ConstantNode<Text> : public TypedNode<Text> {
   explicit ConstantNode(const Value &value)
       : TypedNode<Value>(),
         value_() {
-    value_.assign(value.data(), value.raw_size());
+    value_.assign(value.raw_data(), value.raw_size());
   }
   ~ConstantNode() = default;
 

  Modified: test/test_data_types.cpp (+8 -8)
===================================================================
--- test/test_data_types.cpp    2014-11-25 16:49:29 +0900 (e784d9a)
+++ test/test_data_types.cpp    2014-11-25 18:23:17 +0900 (98657e3)
@@ -940,9 +940,9 @@ void test_text() {
   assert(empty.type() == grnxx::TEXT_DATA);
   assert(na.type() == grnxx::TEXT_DATA);
 
-  assert(std::strcmp(ab.data(), "ab") == 0);
-  assert(std::strcmp(abc.data(), "abc") == 0);
-  assert(std::strcmp(bc.data(), "bc") == 0);
+  assert(std::strcmp(ab.raw_data(), "ab") == 0);
+  assert(std::strcmp(abc.raw_data(), "abc") == 0);
+  assert(std::strcmp(bc.raw_data(), "bc") == 0);
 
   assert(ab.size().raw() == 2);
   assert(abc.size().raw() == 3);
@@ -1539,12 +1539,12 @@ void test_text_vector() {
   assert(empty.type() == grnxx::TEXT_VECTOR_DATA);
   assert(na.type() == grnxx::TEXT_VECTOR_DATA);
 
-  assert(abc[0].data() == data[0].data());
-  assert(abc[1].data() == data[1].data());
-  assert(abc[2].data() == data[2].data());
+  assert(abc[0].match(data[0]));
+  assert(abc[1].match(data[1]));
+  assert(abc[2].match(data[2]));
 
-  assert(bcn[0].data() == data[1].data());
-  assert(bcn[1].data() == data[2].data());
+  assert(bcn[0].match(data[1]));
+  assert(bcn[1].match(data[2]));
   assert(bcn[2].is_na());
 
   assert(abc.size().raw() == 3);
-------------- next part --------------
HTML����������������������������...
Download 



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