예제 #1
0
        /// <summary>
        /// Determine semantic equality between this and <paramref name="other"/>
        /// </summary>
        public override BL SemanticEquals(IAny other)
        {
            var baseEq = base.SemanticEquals(other);

            if (!(bool)baseEq)
            {
                return(baseEq);
            }

            // Null-flavored
            if (this.IsNull && other.IsNull)
            {
                return(true);
            }
            else if (this.IsNull ^ other.IsNull)
            {
                return(false);
            }

            EIVL <T> eivlOther = (EIVL <T>)other;

            if (eivlOther == null)
            {
                return(false);
            }
            else
            {
                return
                    ((eivlOther.Event == null ? this.Event == null : (bool)eivlOther.Event.SemanticEquals(this.Event))
                     &&
                     (eivlOther.Offset == null ? this.Offset == null : (bool)eivlOther.Offset.SemanticEquals(this.Offset)));
            }
        }
예제 #2
0
        /// <summary>
        /// Determines if this instance of EIVL of T is equal to another instance of EIVL of T
        /// </summary>
        public bool Equals(EIVL <T> other)
        {
            bool result = false;

            if (other != null)
            {
                result = base.Equals((SXCM <T>)other) &&
                         (other.Event != null ? other.Event.Equals(this.Event) : this.Event == null) &&
                         (other.Offset != null ? other.Offset.Equals(this.Offset) : this.Offset == null) &&
                         (other.Value != null ? other.Value.Equals(this.Value) : this.Value == null);
            }
            return(result);
        }
예제 #3
0
 /// <summary>
 /// Create a new instance of the GTS class with the specified <paramref name="hull"/>
 /// </summary>
 public GTS(EIVL <TS> hull)
     : base()
 {
     this.Hull = hull;
 }