This is an automated email from the ASF dual-hosted git repository. henrib pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-jexl.git
The following commit(s) were added to refs/heads/master by this push: new c41405db JEXL: minor refactors, toArray(...0), templates,... c41405db is described below commit c41405dbd49f1d083a8b40b0f003b2c292415cef Author: henrib <hen...@apache.org> AuthorDate: Fri Jul 1 15:24:42 2022 +0200 JEXL: minor refactors, toArray(...0), templates,... --- .../org/apache/commons/jexl3/JexlException.java | 3 ++- .../commons/jexl3/internal/TemplateEngine.java | 2 +- .../commons/jexl3/internal/TemplateScript.java | 4 +-- .../jexl3/internal/introspection/ClassMap.java | 6 ++--- .../jexl3/internal/introspection/Introspector.java | 2 +- .../commons/jexl3/scripting/JexlScriptEngine.java | 4 +-- .../commons/jexl3/jexl342/OptionalArithmetic.java | 30 ++++++++++++++++++++++ 7 files changed, 41 insertions(+), 10 deletions(-) diff --git a/src/main/java/org/apache/commons/jexl3/JexlException.java b/src/main/java/org/apache/commons/jexl3/JexlException.java index 573bc755..a683596f 100644 --- a/src/main/java/org/apache/commons/jexl3/JexlException.java +++ b/src/main/java/org/apache/commons/jexl3/JexlException.java @@ -193,7 +193,7 @@ public class JexlException extends RuntimeException { stackJexl.add(se); } } - xthrow.setStackTrace(stackJexl.toArray(new StackTraceElement[stackJexl.size()])); + xthrow.setStackTrace(stackJexl.toArray(new StackTraceElement[0])); } return xthrow; } @@ -631,6 +631,7 @@ public class JexlException extends RuntimeException { public Property(final JexlNode node, final String pty) { this(node, pty, true, null); } + /** * Creates a new Property exception instance. * diff --git a/src/main/java/org/apache/commons/jexl3/internal/TemplateEngine.java b/src/main/java/org/apache/commons/jexl3/internal/TemplateEngine.java index 3c9bf998..ca0e8e3d 100644 --- a/src/main/java/org/apache/commons/jexl3/internal/TemplateEngine.java +++ b/src/main/java/org/apache/commons/jexl3/internal/TemplateEngine.java @@ -605,7 +605,7 @@ public final class TemplateEngine extends JxltEngine { */ CompositeExpression(final int[] counters, final List<TemplateExpression> list, final TemplateExpression src) { super(src); - this.exprs = list.toArray(new TemplateExpression[list.size()]); + this.exprs = list.toArray(new TemplateExpression[0]); this.meta = (counters[ExpressionType.DEFERRED.getIndex()] > 0 ? 2 : 0) | (counters[ExpressionType.IMMEDIATE.getIndex()] > 0 ? 1 : 0); } diff --git a/src/main/java/org/apache/commons/jexl3/internal/TemplateScript.java b/src/main/java/org/apache/commons/jexl3/internal/TemplateScript.java index f71ca518..9c8b9ea3 100644 --- a/src/main/java/org/apache/commons/jexl3/internal/TemplateScript.java +++ b/src/main/java/org/apache/commons/jexl3/internal/TemplateScript.java @@ -146,8 +146,8 @@ public final class TemplateScript implements JxltEngine.Template { jpe += 1; } } - source = blocks.toArray(new Block[blocks.size()]); - exprs = uexprs.toArray(new TemplateExpression[uexprs.size()]); + source = blocks.toArray(new Block[0]); + exprs = uexprs.toArray(new TemplateExpression[0]); } /** diff --git a/src/main/java/org/apache/commons/jexl3/internal/introspection/ClassMap.java b/src/main/java/org/apache/commons/jexl3/internal/introspection/ClassMap.java index 7e36ce9a..2be0b0f4 100644 --- a/src/main/java/org/apache/commons/jexl3/internal/introspection/ClassMap.java +++ b/src/main/java/org/apache/commons/jexl3/internal/introspection/ClassMap.java @@ -164,7 +164,7 @@ final class ClassMap { * @return the array of field names */ String[] getFieldNames() { - return fieldCache.keySet().toArray(new String[fieldCache.size()]); + return fieldCache.keySet().toArray(new String[0]); } /** @@ -173,7 +173,7 @@ final class ClassMap { * @return the array of method names */ String[] getMethodNames() { - return byName.keySet().toArray(new String[byName.size()]); + return byName.keySet().toArray(new String[0]); } /** @@ -282,7 +282,7 @@ final class ClassMap { } end += 1; } - final Method[] lmn = lm.subList(start, end).toArray(new Method[end - start]); + final Method[] lmn = lm.subList(start, end).toArray(new Method[0]); cache.byName.put(name, lmn); start = end; } diff --git a/src/main/java/org/apache/commons/jexl3/internal/introspection/Introspector.java b/src/main/java/org/apache/commons/jexl3/internal/introspection/Introspector.java index 08b5290d..ba7a5bc5 100644 --- a/src/main/java/org/apache/commons/jexl3/internal/introspection/Introspector.java +++ b/src/main/java/org/apache/commons/jexl3/internal/introspection/Introspector.java @@ -267,7 +267,7 @@ public final class Introspector { } } // try to find one - ctor = key.getMostSpecificConstructor(l.toArray(new Constructor<?>[l.size()])); + ctor = key.getMostSpecificConstructor(l.toArray(new Constructor<?>[0])); if (ctor != null) { constructorsMap.put(key, ctor); } else { diff --git a/src/main/java/org/apache/commons/jexl3/scripting/JexlScriptEngine.java b/src/main/java/org/apache/commons/jexl3/scripting/JexlScriptEngine.java index a8eaa426..e1845974 100644 --- a/src/main/java/org/apache/commons/jexl3/scripting/JexlScriptEngine.java +++ b/src/main/java/org/apache/commons/jexl3/scripting/JexlScriptEngine.java @@ -307,7 +307,7 @@ public class JexlScriptEngine extends AbstractScriptEngine implements Compilable private FactorySingletonHolder() {} /** The engine factory singleton instance. */ - private static final JexlScriptEngineFactory DEFAULT_FACTORY = new JexlScriptEngineFactory(); + static final JexlScriptEngineFactory DEFAULT_FACTORY = new JexlScriptEngineFactory(); } /** @@ -319,7 +319,7 @@ public class JexlScriptEngine extends AbstractScriptEngine implements Compilable private EngineSingletonHolder() {} /** The JEXL engine singleton instance. */ - private static final JexlEngine DEFAULT_ENGINE = new JexlBuilder().logger(LOG).cache(CACHE_SIZE).create(); + static final JexlEngine DEFAULT_ENGINE = new JexlBuilder().logger(LOG).cache(CACHE_SIZE).create(); } /** diff --git a/src/test/java/org/apache/commons/jexl3/jexl342/OptionalArithmetic.java b/src/test/java/org/apache/commons/jexl3/jexl342/OptionalArithmetic.java index dcb11914..9bce162c 100644 --- a/src/test/java/org/apache/commons/jexl3/jexl342/OptionalArithmetic.java +++ b/src/test/java/org/apache/commons/jexl3/jexl342/OptionalArithmetic.java @@ -228,4 +228,34 @@ public class OptionalArithmetic extends JexlArithmetic { } return narrowed; } + + @Override + public ArrayBuilder arrayBuilder(final int size) { + return new org.apache.commons.jexl3.internal.ArrayBuilder(size) { + @Override + public void add(Object value) { + super.add(star(value)); + } + }; + } + + @Override + public SetBuilder setBuilder(final int size) { + return new org.apache.commons.jexl3.internal.SetBuilder(size) { + @Override + public void add(Object value) { + super.add(star(value)); + } + }; + } + + @Override + public MapBuilder mapBuilder(final int size) { + return new org.apache.commons.jexl3.internal.MapBuilder(size) { + @Override + public void put(Object key, Object value) { + super.put(key, star(value)); + } + }; + } }