示例#1
0
        public override int GetHashCode()
        {
            switch (Kind)
            {
            case JObjectKind.Array:
                return(ArrayValue.GetHashCode());

            case JObjectKind.Boolean:
                return(BooleanValue.GetHashCode());

            case JObjectKind.Null:
                return(0);

            case JObjectKind.Object:
                return(ObjectValue.GetHashCode());

            case JObjectKind.String:
                return(StringValue.GetHashCode());

            case JObjectKind.Number:
                if (IsFractional)
                {
                    return(DoubleValue.GetHashCode());
                }
                if (IsNegative)
                {
                    return(LongValue.GetHashCode());
                }
                return(ULongValue.GetHashCode());
            }
            return(0);
        }
示例#2
0
 public override int ComputeHash()
 {
     return(Array.GetHashCode());
 }