/** * write the field, note the code could easily be extracted and templated but then would get * autoboxing and unable to optimise inlining * * @param encoder * @param mapWriter * @param value */ public double read(final FastFixDecodeBuilder encoder, final PresenceMapReader mapReader) { final int exp = _exp.read(encoder); if (exp != Constants.UNSET_INT) { final long mant = _mant.read(encoder); return _prevDecimal.set(exp, mant); } return Constants.UNSET_DOUBLE; }
@Override public boolean requiresPMap() { return _exp.requiresPMap() || _mant.requiresPMap(); }
@Override public void reset() { _prevDecimal.set(_initExp, _initMant); _exp.reset(); _mant.reset(); }
public double getInitValue(FastFixDecimal t) { return t.set(_exp.getInitValue(), _mant.getInitValue()); }