See code below. There is a squigley red line under first > second Operator cannot be applied to operands OBJ and OBJ.
Is there some easy way to do what is intended here?
public static OBJ Swap<OBJ>(ref OBJ first, ref OBJ second) where OBJ : IComparable
{
OBJ temp = first;
OBJ temp2 = second;
second = temp;
first = temp2;
if (first > second) return first else return second;
}