// Path: LoopBar-widget/src/main/java/com/cleveroad/loopbar/widget/OnItemClickListener.java
// public interface OnItemClickListener {
// 
//     /**
//      * Must be called when user clicks on item in LoopBar
//      *
//      * @param position int value of item position in LoopBar
//      */
//     void onItemClicked(int position);
// }


import android.view.View;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.RecyclerView;
import com.cleveroad.loopbar.widget.OnItemClickListener;
import java.lang.ref.WeakReference;
package com.cleveroad.loopbar.adapter;





/**
 * Base realization of ViewHolder {@link  androidx.recyclerview.widget.RecyclerView.ViewHolder}
 *
 * @param <T> Type of models for displaying in ViewHolder
 */
@SuppressWarnings("WeakerAccess")
public abstract class BaseRecyclerViewHolder<T> extends RecyclerView.ViewHolder implements View.OnClickListener {

    protected static final int KEY_VIEW_TAG = -1;
    private static final String TAG_ITEM_VIEW = "itemView";
    private T item;
    @Nullable
// Path: LoopBar-widget/src/main/java/com/cleveroad/loopbar/widget/OnItemClickListener.java
// public interface OnItemClickListener {
// 
//     /**
//      * Must be called when user clicks on item in LoopBar
//      *
//      * @param position int value of item position in LoopBar
//      */
//     void onItemClicked(int position);
// }


// Path: LoopBar-widget/src/main/java/com/cleveroad/loopbar/adapter/BaseRecyclerViewHolder.java
import android.view.View;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.RecyclerView;
import com.cleveroad.loopbar.widget.OnItemClickListener;
import java.lang.ref.WeakReference;

package com.cleveroad.loopbar.adapter;





/**
 * Base realization of ViewHolder {@link  androidx.recyclerview.widget.RecyclerView.ViewHolder}
 *
 * @param <T> Type of models for displaying in ViewHolder
 */
@SuppressWarnings("WeakerAccess")
public abstract class BaseRecyclerViewHolder<T> extends RecyclerView.ViewHolder implements View.OnClickListener {

    protected static final int KEY_VIEW_TAG = -1;
    private static final String TAG_ITEM_VIEW = "itemView";
    private T item;
    @Nullable
    private WeakReference<OnItemClickListener> mWeakRefListener;