code: public static ViewHolder obtain(View view) {
          if (view.getTag() instanceof ViewHolder) {
              return (ViewHolder) view.getTag();
          }
  
          return new ViewHolder(view);
      }
docs: Obtain instance based on passed <code>view</code>.
  Newly created instance of <code>ViewHolder</code> will be saved as a tag for passed <code>view</code>.
  Make sure the method {@link View#setTag(Object)} won't be invoked from other scopes.
  @param view not null
  @return not null