- IComparable icomparable = left.value as IComparable;
- if (icomparable == null)
- throw new ArgumentException ("At least one object must implement IComparable.");
- if (left.has_value == false && right.has_value == false)
- return 0;
- if (!left.has_value)
- return -1;
- if (!right.has_value)
- return 1;