예제 #1
0
            public int CompareTo(object obj)
            {
                if (obj is double)
                {
                    return(Value.CompareTo((int)(double)obj));
                }

                ArithmOperatorsTestClass other = obj as ArithmOperatorsTestClass;

                if (other == null)
                {
                    return(1);
                }
                return(Value.CompareTo(other.Value));
            }
예제 #2
0
            public override bool Equals(object obj)
            {
                if (obj is double)
                {
                    return(((double)obj) == Value);
                }

                ArithmOperatorsTestClass other = obj as ArithmOperatorsTestClass;

                if (other == null)
                {
                    return(false);
                }
                return(Value == other.Value);
            }
예제 #3
0
        private void OperatorTest(string code, int input, int output)
        {
            Script S = new Script();

            ArithmOperatorsTestClass obj = new ArithmOperatorsTestClass(input);

            UserData.RegisterType <ArithmOperatorsTestClass>();

            S.Globals.Set("o", UserData.Create(obj));

            DynValue v = S.DoString(code);

            Assert.AreEqual(DataType.Number, v.Type);
            Assert.AreEqual(output, v.Number);
        }
예제 #4
0
            public int CompareTo(object obj)
            {
                if (obj is double)
                {
                    return(Value.CompareTo((int)(double)obj));
                }

                if (!(obj is ArithmOperatorsTestClass))
                {
                    return(1);
                }

                ArithmOperatorsTestClass other = (ArithmOperatorsTestClass)obj;

                return(Value.CompareTo(other.Value));
            }
예제 #5
0
            public override bool Equals(object obj)
            {
                if (obj is double)
                {
                    return(((double)obj) == Value);
                }

                if (!(obj is ArithmOperatorsTestClass))
                {
                    return(false);
                }

                ArithmOperatorsTestClass other = (ArithmOperatorsTestClass)obj;

                return(Value == other.Value);
            }
예제 #6
0
		private void OperatorTest(string code, int input, int output)
		{
			Script S = new Script();

			ArithmOperatorsTestClass obj = new ArithmOperatorsTestClass(input);

			UserData.RegisterType<ArithmOperatorsTestClass>();

			S.Globals.Set("o", UserData.Create(obj));

			DynValue v = S.DoString(code);

			Assert.AreEqual(DataType.Number, v.Type);
			Assert.AreEqual(output, v.Number);
		}
예제 #7
0
파일: Chapter6.cs 프로젝트: cyecp/moonsharp
			public static int Concat(ArithmOperatorsTestClass o1, ArithmOperatorsTestClass o2)
			{
				return o1.Value + o2.Value;
			}
예제 #8
0
파일: Chapter6.cs 프로젝트: cyecp/moonsharp
			public static int Concat(int v, ArithmOperatorsTestClass o)
			{
				return o.Value + v;
			}
예제 #9
0
 public static int Concat(ArithmOperatorsTestClass o1, ArithmOperatorsTestClass o2)
 {
     return(o1.Value + o2.Value);
 }
예제 #10
0
 public static int Concat(int v, ArithmOperatorsTestClass o)
 {
     return(o.Value + v);
 }