org.unlaxer.tinyexpression.CalculateContext Maven / Gradle / Ivy
package org.unlaxer.tinyexpression;
import java.math.RoundingMode;
import java.util.HashMap;
import java.util.Map;
import java.util.Optional;
public class CalculateContext{
public enum Angle{
RADIAN,DEGREE
}
public final int scale;
public final RoundingMode roundingMode;
public final Angle angle;
public final Map valueByName = new HashMap<>();
public final Map booleanByName = new HashMap<>();
public final Map stringByName = new HashMap<>();
public CalculateContext(int scale, RoundingMode roundingMode , Angle angle) {
super();
this.scale = scale;
this.roundingMode = roundingMode;
this.angle = angle;
}
public CalculateContext() {
this(10,RoundingMode.HALF_UP , Angle.DEGREE);
}
public void set(String name,String value) {
stringByName.put(name, value);
}
public Optional getString(String name){
return Optional.ofNullable(stringByName.get(name));
}
public void set(String name,float value) {
valueByName.put(name, value);
}
public Optional getValue(String name) {
return Optional.ofNullable(valueByName.get(name));
}
public void set(String name , boolean value) {
booleanByName.put(name, value);
}
public Optional getBoolean(String name){
return Optional.ofNullable(booleanByName.get(name));
}
public boolean isExists(String name) {
return valueByName.get(name) != null ||
booleanByName.get(name) != null ||
stringByName.get(name) != null;
}
} © 2015 - 2025 Weber Informatics LLC | Privacy Policy