Example #1
0
        public void RecordType()
        {
            RecordType r1 = new RecordType()
                            .Add(new NamedFormulaType("Num", FormulaType.Number))
                            .Add(new NamedFormulaType("B", FormulaType.Boolean));

            RecordType r2 = new RecordType()
                            .Add(new NamedFormulaType("B", FormulaType.Boolean))
                            .Add(new NamedFormulaType("Num", FormulaType.Number));

            // Structural equivalence
            Assert.Equal(r1, r2);

            // Test op==
            Assert.True(r1 == r2);
            Assert.False(null == r2);
            Assert.False(r1 == null);

            Assert.True(r1 != null);
            Assert.True(null != r1);
            Assert.False(r1 != r2);

            Assert.True(r1.Equals(r2));
            Assert.False(r1.Equals(null));


            Assert.Equal(r1.GetHashCode(), r2.GetHashCode());
        }
 public override int GetHashCode()
 {
     unchecked
     {
         return ((RecordType != null ? RecordType.GetHashCode() : 0) * 397) ^ (Id != null ? Id.GetHashCode() : 0);
     }
 }
 /**
  * Overriden, to return a value which is consistent with the value returned by equals(Object).
  */
 public override int GetHashCode()
 {
     return(Name.GetHashCode() + RecordType.GetHashCode() + RecordClass.GetHashCode());
 }