package uva.ql.ast.value; import java.util.Arrays; import java.util.List; import uva.ql.ast.type.Type; import uva.ql.ast.type.TypeBoolean; public class BooleanValue extends GenericValue<Boolean> { private boolean value; public BooleanValue(boolean _value){ this.value = _value; } public BooleanValue and(BooleanValue value){ return new BooleanValue(this.value && value.value); } public BooleanValue or(BooleanValue value){ return new BooleanValue(this.value || value.value); } @Override public Boolean getValue() { return this.value; } @Override public List<Type> valueHasType() { return Arrays.asList(new TypeBoolean()); } @Override public boolean equalsTo(GenericValue<?> value) { if (value == null){ return false; } return value.getValue() == this.getValue(); } @Override public String toString(){ return String.valueOf(this.value); } }