1
0
mirror of https://github.com/DanilaFe/abacus synced 2024-07-02 07:21:24 -07:00
Abacus/src/main/java/org/nwapw/abacus/plugin/NumberImplementation.java

25 lines
765 B
Java
Raw Normal View History

package org.nwapw.abacus.plugin;
import org.nwapw.abacus.number.NumberInterface;
import java.util.HashMap;
import java.util.Map;
import java.util.function.Function;
public abstract class NumberImplementation {
protected Map<Class<? extends NumberInterface>, Function<NumberInterface, NumberInterface>> promotionPaths;
private Class<? extends NumberInterface> implementation;
private int priority;
public NumberImplementation(Class<? extends NumberInterface> implementation, int priority){
this.implementation = implementation;
this.priority = priority;
promotionPaths = new HashMap<>();
}
public abstract NumberInterface instanceForString(String string);
public abstract NumberInterface instanceForPi();
}