1
0
mirror of https://github.com/DanilaFe/abacus synced 2024-07-04 08:01:30 -07:00
Abacus/src/main/java/org/nwapw/abacus/plugin/NumberImplementation.java

25 lines
737 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 {
private Class<? extends NumberInterface> implementation;
private Map<String, Function<NumberInterface, NumberInterface>> promotionPaths;
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();
}