@Override @Nonnull public AbstractJSAtomNumeric numericMinus () { return new JSAtomDecimal (-m_dValue); }
@Override @Nonnull public AbstractJSAtomNumeric numericIncr () { return new JSAtomDecimal (m_dValue + 1); }
@Override @Nonnull public AbstractJSAtomNumeric numericMinus () { return new JSAtomDecimal (-m_dValue); }
@Override @Nonnull public AbstractJSAtomNumeric numericIncr () { return new JSAtomDecimal (m_dValue + 1); }
@Override @Nonnull public AbstractJSAtomNumeric numericDecr () { return new JSAtomDecimal (m_dValue - 1); }
@Override @Nonnull public AbstractJSAtomNumeric numericMod (@Nonnull final AbstractJSAtomNumeric aRhs) { return new JSAtomDecimal (m_dValue % aRhs.doubleValue ()); }
@Override @Nonnull public AbstractJSAtomNumeric numericPlus (@Nonnull final AbstractJSAtomNumeric aRhs) { return new JSAtomDecimal (m_dValue + aRhs.doubleValue ()); }
@Override @Nonnull public AbstractJSAtomNumeric numericMod (@Nonnull final AbstractJSAtomNumeric aRhs) { return new JSAtomDecimal (m_dValue % aRhs.doubleValue ()); }
@Nonnull public static AbstractJSExpression lit (final float fValue) { if (Float.isNaN (fValue)) return JSPrimitiveType.NUMBER.nan (); return new JSAtomDecimal (fValue); }
@Nonnull public static AbstractJSExpression lit (final double dValue) { if (Double.isNaN (dValue)) return JSPrimitiveType.NUMBER.nan (); return new JSAtomDecimal (dValue); }
@Override @Nonnull public AbstractJSAtomNumeric numericDiv (@Nonnull final AbstractJSAtomNumeric aRhs) { return new JSAtomDecimal (m_dValue / aRhs.doubleValue ()); }
@Nonnull public static AbstractJSExpression lit (final double dValue) { if (Double.isNaN (dValue)) return JSPrimitiveType.NUMBER.nan (); return new JSAtomDecimal (dValue); }
@Override @Nonnull public AbstractJSAtomNumeric numericMinus (@Nonnull final AbstractJSAtomNumeric aRhs) { return new JSAtomDecimal (m_dValue - aRhs.doubleValue ()); }
@Override @Nonnull public AbstractJSAtomNumeric numericMinus (@Nonnull final AbstractJSAtomNumeric aRhs) { return new JSAtomDecimal (m_dValue - aRhs.doubleValue ()); }
@Override @Nonnull public AbstractJSAtomNumeric numericMul (@Nonnull final AbstractJSAtomNumeric aRhs) { if (aRhs.isDecimalValue ()) return new JSAtomDecimal (m_nValue * aRhs.doubleValue ()); return new JSAtomInt (m_nValue * (long) aRhs.doubleValue ()); }
@Override @Nonnull public AbstractJSAtomNumeric numericPlus (@Nonnull final AbstractJSAtomNumeric aRhs) { if (aRhs.isDecimalValue ()) return new JSAtomDecimal (m_nValue + aRhs.doubleValue ()); return new JSAtomInt (m_nValue + (long) aRhs.doubleValue ()); }
@Override @Nonnull public AbstractJSAtomNumeric numericMod (@Nonnull final AbstractJSAtomNumeric aRhs) { if (aRhs.isDecimalValue ()) return new JSAtomDecimal (m_nValue % aRhs.doubleValue ()); return new JSAtomInt (m_nValue % (long) aRhs.doubleValue ()); }
@Override @Nonnull public AbstractJSAtomNumeric numericPlus (@Nonnull final AbstractJSAtomNumeric aRhs) { if (aRhs.isDecimalValue ()) return new JSAtomDecimal (m_nValue + aRhs.doubleValue ()); return new JSAtomInt (m_nValue + (long) aRhs.doubleValue ()); }
@Override @Nonnull public AbstractJSAtomNumeric numericMinus (@Nonnull final AbstractJSAtomNumeric aRhs) { if (aRhs.isDecimalValue ()) return new JSAtomDecimal (m_nValue - aRhs.doubleValue ()); return new JSAtomInt (m_nValue - (long) aRhs.doubleValue ()); }
@Override @Nonnull public AbstractJSAtomNumeric numericMul (@Nonnull final AbstractJSAtomNumeric aRhs) { if (aRhs.isDecimalValue ()) return new JSAtomDecimal (m_nValue * aRhs.doubleValue ()); return new JSAtomInt (m_nValue * (long) aRhs.doubleValue ()); }