示例#1
0
 public override bool Lte(JSNumberValue value)
 {
     if (value.Type != JSValueType.Integer)
     {
         return(_value <= value.CastToFloat());
     }
     return(_value <= value.CastToInteger());
 }
示例#2
0
 public override JSNumberValue Mul(JSNumberValue value)
 {
     if (value.Type != JSValueType.Integer)
     {
         return(_value * value.CastToFloat());
     }
     return(unchecked (_value * value.CastToInteger()));
 }
示例#3
0
 public override JSNumberValue Mod(JSNumberValue value)
 {
     if (value.Type != JSValueType.Integer)
     {
         return(_value % value.CastToFloat());
     }
     return(_value % value.CastToInteger());
 }
示例#4
0
 public override bool Lte(JSNumberValue value)
 {
     return(_value <= value.CastToFloat());
 }
示例#5
0
 public override JSNumberValue Mod(JSNumberValue value)
 {
     return(_value % value.CastToFloat());
 }
示例#6
0
 public override JSNumberValue Minus(JSNumberValue value)
 {
     return(_value - value.CastToFloat());
 }
示例#7
0
 public abstract bool Lte(JSNumberValue value);
示例#8
0
 public override JSNumberValue ToNumber()
 {
     return(JSNumberValue.ParseNumber(_value));
 }
示例#9
0
 public JSNumberValue BitShrU(JSNumberValue value)
 {
     Contract.Requires(value != null);
     return((int)((uint)CastToInteger() >> value.CastToInteger()));
 }
示例#10
0
 public JSNumberValue BitShl(JSNumberValue value)
 {
     Contract.Requires(value != null);
     return(CastToInteger() << value.CastToInteger());
 }
示例#11
0
 public virtual JSNumberValue Mod(JSNumberValue value)
 {
     Contract.Requires(value != null);
     throw new NotSupportedException();
 }
示例#12
0
 public JSNumberValue FltDiv(JSNumberValue value)
 {
     Contract.Requires(value != null);
     return(CastToFloat() / value.CastToFloat());
 }
示例#13
0
 public JSNumberValue IntDiv(JSNumberValue value)
 {
     Contract.Requires(value != null);
     Contract.Ensures(Contract.Result <JSNumberValue>().Type == JSValueType.Integer);
     return(CastToInteger() / value.CastToInteger());
 }