Model: add documentation
@@ -83,9 +83,19 @@ public abstract class AbstractModel<TFormulaInfo, TType, TEnv> implements Model
return evaluateImpl(creator.extractInfo(f));
}
+ /**
+ * Simplify the given formula and replace all symbols with their model values. If a symbol is not
+ * set in the model and evaluation aborts, return <code>null</code>.
+ */
@Nullable
protected abstract TFormulaInfo evalImpl(TFormulaInfo formula);
+ /**
+ * Simplify the given formula and replace all symbols with their model values. If a symbol is not
+ * set in the model and evaluation aborts, return <code>null</code>. Afterwards convert the
+ * formula into a Java object as far as possible, i.e., try to match a primitive or simple type.
+ */
+ @Nullable
protected abstract Object evaluateImpl(TFormulaInfo f);
@Override
