You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by uw...@apache.org on 2017/11/15 12:23:58 UTC

[arrow] branch master updated: ARROW-1811: [C++/Python] Rename all Decimal based APIs to Decimal128

This is an automated email from the ASF dual-hosted git repository.

uwe pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow.git


The following commit(s) were added to refs/heads/master by this push:
     new 9fb806c  ARROW-1811: [C++/Python] Rename all Decimal based APIs to Decimal128
9fb806c is described below

commit 9fb806ce2ca0ccdee1b89c510dcfae16996cf243
Author: Phillip Cloud <cp...@gmail.com>
AuthorDate: Wed Nov 15 13:23:51 2017 +0100

    ARROW-1811: [C++/Python] Rename all Decimal based APIs to Decimal128
    
    Author: Phillip Cloud <cp...@gmail.com>
    
    Closes #1321 from cpcloud/ARROW-1811 and squashes the following commits:
    
    1b0a3b8 [Phillip Cloud] ARROW-1811: [C++/Python] Rename all Decimal based APIs to Decimal128
---
 cpp/src/arrow/array.cc                  | 2 +-
 cpp/src/arrow/array.h                   | 2 +-
 cpp/src/arrow/builder.cc                | 9 +++++----
 cpp/src/arrow/builder.h                 | 8 +++++---
 cpp/src/arrow/compare.cc                | 4 ++--
 cpp/src/arrow/ipc/json-internal.cc      | 8 ++++----
 cpp/src/arrow/ipc/metadata-internal.cc  | 2 +-
 cpp/src/arrow/python/arrow_to_pandas.cc | 4 ++--
 cpp/src/arrow/python/builtin_convert.cc | 2 +-
 cpp/src/arrow/python/numpy_to_arrow.cc  | 6 +++---
 cpp/src/arrow/type.cc                   | 6 +++---
 cpp/src/arrow/type.h                    | 6 ++++--
 cpp/src/arrow/type_fwd.h                | 4 ++--
 cpp/src/arrow/type_traits.h             | 4 ++--
 cpp/src/arrow/visitor.h                 | 2 +-
 cpp/src/arrow/visitor_inline.h          | 2 +-
 16 files changed, 38 insertions(+), 33 deletions(-)

diff --git a/cpp/src/arrow/array.cc b/cpp/src/arrow/array.cc
index 651fa26..f2dd753 100644
--- a/cpp/src/arrow/array.cc
+++ b/cpp/src/arrow/array.cc
@@ -320,7 +320,7 @@ Decimal128Array::Decimal128Array(const std::shared_ptr<ArrayData>& data)
 }
 
 std::string Decimal128Array::FormatValue(int64_t i) const {
-  const auto& type_ = static_cast<const DecimalType&>(*type());
+  const auto& type_ = static_cast<const Decimal128Type&>(*type());
   const Decimal128 value(GetValue(i));
   return value.ToString(type_.scale());
 }
diff --git a/cpp/src/arrow/array.h b/cpp/src/arrow/array.h
index 3337e4b..28756a6 100644
--- a/cpp/src/arrow/array.h
+++ b/cpp/src/arrow/array.h
@@ -562,7 +562,7 @@ class ARROW_EXPORT FixedSizeBinaryArray : public PrimitiveArray {
 // Decimal128Array
 class ARROW_EXPORT Decimal128Array : public FixedSizeBinaryArray {
  public:
-  using TypeClass = DecimalType;
+  using TypeClass = Decimal128Type;
 
   using FixedSizeBinaryArray::FixedSizeBinaryArray;
 
diff --git a/cpp/src/arrow/builder.cc b/cpp/src/arrow/builder.cc
index c910170..d2d3dbd 100644
--- a/cpp/src/arrow/builder.cc
+++ b/cpp/src/arrow/builder.cc
@@ -1147,17 +1147,18 @@ template class DictionaryBuilder<BinaryType>;
 template class DictionaryBuilder<StringType>;
 
 // ----------------------------------------------------------------------
-// DecimalBuilder
+// Decimal128Builder
 
-DecimalBuilder::DecimalBuilder(const std::shared_ptr<DataType>& type, MemoryPool* pool)
+Decimal128Builder::Decimal128Builder(const std::shared_ptr<DataType>& type,
+                                     MemoryPool* pool)
     : FixedSizeBinaryBuilder(type, pool) {}
 
-Status DecimalBuilder::Append(const Decimal128& value) {
+Status Decimal128Builder::Append(const Decimal128& value) {
   RETURN_NOT_OK(FixedSizeBinaryBuilder::Reserve(1));
   return FixedSizeBinaryBuilder::Append(value.ToBytes());
 }
 
-Status DecimalBuilder::FinishInternal(std::shared_ptr<ArrayData>* out) {
+Status Decimal128Builder::FinishInternal(std::shared_ptr<ArrayData>* out) {
   std::shared_ptr<Buffer> data;
   RETURN_NOT_OK(byte_builder_.Finish(&data));
 
diff --git a/cpp/src/arrow/builder.h b/cpp/src/arrow/builder.h
index c580eeb..bc25d0d 100644
--- a/cpp/src/arrow/builder.h
+++ b/cpp/src/arrow/builder.h
@@ -753,10 +753,10 @@ class ARROW_EXPORT FixedSizeBinaryBuilder : public ArrayBuilder {
   BufferBuilder byte_builder_;
 };
 
-class ARROW_EXPORT DecimalBuilder : public FixedSizeBinaryBuilder {
+class ARROW_EXPORT Decimal128Builder : public FixedSizeBinaryBuilder {
  public:
-  explicit DecimalBuilder(const std::shared_ptr<DataType>& type,
-                          MemoryPool* pool ARROW_MEMORY_POOL_DEFAULT);
+  explicit Decimal128Builder(const std::shared_ptr<DataType>& type,
+                             MemoryPool* pool ARROW_MEMORY_POOL_DEFAULT);
 
   using FixedSizeBinaryBuilder::Append;
 
@@ -765,6 +765,8 @@ class ARROW_EXPORT DecimalBuilder : public FixedSizeBinaryBuilder {
   Status FinishInternal(std::shared_ptr<ArrayData>* out) override;
 };
 
+using DecimalBuilder = Decimal128Builder;
+
 // ----------------------------------------------------------------------
 // Struct
 
diff --git a/cpp/src/arrow/compare.cc b/cpp/src/arrow/compare.cc
index 253c2e1..72ef122 100644
--- a/cpp/src/arrow/compare.cc
+++ b/cpp/src/arrow/compare.cc
@@ -615,8 +615,8 @@ class TypeEqualsVisitor {
     return Status::OK();
   }
 
-  Status Visit(const DecimalType& left) {
-    const auto& right = static_cast<const DecimalType&>(right_);
+  Status Visit(const Decimal128Type& left) {
+    const auto& right = static_cast<const Decimal128Type&>(right_);
     result_ = left.precision() == right.precision() && left.scale() == right.scale();
     return Status::OK();
   }
diff --git a/cpp/src/arrow/ipc/json-internal.cc b/cpp/src/arrow/ipc/json-internal.cc
index 976f966..bdf1ef5 100644
--- a/cpp/src/arrow/ipc/json-internal.cc
+++ b/cpp/src/arrow/ipc/json-internal.cc
@@ -253,7 +253,7 @@ class SchemaWriter {
     writer_->Int(type.byte_width());
   }
 
-  void WriteTypeMetadata(const DecimalType& type) {
+  void WriteTypeMetadata(const Decimal128Type& type) {
     writer_->Key("precision");
     writer_->Int(type.precision());
     writer_->Key("scale");
@@ -347,7 +347,7 @@ class SchemaWriter {
     return WritePrimitive("fixedsizebinary", type);
   }
 
-  Status Visit(const DecimalType& type) { return WritePrimitive("decimal", type); }
+  Status Visit(const Decimal128Type& type) { return WritePrimitive("decimal", type); }
   Status Visit(const TimestampType& type) { return WritePrimitive("timestamp", type); }
   Status Visit(const IntervalType& type) { return WritePrimitive("interval", type); }
 
@@ -1063,7 +1063,7 @@ class ArrayReader {
 
   template <typename T>
   typename std::enable_if<std::is_base_of<FixedSizeBinaryType, T>::value &&
-                              !std::is_base_of<DecimalType, T>::value,
+                              !std::is_base_of<Decimal128Type, T>::value,
                           Status>::type
   Visit(const T& type) {
     typename TypeTraits<T>::BuilderType builder(type_, pool_);
@@ -1105,7 +1105,7 @@ class ArrayReader {
   }
 
   template <typename T>
-  typename std::enable_if<std::is_base_of<DecimalType, T>::value, Status>::type Visit(
+  typename std::enable_if<std::is_base_of<Decimal128Type, T>::value, Status>::type Visit(
       const T& type) {
     typename TypeTraits<T>::BuilderType builder(type_, pool_);
 
diff --git a/cpp/src/arrow/ipc/metadata-internal.cc b/cpp/src/arrow/ipc/metadata-internal.cc
index 63ef8a5..87b4708 100644
--- a/cpp/src/arrow/ipc/metadata-internal.cc
+++ b/cpp/src/arrow/ipc/metadata-internal.cc
@@ -458,7 +458,7 @@ static Status TypeToFlatbuffer(FBB& fbb, const DataType& type,
       *offset = flatbuf::CreateTimestamp(fbb, fb_unit, fb_timezone).Union();
     } break;
     case Type::DECIMAL: {
-      const auto& dec_type = static_cast<const DecimalType&>(*value_type);
+      const auto& dec_type = static_cast<const Decimal128Type&>(*value_type);
       *out_type = flatbuf::Type_Decimal;
       *offset =
           flatbuf::CreateDecimal(fbb, dec_type.precision(), dec_type.scale()).Union();
diff --git a/cpp/src/arrow/python/arrow_to_pandas.cc b/cpp/src/arrow/python/arrow_to_pandas.cc
index f966b29..2b0f964 100644
--- a/cpp/src/arrow/python/arrow_to_pandas.cc
+++ b/cpp/src/arrow/python/arrow_to_pandas.cc
@@ -634,7 +634,7 @@ static Status ConvertDecimals(PandasOptions options, const ChunkedArray& data,
 
   for (int c = 0; c < data.num_chunks(); c++) {
     auto* arr(static_cast<arrow::Decimal128Array*>(data.chunk(c).get()));
-    auto type(std::dynamic_pointer_cast<arrow::DecimalType>(arr->type()));
+    auto type(std::dynamic_pointer_cast<arrow::Decimal128Type>(arr->type()));
     const int scale = type->scale();
 
     for (int64_t i = 0; i < arr->length(); ++i) {
@@ -1600,7 +1600,7 @@ class ArrowDeserializer {
     return VisitObjects(ConvertFixedSizeBinary);
   }
 
-  Status Visit(const DecimalType& type) { return VisitObjects(ConvertDecimals); }
+  Status Visit(const Decimal128Type& type) { return VisitObjects(ConvertDecimals); }
 
   Status Visit(const Time32Type& type) { return VisitObjects(ConvertTimes<Time32Type>); }
 
diff --git a/cpp/src/arrow/python/builtin_convert.cc b/cpp/src/arrow/python/builtin_convert.cc
index 0e775a0..fa0098b 100644
--- a/cpp/src/arrow/python/builtin_convert.cc
+++ b/cpp/src/arrow/python/builtin_convert.cc
@@ -700,7 +700,7 @@ class ListConverter : public TypedConverterVisitor<ListBuilder, ListConverter> {
 };
 
 class DecimalConverter
-    : public TypedConverterVisitor<arrow::DecimalBuilder, DecimalConverter> {
+    : public TypedConverterVisitor<arrow::Decimal128Builder, DecimalConverter> {
  public:
   inline Status AppendItem(const OwnedRef& item) {
     /// TODO(phillipc): Check for nan?
diff --git a/cpp/src/arrow/python/numpy_to_arrow.cc b/cpp/src/arrow/python/numpy_to_arrow.cc
index c5aff2e..a6c28af 100644
--- a/cpp/src/arrow/python/numpy_to_arrow.cc
+++ b/cpp/src/arrow/python/numpy_to_arrow.cc
@@ -305,7 +305,7 @@ class NumPyConverter {
     return TypeNotImplemented(type.ToString());
   }
 
-  Status Visit(const DecimalType& type) { return TypeNotImplemented(type.ToString()); }
+  Status Visit(const Decimal128Type& type) { return TypeNotImplemented(type.ToString()); }
 
   Status Visit(const DictionaryType& type) { return TypeNotImplemented(type.ToString()); }
 
@@ -669,9 +669,9 @@ Status NumPyConverter::ConvertDecimals() {
 
   RETURN_NOT_OK(internal::InferDecimalPrecisionAndScale(object, &precision, &scale));
 
-  type_ = std::make_shared<DecimalType>(precision, scale);
+  type_ = std::make_shared<Decimal128Type>(precision, scale);
 
-  DecimalBuilder builder(type_, pool_);
+  Decimal128Builder builder(type_, pool_);
   RETURN_NOT_OK(builder.Resize(length_));
 
   for (int64_t i = 0; i < length_; ++i) {
diff --git a/cpp/src/arrow/type.cc b/cpp/src/arrow/type.cc
index 0d1985f..ae17118 100644
--- a/cpp/src/arrow/type.cc
+++ b/cpp/src/arrow/type.cc
@@ -373,7 +373,7 @@ ACCEPT_VISITOR(FixedSizeBinaryType);
 ACCEPT_VISITOR(StringType);
 ACCEPT_VISITOR(ListType);
 ACCEPT_VISITOR(StructType);
-ACCEPT_VISITOR(DecimalType);
+ACCEPT_VISITOR(Decimal128Type);
 ACCEPT_VISITOR(UnionType);
 ACCEPT_VISITOR(Date32Type);
 ACCEPT_VISITOR(Date64Type);
@@ -471,7 +471,7 @@ std::shared_ptr<Field> field(const std::string& name,
 }
 
 std::shared_ptr<DataType> decimal(int32_t precision, int32_t scale) {
-  return std::make_shared<DecimalType>(precision, scale);
+  return std::make_shared<Decimal128Type>(precision, scale);
 }
 
 static const BufferDescr kValidityBuffer(BufferType::VALIDITY, 1);
@@ -511,7 +511,7 @@ std::vector<BufferDescr> UnionType::GetBufferLayout() const {
   }
 }
 
-std::string DecimalType::ToString() const {
+std::string Decimal128Type::ToString() const {
   std::stringstream s;
   s << "decimal(" << precision_ << ", " << scale_ << ")";
   return s.str();
diff --git a/cpp/src/arrow/type.h b/cpp/src/arrow/type.h
index 9e11a03..d86e7ef 100644
--- a/cpp/src/arrow/type.h
+++ b/cpp/src/arrow/type.h
@@ -498,11 +498,11 @@ class ARROW_EXPORT StructType : public NestedType {
   std::vector<BufferDescr> GetBufferLayout() const override;
 };
 
-class ARROW_EXPORT DecimalType : public FixedSizeBinaryType {
+class ARROW_EXPORT Decimal128Type : public FixedSizeBinaryType {
  public:
   static constexpr Type::type type_id = Type::DECIMAL;
 
-  explicit DecimalType(int32_t precision, int32_t scale)
+  explicit Decimal128Type(int32_t precision, int32_t scale)
       : FixedSizeBinaryType(16, Type::DECIMAL), precision_(precision), scale_(scale) {}
 
   Status Accept(TypeVisitor* visitor) const override;
@@ -517,6 +517,8 @@ class ARROW_EXPORT DecimalType : public FixedSizeBinaryType {
   int32_t scale_;
 };
 
+using DecimalType = Decimal128Type;
+
 struct UnionMode {
   enum type { SPARSE, DENSE };
 };
diff --git a/cpp/src/arrow/type_fwd.h b/cpp/src/arrow/type_fwd.h
index 3434870..b8b3c5a 100644
--- a/cpp/src/arrow/type_fwd.h
+++ b/cpp/src/arrow/type_fwd.h
@@ -68,9 +68,9 @@ class StructType;
 class StructArray;
 class StructBuilder;
 
-class DecimalType;
+class Decimal128Type;
 class Decimal128Array;
-class DecimalBuilder;
+class Decimal128Builder;
 
 class UnionType;
 class UnionArray;
diff --git a/cpp/src/arrow/type_traits.h b/cpp/src/arrow/type_traits.h
index bc60037..6707f37 100644
--- a/cpp/src/arrow/type_traits.h
+++ b/cpp/src/arrow/type_traits.h
@@ -230,9 +230,9 @@ struct TypeTraits<DoubleType> {
 };
 
 template <>
-struct TypeTraits<DecimalType> {
+struct TypeTraits<Decimal128Type> {
   using ArrayType = Decimal128Array;
-  using BuilderType = DecimalBuilder;
+  using BuilderType = Decimal128Builder;
   constexpr static bool is_parameter_free = false;
 };
 
diff --git a/cpp/src/arrow/visitor.h b/cpp/src/arrow/visitor.h
index 34679eb..030ffc8 100644
--- a/cpp/src/arrow/visitor.h
+++ b/cpp/src/arrow/visitor.h
@@ -83,7 +83,7 @@ class ARROW_EXPORT TypeVisitor {
   virtual Status Visit(const Time64Type& type);
   virtual Status Visit(const TimestampType& type);
   virtual Status Visit(const IntervalType& type);
-  virtual Status Visit(const DecimalType& type);
+  virtual Status Visit(const Decimal128Type& type);
   virtual Status Visit(const ListType& type);
   virtual Status Visit(const StructType& type);
   virtual Status Visit(const UnionType& type);
diff --git a/cpp/src/arrow/visitor_inline.h b/cpp/src/arrow/visitor_inline.h
index 5ecabd2..72c82a3 100644
--- a/cpp/src/arrow/visitor_inline.h
+++ b/cpp/src/arrow/visitor_inline.h
@@ -55,7 +55,7 @@ inline Status VisitTypeInline(const DataType& type, VISITOR* visitor) {
     TYPE_VISIT_INLINE(TimestampType);
     TYPE_VISIT_INLINE(Time32Type);
     TYPE_VISIT_INLINE(Time64Type);
-    TYPE_VISIT_INLINE(DecimalType);
+    TYPE_VISIT_INLINE(Decimal128Type);
     TYPE_VISIT_INLINE(ListType);
     TYPE_VISIT_INLINE(StructType);
     TYPE_VISIT_INLINE(UnionType);

-- 
To stop receiving notification emails like this one, please contact
['"commits@arrow.apache.org" <co...@arrow.apache.org>'].