public <U extends T, A, B, C> InitialMatching3<T, U, A, B, C> when(
      DecomposableMatchBuilder3<U, A, B, C> decomposableMatchBuilder) {
    return new InitialMatching3<>(decomposableMatchBuilder.build(), value);
  }
public < U extends T , A , B , C > InitialMatching3 < T , U , A , B , C > when ( DecomposableMatchBuilder3 < U , A , B , C > decomposableMatchBuilder ) { return new InitialMatching3 < > ( decomposableMatchBuilder . build ( ) , value ) ; }
Specifies an match on a decomposing matcher with 3 extracted fields and then returns a fluent
interface for specifying the action to take if the value matches this case.