Development

NAVIGATION
CATEGORIES
REFERRENCE
LINKS
  • r65404 - trunk/mcs

    0 answers - 1658 bytes - related search similar search Add To My Delicious Add To My Stumble Upon Add To My Google Mark Add To My Facebook Add To My Digg Add To My Reddit

    Author: miguel
    Date: 2006-09-14 11:14:42 -0400 (Thu, 14 Sep 2006)
    New Revision: 65404
    Modified:
    trunk/mcs/CodingStyle
    Log:
    Update
    Modified: trunk/mcs/CodingStyle
    trunk/mcs/CodingStyle2006-09-14 15:08:15 UTC (rev 65403)
    trunk/mcs/CodingStyle2006-09-14 15:14:42 UTC (rev 65404)
    @@ -464,4 +464,44 @@
    }
    }
    }
    -
    +
    +* Conditional compilation
    +
    +Ideally we would not need conditional compilation, and the use
    +of #ifdef is strongly discouraged. But due to our support for
    +old C# 1.0 compilers we have to use it in a few places.
    +
    +Try to avoid negative tests that have an else clause, for
    +example:
    +
    + #if !NET_2_0
    + CDE_FR_1_0
    + #else
    +CDE_FR_2_0
    + #endif
    +
    + Instead use:
    +
    + #if NET_2_0
    + CDE_FR_2_0
    + #else
    + CDE_FR_1_0
    + #endif
    +
    +When a major feature differs across compilation targets, try
    +to factor out the code into a separate class, a helper class
    +or a separate file, and include that in your profile while
    +surrounding that helper file/class with the ifdefs to reduce
    +the amount of ifdefs in the code.
    +
    +For instance, this is used for some parts of Grasshopper where
    +the code is ifdefed out, when large parts of a file would have
    +been ifdefed out, we moved the code into a MFile.jvm.cs
    +
    +For 2.0 classes, this is even simpler as code can be trivially
    +factored out into
    +
    + MyHelperClass.cli.cs
    + MyHelperClass.jvm.cs
    +
    +By using partial classes.
    \ No newline at end of file
    Mono-patches maillist - Mono-patches (AT) lists (DOT) ximian.com

Re: r65404 - trunk/mcs


max 4000 letters.
Your nickname that display:
In order to stop the spam: 4 + 3 =
QUESTION ON "Development"

EMSDN.COM