package com.datascience.utils; import com.datascience.core.base.ContValue; import com.google.common.reflect.TypeToken; /** * @Author: konrad */ public class Labels { static final public TypeToken<ContValue> contValue = new TypeToken<ContValue>() {}; static final public TypeToken<String> nominalValue = new TypeToken<String>() {}; static public <T, P> P returnForKind(TypeToken<T> labelType, P whenNominal, P whenCont) { if (contValue == labelType) { return whenNominal; } else if (nominalValue == labelType) { return whenCont; } throw new IllegalArgumentException("Unknown class: " + labelType); } static public <T, P> P returnForKind(P whenNominal, P whenCont) { TypeToken<T> token = new TypeToken<T>() {}; return returnForKind(token, whenNominal, whenCont); } }