All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.google.errorprone.refaster.AutoValue_UMatches Maven / Gradle / Ivy

There is a newer version: 2.27.1
Show newest version
package com.google.errorprone.refaster;

import com.google.errorprone.matchers.Matcher;
import com.sun.source.tree.ExpressionTree;
import javax.annotation.Generated;

@Generated("com.google.auto.value.processor.AutoValueProcessor")
final class AutoValue_UMatches extends UMatches {

  private final boolean positive;

  private final Class> matcherClass;

  private final UExpression expression;

  AutoValue_UMatches(
      boolean positive,
      Class> matcherClass,
      UExpression expression) {
    this.positive = positive;
    if (matcherClass == null) {
      throw new NullPointerException("Null matcherClass");
    }
    this.matcherClass = matcherClass;
    if (expression == null) {
      throw new NullPointerException("Null expression");
    }
    this.expression = expression;
  }

  @Override
  boolean positive() {
    return positive;
  }

  @Override
  Class> matcherClass() {
    return matcherClass;
  }

  @Override
  UExpression expression() {
    return expression;
  }

  @Override
  public String toString() {
    return "UMatches{"
         + "positive=" + positive + ", "
         + "matcherClass=" + matcherClass + ", "
         + "expression=" + expression
        + "}";
  }

  @Override
  public boolean equals(Object o) {
    if (o == this) {
      return true;
    }
    if (o instanceof UMatches) {
      UMatches that = (UMatches) o;
      return this.positive == that.positive()
          && this.matcherClass.equals(that.matcherClass())
          && this.expression.equals(that.expression());
    }
    return false;
  }

  @Override
  public int hashCode() {
    int h$ = 1;
    h$ *= 1000003;
    h$ ^= positive ? 1231 : 1237;
    h$ *= 1000003;
    h$ ^= matcherClass.hashCode();
    h$ *= 1000003;
    h$ ^= expression.hashCode();
    return h$;
  }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy