clang-format: [Java] Support generics with "?".

Before:
  @Override
  public Map < String,
          ? > getAll() {
    // ...
  }

After:
  @Override
  public Map<String, ?> getAll() {
    // ...
  }

This fixes llvm.org/PR21454.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@221109 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: [Java] Add space between "synchronized" and "(".

Before:
  synchronized(mData) {
    // ...
  }

After:
  synchronized (mData) {
    // ...
  }

This fixes llvm.org/PR21455.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@221110 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: [Java] Don't break imports.

This fixes llvm.org/PR21453.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@221112 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: [Java] Support enums without trailing semicolon.

Before:
  class SomeClass {
    enum SomeThing { ABC, CDE } void f() {
    }
  }

After:
  class SomeClass {
    enum SomeThing { ABC, CDE }
    void f() {
    }
  }

This fixed llvm.org/PR21458.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@221113 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: Fix false positive in lambda detection.

Before:
  delete [] a -> b;

After:
  delete[] a->b;

This fixes part of llvm.org/PR21419.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@221114 91177308-0d34-0410-b5e6-96231b3b80d8