hydra.query.ComparisonConstraint Maven / Gradle / Ivy
package hydra.query;
import java.io.Serializable;
/**
* One of several comparison operators
*/
public abstract class ComparisonConstraint implements Serializable {
public static final hydra.core.Name NAME = new hydra.core.Name("hydra/query.ComparisonConstraint");
private ComparisonConstraint () {
}
public abstract R accept(Visitor visitor) ;
public interface Visitor {
R visit(Equal instance) ;
R visit(NotEqual instance) ;
R visit(LessThan instance) ;
R visit(GreaterThan instance) ;
R visit(LessThanOrEqual instance) ;
R visit(GreaterThanOrEqual instance) ;
}
public interface PartialVisitor extends Visitor {
default R otherwise(ComparisonConstraint instance) {
throw new IllegalStateException("Non-exhaustive patterns when matching: " + (instance));
}
default R visit(Equal instance) {
return otherwise((instance));
}
default R visit(NotEqual instance) {
return otherwise((instance));
}
default R visit(LessThan instance) {
return otherwise((instance));
}
default R visit(GreaterThan instance) {
return otherwise((instance));
}
default R visit(LessThanOrEqual instance) {
return otherwise((instance));
}
default R visit(GreaterThanOrEqual instance) {
return otherwise((instance));
}
}
public static final class Equal extends hydra.query.ComparisonConstraint implements Serializable {
public Equal () {
}
@Override
public boolean equals(Object other) {
if (!(other instanceof Equal)) {
return false;
}
Equal o = (Equal) (other);
return true;
}
@Override
public int hashCode() {
return 0;
}
@Override
public R accept(Visitor visitor) {
return visitor.visit(this);
}
}
public static final class NotEqual extends hydra.query.ComparisonConstraint implements Serializable {
public NotEqual () {
}
@Override
public boolean equals(Object other) {
if (!(other instanceof NotEqual)) {
return false;
}
NotEqual o = (NotEqual) (other);
return true;
}
@Override
public int hashCode() {
return 0;
}
@Override
public R accept(Visitor visitor) {
return visitor.visit(this);
}
}
public static final class LessThan extends hydra.query.ComparisonConstraint implements Serializable {
public LessThan () {
}
@Override
public boolean equals(Object other) {
if (!(other instanceof LessThan)) {
return false;
}
LessThan o = (LessThan) (other);
return true;
}
@Override
public int hashCode() {
return 0;
}
@Override
public R accept(Visitor visitor) {
return visitor.visit(this);
}
}
public static final class GreaterThan extends hydra.query.ComparisonConstraint implements Serializable {
public GreaterThan () {
}
@Override
public boolean equals(Object other) {
if (!(other instanceof GreaterThan)) {
return false;
}
GreaterThan o = (GreaterThan) (other);
return true;
}
@Override
public int hashCode() {
return 0;
}
@Override
public R accept(Visitor visitor) {
return visitor.visit(this);
}
}
public static final class LessThanOrEqual extends hydra.query.ComparisonConstraint implements Serializable {
public LessThanOrEqual () {
}
@Override
public boolean equals(Object other) {
if (!(other instanceof LessThanOrEqual)) {
return false;
}
LessThanOrEqual o = (LessThanOrEqual) (other);
return true;
}
@Override
public int hashCode() {
return 0;
}
@Override
public R accept(Visitor visitor) {
return visitor.visit(this);
}
}
public static final class GreaterThanOrEqual extends hydra.query.ComparisonConstraint implements Serializable {
public GreaterThanOrEqual () {
}
@Override
public boolean equals(Object other) {
if (!(other instanceof GreaterThanOrEqual)) {
return false;
}
GreaterThanOrEqual o = (GreaterThanOrEqual) (other);
return true;
}
@Override
public int hashCode() {
return 0;
}
@Override
public R accept(Visitor visitor) {
return visitor.visit(this);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy