int indexInTypesOf(int position, @NonNull Object item) throws BinderNotFoundException { int index = typePool.firstIndexOf(item.getClass()); if (index != -1) { @SuppressWarnings("unchecked") Linker<Object> linker = (Linker<Object>) typePool.getLinker(index); return index + linker.index(position, item); } throw new BinderNotFoundException(item.getClass()); }