diff options
author | 2012-03-30 22:47:44 +0900 | |
---|---|---|
committer | 2012-03-30 22:50:53 +0900 | |
commit | 672635493e1dc2baf9fd4a94e73c5b06d0450e7e (patch) | |
tree | ed00da60a91b020fbb4adc38ceb599849dae186a /java/src/com/android/inputmethod/compat/ArraysCompatUtils.java | |
parent | cba3887b2fd72cf9fe5505c90eb4ce8e81b92cfd (diff) | |
download | latinime-672635493e1dc2baf9fd4a94e73c5b06d0450e7e.tar.gz latinime-672635493e1dc2baf9fd4a94e73c5b06d0450e7e.tar.xz latinime-672635493e1dc2baf9fd4a94e73c5b06d0450e7e.zip |
Remove ArraysCompatUtils
bug: 6129704
Change-Id: I0f1a0dee744e6dcdea7ae8606119b4af22b86663
Diffstat (limited to 'java/src/com/android/inputmethod/compat/ArraysCompatUtils.java')
-rw-r--r-- | java/src/com/android/inputmethod/compat/ArraysCompatUtils.java | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/java/src/com/android/inputmethod/compat/ArraysCompatUtils.java b/java/src/com/android/inputmethod/compat/ArraysCompatUtils.java deleted file mode 100644 index 011473bef..000000000 --- a/java/src/com/android/inputmethod/compat/ArraysCompatUtils.java +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Copyright (C) 2011 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.android.inputmethod.compat; - -import android.util.Log; - -import java.lang.reflect.Method; -import java.util.Arrays; - -public class ArraysCompatUtils { - private static final String TAG = ArraysCompatUtils.class.getSimpleName(); - - private static final Method METHOD_Arrays_binarySearch = CompatUtils - .getMethod(Arrays.class, "binarySearch", int[].class, int.class, int.class, int.class); - - public static int binarySearch(int[] array, int startIndex, int endIndex, int value) { - if (METHOD_Arrays_binarySearch != null) { - final Object index = CompatUtils.invoke(null, 0, METHOD_Arrays_binarySearch, - array, startIndex, endIndex, value); - return (Integer)index; - } else { - return compatBinarySearch(array, startIndex, endIndex, value); - } - } - - // TODO: Implement fast binary search - /* package for testing */ - static int compatBinarySearch(int[] array, int startIndex, int endIndex, int value) { - // Output error log because this method has strict performance penalty. - // Note that this method has been called only from spell checker and spell checker exists - // only from IceCreamSandwich and after, so that there is no chance on pre-ICS device to - // invoke this method. - Log.e(TAG, "Invoked expensive binarySearch"); - - if (startIndex > endIndex) throw new IllegalArgumentException(); - if (startIndex < 0 || endIndex > array.length) throw new ArrayIndexOutOfBoundsException(); - - final int work[] = new int[endIndex - startIndex]; - System.arraycopy(array, startIndex, work, 0, work.length); - final int index = Arrays.binarySearch(work, value); - if (index >= 0) { - return index + startIndex; - } else { - return ~(~index + startIndex); - } - } -} |