Explorar el Código

początki przerabiania apache.commons.StrBuilder

Ranides Atterwim hace 13 años
padre
commit
08e84a39f5

+ 8 - 5
src/main/java/net/ranides/assira/collection/ArrayUtils.java

@@ -21,7 +21,6 @@ import net.ranides.assira.generic.ValueUtils;
 import net.ranides.assira.math.HashHelper;
 import net.ranides.assira.reflection.ClassInspector;
 import net.ranides.assira.reflection.UnsafeArrayAccess;
-import net.ranides.assira.trace.LoggerUtils;
 
 /**
  * Operacje na tablicach.
@@ -190,14 +189,14 @@ public final class ArrayUtils {
         return result;
     }
     
-    @SuppressWarnings("unchecked")
+    @SuppressWarnings({"unchecked", "SuspiciousSystemArraycopy"})
     public static <ArrayT> ArrayT clip(ArrayT array, int size) {
         if( size(array) <= size ) {
             return array; 
         }
-        ArrayT result= make(array.getClass(), size);
+        Object result= make(array.getClass(), size);
         System.arraycopy(array, 0, result, 0, size);
-        return result;
+        return (ArrayT)result;
     }
 
     /**
@@ -314,6 +313,7 @@ public final class ArrayUtils {
      * @param values
      * @param keys
      */
+    @SuppressWarnings("MismatchedReadAndWriteOfArray")
     public static <K extends Comparable<K>, V> void sort(V[] values, K[] keys) {
         final Pair[] table = new Pair[keys.length];
         for(int i=0; i<table.length; i++) { 
@@ -342,6 +342,7 @@ public final class ArrayUtils {
         for(int i=0; i<table.length; i++) { table[i] = new IntPair(keys[i], values[i]); }
         java.util.Arrays.sort(table);
 
+        @SuppressWarnings("MismatchedReadAndWriteOfArray")
         final Object[] ovalues = values;
         for(int i=0; i<table.length; i++) {
             ovalues[i] = table[i].value;
@@ -508,6 +509,7 @@ public final class ArrayUtils {
      * @param values
      * @return
      */
+    @SuppressWarnings("unchecked")
     public static <Auto> Auto unshift(Object values) {
         if(values == null) { // @test
             throw new EmptyCollectionException(); 
@@ -544,7 +546,7 @@ public final class ArrayUtils {
      * @param second
      * @return
      */
-    @SuppressWarnings("SuspiciousSystemArraycopy")
+    @SuppressWarnings({"SuspiciousSystemArraycopy", "unchecked"})
     public static <ArrayT> ArrayT concat(ArrayT first, ArrayT second) {
         int length1 = size(first);
         int length2 = size(second);
@@ -661,6 +663,7 @@ public final class ArrayUtils {
      * @param source
      * @return 
      */
+    @SuppressWarnings({"unchecked", "SuspiciousSystemArraycopy"})
     public static <ArrayT> ArrayT arraycopy(ArrayT source) { // @test
         int size = size(source);
         Object target = make(source.getClass(), size);

+ 9 - 9
src/main/java/net/ranides/assira/reflection/ReflectUtils.java

@@ -12,6 +12,7 @@ import java.lang.reflect.Method;
 import java.util.Arrays;
 import net.ranides.assira.generic.CompareWrapper;
 import net.ranides.assira.text.LexicalCast;
+import net.ranides.assira.text.AbstractStrBuilder;
 import net.ranides.assira.text.StrBuilder;
 import net.ranides.assira.text.StringUtils;
 
@@ -47,7 +48,7 @@ public final class ReflectUtils {
         return sig(new StrBuilder(), method).toString();
     }
     
-    private static StrBuilder sig(StrBuilder builder, Method method) {
+    private static AbstractStrBuilder sig(StrBuilder builder, Method method) {
         Class<?> clazz = method.getDeclaringClass();
         builder
             .append(clazz.getName())
@@ -78,8 +79,10 @@ public final class ReflectUtils {
             return fqname(clazz);
         }
         StrBuilder builder = new StrBuilder();
-        builder.append(fqname(clazz)).append("<");
-        builder.listOpen(", ");
+        builder
+            .append(fqname(clazz))
+            .append("<")
+            .listOpen(", ");
         for(GenericClass param : clazz.params()) {
             builder.listItem().append(fqname(param));
         }
@@ -96,15 +99,12 @@ public final class ReflectUtils {
         return clazz.rawType().getName();
     }
     
-    private static StrBuilder sigc(StrBuilder builder, Class<?>[] params) {
-        builder.append('(');
-        builder.listOpen(", ");
+    private static AbstractStrBuilder sigc(StrBuilder builder, Class<?>[] params) {
+        builder.append('(').listOpen(", ");
         for (Class clazz : params) {
             builder.listItem().append(clazz.getName());
         }
-        builder.listClose();
-        builder.append(')');
-        return builder;
+        return builder.listClose().append(')');
     }
     
     

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 2587 - 0
src/main/java/net/ranides/assira/text/AbstractStrBuilder.java


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 7 - 2565
src/main/java/net/ranides/assira/text/StrBuilder.java