[NonSerialized]
int default_calendar_type;
bool m_useUserOverride;
- [NonSerialized]
internal volatile NumberFormatInfo numInfo;
internal volatile DateTimeFormatInfo dateTimeInfo;
volatile TextInfo textInfo;
const int CalendarTypeBits = 8;
const string MSG_READONLY = "This instance is read only";
+
+ static volatile CultureInfo s_DefaultThreadCurrentUICulture;
+ static volatile CultureInfo s_DefaultThreadCurrentCulture;
public static CultureInfo InvariantCulture {
get {
get {
return Thread.CurrentThread.CurrentCulture;
}
+ set {
+ Thread.CurrentThread.CurrentCulture = value;
+ }
}
public static CultureInfo CurrentUICulture {
get {
return Thread.CurrentThread.CurrentUICulture;
}
+ set {
+ Thread.CurrentThread.CurrentUICulture = value;
+ }
}
internal static CultureInfo ConstructCurrentCulture ()
get { return territory; }
}
-#if !NET_2_1
// FIXME: It is implemented, but would be hell slow.
[ComVisible (false)]
public CultureTypes CultureTypes {
}
}
}
-#endif
public virtual int LCID {
get {
}
}
- internal void CheckNeutral ()
+ void CheckNeutral ()
{
}
public static CultureInfo DefaultThreadCurrentCulture {
get {
- return Thread.default_culture;
+ return s_DefaultThreadCurrentCulture;
}
set {
- Thread.default_culture = value;
+ s_DefaultThreadCurrentCulture = value;
}
}
public static CultureInfo DefaultThreadCurrentUICulture {
get {
- return Thread.default_ui_culture;
+ return s_DefaultThreadCurrentUICulture;
}
set {
- Thread.default_ui_culture = value;
+ s_DefaultThreadCurrentUICulture = value;
}
}
}
}
+ internal static CultureInfo UserDefaultUICulture {
+ get {
+ return ConstructCurrentUICulture ();
+ }
+ }
+
+ internal static CultureInfo UserDefaultCulture {
+ get {
+ return ConstructCurrentCulture ();
+ }
+ }
+
+
#region reference sources
// TODO:
internal static readonly bool IsTaiwanSku;
return true;
}
+ internal static bool VerifyCultureName(CultureInfo culture, bool throwException) {
+ Contract.Assert(culture!=null, "[CultureInfo.VerifyCultureName]culture!=null");
+
+ //If we have an instance of one of our CultureInfos, the user can't have changed the
+ //name and we know that all names are valid in files.
+ if (!culture.m_isInherited) {
+ return true;
+ }
+
+ return VerifyCultureName(culture.Name, throwException);
+
+ }
+
#endregion
}
}