Repository: arrow
Updated Branches:
  refs/heads/master c3e865d5f -> 402baa4ec


ARROW-1092: More Decimal and scale flipped follow-up

Author: Julien Le Dem <jul...@apache.org>

Closes #736 from julienledem/ARROW-1092 and squashes the following commits:

1bc1ade [Julien Le Dem] ARROW-1092: More Decimal and scale flipped follow-up


Project: http://git-wip-us.apache.org/repos/asf/arrow/repo
Commit: http://git-wip-us.apache.org/repos/asf/arrow/commit/402baa4e
Tree: http://git-wip-us.apache.org/repos/asf/arrow/tree/402baa4e
Diff: http://git-wip-us.apache.org/repos/asf/arrow/diff/402baa4e

Branch: refs/heads/master
Commit: 402baa4ec391b61dd37c770ae7978d51b9b550fa
Parents: c3e865d
Author: Julien Le Dem <jul...@apache.org>
Authored: Tue Jun 6 11:32:39 2017 -0700
Committer: Julien Le Dem <jul...@apache.org>
Committed: Tue Jun 6 11:32:39 2017 -0700

----------------------------------------------------------------------
 .../vector/src/main/codegen/data/ValueVectorTypes.tdd |  2 +-
 .../src/main/codegen/templates/FixedValueVectors.java |  9 +++++----
 .../src/main/codegen/templates/HolderReaderImpl.java  |  2 +-
 .../vector/src/main/codegen/templates/MapWriters.java |  2 +-
 .../main/codegen/templates/NullableValueVectors.java  | 14 ++++++++------
 5 files changed, 16 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/arrow/blob/402baa4e/java/vector/src/main/codegen/data/ValueVectorTypes.tdd
----------------------------------------------------------------------
diff --git a/java/vector/src/main/codegen/data/ValueVectorTypes.tdd 
b/java/vector/src/main/codegen/data/ValueVectorTypes.tdd
index b147c9e..970d887 100644
--- a/java/vector/src/main/codegen/data/ValueVectorTypes.tdd
+++ b/java/vector/src/main/codegen/data/ValueVectorTypes.tdd
@@ -116,7 +116,7 @@
         {
           class: "Decimal",
           maxPrecisionDigits: 38, nDecimalDigits: 4, friendlyType: 
"BigDecimal",
-          typeParams: [ {name: "precision", type: "int"}, { name: "scale", 
type: "int"}],
+          typeParams: [ {name: "scale", type: "int"}, { name: "precision", 
type: "int"}],
           arrowType: "org.apache.arrow.vector.types.pojo.ArrowType.Decimal",
           fields: [{name: "start", type: "int"}, {name: "buffer", type: 
"ArrowBuf"}]
         }

http://git-wip-us.apache.org/repos/asf/arrow/blob/402baa4e/java/vector/src/main/codegen/templates/FixedValueVectors.java
----------------------------------------------------------------------
diff --git a/java/vector/src/main/codegen/templates/FixedValueVectors.java 
b/java/vector/src/main/codegen/templates/FixedValueVectors.java
index 395417b..5d92cd2 100644
--- a/java/vector/src/main/codegen/templates/FixedValueVectors.java
+++ b/java/vector/src/main/codegen/templates/FixedValueVectors.java
@@ -56,13 +56,14 @@ public final class ${className} extends BaseDataValueVector 
implements FixedWidt
   private int allocationMonitor = 0;
   <#if minor.typeParams??>
 
-    <#list minor.typeParams as typeParam>
+    <#assign typeParams = minor.typeParams?reverse />
+    <#list typeParams as typeParam>
   private final ${typeParam.type} ${typeParam.name};
     </#list>
 
-  public ${className}(String name, BufferAllocator allocator<#list 
minor.typeParams as typeParam>, ${typeParam.type} ${typeParam.name}</#list>) {
+  public ${className}(String name, BufferAllocator allocator<#list typeParams 
as typeParam>, ${typeParam.type} ${typeParam.name}</#list>) {
     super(name, allocator);
-    <#list minor.typeParams as typeParam>
+    <#list typeParams as typeParam>
     this.${typeParam.name} = ${typeParam.name};
     </#list>
   }
@@ -242,7 +243,7 @@ public final class ${className} extends BaseDataValueVector 
implements FixedWidt
     private ${className} to;
 
     public TransferImpl(String name, BufferAllocator allocator){
-      to = new ${className}(name, allocator<#if minor.typeParams??><#list 
minor.typeParams as typeParam>,  
${className}.this.${typeParam.name}</#list></#if>);
+      to = new ${className}(name, allocator<#if minor.typeParams??><#list 
typeParams as typeParam>,  ${className}.this.${typeParam.name}</#list></#if>);
     }
 
     public TransferImpl(${className} to) {

http://git-wip-us.apache.org/repos/asf/arrow/blob/402baa4e/java/vector/src/main/codegen/templates/HolderReaderImpl.java
----------------------------------------------------------------------
diff --git a/java/vector/src/main/codegen/templates/HolderReaderImpl.java 
b/java/vector/src/main/codegen/templates/HolderReaderImpl.java
index 471fe41..c2aa837 100644
--- a/java/vector/src/main/codegen/templates/HolderReaderImpl.java
+++ b/java/vector/src/main/codegen/templates/HolderReaderImpl.java
@@ -29,7 +29,7 @@
 <#assign friendlyType = (minor.friendlyType!minor.boxedType!type.boxedType) />
 <#assign safeType=friendlyType />
 <#if safeType=="byte[]"><#assign safeType="ByteArray" /></#if>
-<#assign fields = minor.fields!type.fields + minor.typeParams![]/>
+<#assign fields = (minor.fields!type.fields) + minor.typeParams![]/>
 
 <@pp.changeOutputFile 
name="/org/apache/arrow/vector/complex/impl/${holderMode}${name}HolderReaderImpl.java"
 />
 <#include "/@includes/license.ftl" />

http://git-wip-us.apache.org/repos/asf/arrow/blob/402baa4e/java/vector/src/main/codegen/templates/MapWriters.java
----------------------------------------------------------------------
diff --git a/java/vector/src/main/codegen/templates/MapWriters.java 
b/java/vector/src/main/codegen/templates/MapWriters.java
index 05048c5..14cc08d 100644
--- a/java/vector/src/main/codegen/templates/MapWriters.java
+++ b/java/vector/src/main/codegen/templates/MapWriters.java
@@ -235,7 +235,7 @@ public class ${mode}MapWriter extends AbstractFieldWriter {
               <#assign constructorParams = minor.arrowTypeConstructorParams />
             <#else>
               <#assign constructorParams = [] />
-              <#list minor.typeParams as typeParam>
+              <#list minor.typeParams?reverse as typeParam>
                 <#assign constructorParams = constructorParams + [ 
typeParam.name ] />
               </#list>
             </#if>    

http://git-wip-us.apache.org/repos/asf/arrow/blob/402baa4e/java/vector/src/main/codegen/templates/NullableValueVectors.java
----------------------------------------------------------------------
diff --git a/java/vector/src/main/codegen/templates/NullableValueVectors.java 
b/java/vector/src/main/codegen/templates/NullableValueVectors.java
index 36f8338..4aa0076 100644
--- a/java/vector/src/main/codegen/templates/NullableValueVectors.java
+++ b/java/vector/src/main/codegen/templates/NullableValueVectors.java
@@ -62,22 +62,23 @@ public final class ${className} extends BaseDataValueVector 
implements <#if type
   private final List<BufferBacked> innerVectors;
 
   <#if minor.typeParams??>
-     <#list minor.typeParams as typeParam>
+    <#assign typeParams = minor.typeParams?reverse>
+    <#list typeParams as typeParam>
   private final ${typeParam.type} ${typeParam.name};
     </#list>
 
   /**
    * Assumes the type is nullable and not dictionary encoded
    * @param name name of the field
-   * @param allocator allocator to use to resize the vector<#list 
minor.typeParams as typeParam>
+   * @param allocator allocator to use to resize the vector<#list typeParams 
as typeParam>
    * @param ${typeParam.name} type parameter ${typeParam.name}</#list>
    */
-  public ${className}(String name, BufferAllocator allocator<#list 
minor.typeParams as typeParam>, ${typeParam.type} ${typeParam.name}</#list>) {
+  public ${className}(String name, BufferAllocator allocator<#list typeParams 
as typeParam>, ${typeParam.type} ${typeParam.name}</#list>) {
     <#if minor.arrowTypeConstructorParams??>
        <#assign constructorParams = minor.arrowTypeConstructorParams />
     <#else>
        <#assign constructorParams = [] />
-       <#list minor.typeParams as typeParam>
+       <#list typeParams as typeParam>
          <#assign constructorParams = constructorParams + [ typeParam.name ] />
       </#list>
     </#if>
@@ -92,11 +93,12 @@ public final class ${className} extends BaseDataValueVector 
implements <#if type
   public ${className}(String name, FieldType fieldType, BufferAllocator 
allocator) {
     super(name, allocator);
     <#if minor.typeParams??>
+    <#assign typeParams = minor.typeParams?reverse>
     ${minor.arrowType} arrowType = (${minor.arrowType})fieldType.getType();
-    <#list minor.typeParams as typeParam>
+    <#list typeParams as typeParam>
     this.${typeParam.name} = arrowType.get${typeParam.name?cap_first}();
     </#list>
-    this.values = new ${valuesName}(valuesField, allocator<#list 
minor.typeParams as typeParam>, ${typeParam.name}</#list>);
+    this.values = new ${valuesName}(valuesField, allocator<#list typeParams as 
typeParam>, ${typeParam.name}</#list>);
     <#else>
     this.values = new ${valuesName}(valuesField, allocator);
     </#if>

Reply via email to