public static void encode(double self, ObjEncoder @out)
{
if (System.Double.IsNaN(self)) @out.w("sys::Float(\"NaN\")");
else if (self == System.Double.PositiveInfinity) @out.w("sys::Float(\"INF\")");
else if (self == System.Double.NegativeInfinity) @out.w("sys::Float(\"-INF\")");
else @out.w(toStr(self)).w("f");
}