View Javadoc
1   /*
2   FinalLocalVariable
3   validateEnhancedForLoopVariable = (default)false
4   tokens = PARAMETER_DEF,VARIABLE_DEF
5   
6   
7   */
8   
9   package com.puppycrawl.tools.checkstyle.checks.coding.finallocalvariable;
10  
11  import java.math.BigDecimal;
12  import java.util.function.Function;
13  
14  public class InputFinalLocalVariableNameLambda {
15      private interface Lambda {
16          public Object op(AugmentedOrder a, AugmentedOrder b);
17      }
18      private static class AugmentedOrder {
19          public BigDecimal reduce(final BigDecimal zero, final Lambda l) {
20              return null;
21          }
22          public Object add(final Object amount) {
23              return null;
24          }
25          public Object getAmount() {
26              return null;
27          }
28      }
29  
30      private void addTotalValueOfOrder(final AugmentedOrder order) {
31      final BigDecimal totalValueOfOrder = order
32              .reduce(BigDecimal.ZERO,
33                      (t, u) -> t.add(u.getAmount()));
34   }
35      public static void main(final String[] args) {
36          final Function<Integer, Integer> doubleValue = (x) -> { return x * 2; };
37      }
38  }
39  interface Operation {
40      public Object apply();
41  
42      public static final Operation OPERATION = () -> {
43          Object result; // violation, "Variable 'result' should be declared final"
44          result = null;
45          return result;
46      };
47  }