예제 #1
0
파일: LispNumber.cs 프로젝트: nja/keel
 public abstract LispNumber Add(LispDouble addend);
예제 #2
0
파일: LispNumber.cs 프로젝트: nja/keel
 protected static bool NumberEquals(LispBigInteger a, LispDouble b)
 {
     return IsIntegral(b.Value) && a.Value == (BigInteger)b.Value;
 }
예제 #3
0
파일: LispNumber.cs 프로젝트: nja/keel
 protected bool NumberEquals(LispDouble a, LispDouble b)
 {
     return a.Value == b.Value;
 }
예제 #4
0
파일: LispInteger.cs 프로젝트: nja/keel
 public override LispNumber Add(LispDouble addend)
 {
     return Add((LispDouble)this, addend);
 }
예제 #5
0
파일: LispNumber.cs 프로젝트: nja/keel
 protected static bool NumberEquals(LispInteger a, LispDouble b)
 {
     return a.Value == b.Value;
 }
예제 #6
0
파일: LispNumber.cs 프로젝트: nja/keel
 public abstract LispNumber DivideInto(LispDouble dividend);
예제 #7
0
파일: LispNumber.cs 프로젝트: nja/keel
 public abstract bool NumberEquals(LispDouble number);
예제 #8
0
파일: LispBigInteger.cs 프로젝트: nja/keel
 public override LispNumber DivideBy(LispDouble divisor)
 {
     return Divide((LispDouble)this, divisor);
 }
예제 #9
0
파일: LispNumber.cs 프로젝트: nja/keel
 protected static int Compare(LispInteger a, LispDouble b)
 {
     return ((double)a.Value).CompareTo(b.Value);
 }
예제 #10
0
파일: LispBigInteger.cs 프로젝트: nja/keel
 public override LispNumber Add(LispDouble addend)
 {
     return new LispDouble(this).Add(addend);
 }
예제 #11
0
파일: LispBigInteger.cs 프로젝트: nja/keel
 public override int CompareTo(LispDouble number)
 {
     return Compare(this, number);
 }
예제 #12
0
파일: LispBigInteger.cs 프로젝트: nja/keel
 public override bool NumberEquals(LispDouble number)
 {
     return NumberEquals(this, number);
 }
예제 #13
0
파일: LispBigInteger.cs 프로젝트: nja/keel
 public override LispNumber Multiply(LispDouble factor)
 {
     return Multiply((LispDouble)this, factor);
 }
예제 #14
0
파일: LispBigInteger.cs 프로젝트: nja/keel
 public override LispNumber DivideInto(LispDouble dividend)
 {
     return Divide(dividend, (LispDouble)this);
 }
예제 #15
0
파일: LispNumber.cs 프로젝트: nja/keel
 public abstract int CompareTo(LispDouble number);
예제 #16
0
파일: LispNumber.cs 프로젝트: nja/keel
        protected static int Compare(LispBigInteger a, LispDouble b)
        {
            var truncatedB = new BigInteger(b.Value);

            var truncatedCompare = a.Value.CompareTo(truncatedB);

            if (truncatedCompare == 0)
            {
                return -Math.Truncate(b.Value).CompareTo(b.Value);
            }

            return truncatedCompare;
        }
예제 #17
0
파일: LispNumber.cs 프로젝트: nja/keel
 public abstract LispNumber DivideBy(LispDouble divisor);
예제 #18
0
파일: LispNumber.cs 프로젝트: nja/keel
 protected static LispNumber Divide(LispDouble dividend, LispDouble divisor)
 {
     return MakeNumber(dividend.Value / divisor.Value);
 }
예제 #19
0
파일: LispNumber.cs 프로젝트: nja/keel
 public abstract LispNumber Multiply(LispDouble factor);
예제 #20
0
파일: LispNumber.cs 프로젝트: nja/keel
 protected static LispNumber Multiply(LispDouble a, LispDouble b)
 {
     return MakeNumber(a.Value * b.Value);
 }
예제 #21
0
파일: LispNumber.cs 프로젝트: nja/keel
 protected static LispNumber Add(LispDouble a, LispDouble b)
 {
     return MakeNumber(a.Value + b.Value);
 }
예제 #22
0
파일: LispDouble.cs 프로젝트: nja/keel
 public override int CompareTo(LispDouble number)
 {
     return Value.CompareTo(number.Value);
 }