package com.google.common.base;

import java.io.Serializable;
import javax.annotation.Nullable;

public final class Predicates
{
  private static final Joiner COMMA_JOINER = Joiner.on(",");

  public static <T> Predicate<T> equalTo(@Nullable T paramT)
  {
    if (paramT == null)
      return isNull();
    return new IsEqualToPredicate(paramT, null);
  }

  public static <T> Predicate<T> isNull()
  {
    return ObjectPredicate.IS_NULL.withNarrowedType();
  }

  public static <T> Predicate<T> not(Predicate<T> paramPredicate)
  {
    return new NotPredicate(paramPredicate);
  }

  private static class IsEqualToPredicate<T>
    implements Predicate<T>, Serializable
  {
    private final T target;

    private IsEqualToPredicate(T paramT)
    {
      this.target = paramT;
    }

    public boolean apply(T paramT)
    {
      return this.target.equals(paramT);
    }

    public boolean equals(@Nullable Object paramObject)
    {
      if ((paramObject instanceof IsEqualToPredicate))
      {
        IsEqualToPredicate localIsEqualToPredicate = (IsEqualToPredicate)paramObject;
        return this.target.equals(localIsEqualToPredicate.target);
      }
      return false;
    }

    public int hashCode()
    {
      return this.target.hashCode();
    }

    public String toString()
    {
      return "IsEqualTo(" + this.target + ")";
    }
  }

  private static class NotPredicate<T>
    implements Predicate<T>, Serializable
  {
    final Predicate<T> predicate;

    NotPredicate(Predicate<T> paramPredicate)
    {
      this.predicate = ((Predicate)Preconditions.checkNotNull(paramPredicate));
    }

    public boolean apply(@Nullable T paramT)
    {
      return !this.predicate.apply(paramT);
    }

    public boolean equals(@Nullable Object paramObject)
    {
      if ((paramObject instanceof NotPredicate))
      {
        NotPredicate localNotPredicate = (NotPredicate)paramObject;
        return this.predicate.equals(localNotPredicate.predicate);
      }
      return false;
    }

    public int hashCode()
    {
      return 0xFFFFFFFF ^ this.predicate.hashCode();
    }

    public String toString()
    {
      return "Not(" + this.predicate.toString() + ")";
    }
  }

  static abstract enum ObjectPredicate
    implements Predicate<Object>
  {
    static
    {
      // Byte code:
      //   0: new 18	com/google/common/base/Predicates$ObjectPredicate$1
      //   3: dup
      //   4: ldc 19
      //   6: iconst_0
      //   7: invokespecial 23	com/google/common/base/Predicates$ObjectPredicate$1:<init>	(Ljava/lang/String;I)V
      //   10: putstatic 25	com/google/common/base/Predicates$ObjectPredicate:ALWAYS_TRUE	Lcom/google/common/base/Predicates$ObjectPredicate;
      //   13: new 27	com/google/common/base/Predicates$ObjectPredicate$2
      //   16: dup
      //   17: ldc 28
      //   19: iconst_1
      //   20: invokespecial 29	com/google/common/base/Predicates$ObjectPredicate$2:<init>	(Ljava/lang/String;I)V
      //   23: putstatic 31	com/google/common/base/Predicates$ObjectPredicate:ALWAYS_FALSE	Lcom/google/common/base/Predicates$ObjectPredicate;
      //   26: new 33	com/google/common/base/Predicates$ObjectPredicate$3
      //   29: dup
      //   30: ldc 34
      //   32: iconst_2
      //   33: invokespecial 35	com/google/common/base/Predicates$ObjectPredicate$3:<init>	(Ljava/lang/String;I)V
      //   36: putstatic 37	com/google/common/base/Predicates$ObjectPredicate:IS_NULL	Lcom/google/common/base/Predicates$ObjectPredicate;
      //   39: new 39	com/google/common/base/Predicates$ObjectPredicate$4
      //   42: dup
      //   43: ldc 40
      //   45: iconst_3
      //   46: invokespecial 41	com/google/common/base/Predicates$ObjectPredicate$4:<init>	(Ljava/lang/String;I)V
      //   49: putstatic 43	com/google/common/base/Predicates$ObjectPredicate:NOT_NULL	Lcom/google/common/base/Predicates$ObjectPredicate;
      //   52: iconst_4
      //   53: anewarray 2	com/google/common/base/Predicates$ObjectPredicate
      //   56: astore_0
      //   57: aload_0
      //   58: iconst_0
      //   59: getstatic 25	com/google/common/base/Predicates$ObjectPredicate:ALWAYS_TRUE	Lcom/google/common/base/Predicates$ObjectPredicate;
      //   62: aastore
      //   63: aload_0
      //   64: iconst_1
      //   65: getstatic 31	com/google/common/base/Predicates$ObjectPredicate:ALWAYS_FALSE	Lcom/google/common/base/Predicates$ObjectPredicate;
      //   68: aastore
      //   69: aload_0
      //   70: iconst_2
      //   71: getstatic 37	com/google/common/base/Predicates$ObjectPredicate:IS_NULL	Lcom/google/common/base/Predicates$ObjectPredicate;
      //   74: aastore
      //   75: aload_0
      //   76: iconst_3
      //   77: getstatic 43	com/google/common/base/Predicates$ObjectPredicate:NOT_NULL	Lcom/google/common/base/Predicates$ObjectPredicate;
      //   80: aastore
      //   81: aload_0
      //   82: putstatic 45	com/google/common/base/Predicates$ObjectPredicate:$VALUES	[Lcom/google/common/base/Predicates$ObjectPredicate;
      //   85: return
    }

    <T> Predicate<T> withNarrowedType()
    {
      return this;
    }
  }
}

/* Location:           C:\Documents and Settings\Cesar Cabello Cea\Mis documentos\Downloads\apk-downloader\com.ikea.kompis-6_dex2jar.jar
 * Qualified Name:     com.google.common.base.Predicates
 * JD-Core Version:    0.6.2
 */