4#include <system/globalization/number_format_info.h> 
    5#include <system/globalization/date_time_format_info.h> 
    6#include <system/globalization/calendar.h> 
    7#include <system/globalization/culture_types.h> 
    8#include <system/globalization/compare_info.h> 
    9#include <system/globalization/text_info.h> 
   10#include <system/icloneable.h> 
   11#include <system/iformatprovider.h> 
   12#include <system/nullable.h> 
   13#include <system/globalization/details/culture_data_ptr.h> 
   14#include <system/details/lazy.h> 
   15#include <system/details/spin_lock.h> 
   17namespace System { 
namespace Globalization {
 
   43    ASPOSECPP_SHARED_API 
CultureInfo(
int culture, 
bool use_user_override);
 
  235    template <
typename T>
 
  236    using Lazy = System::Details::Lazy<T>;
 
  238    using Lock = System::Details::OptionalSpinLock;
 
  239    using LockContext = std::lock_guard<Lock>;
 
  242    const bool m_is_read_only = 
false;
 
  244    const bool m_use_user_override = 
false;
 
  248    const String m_text_and_compare_culture_name;
 
  250    mutable Lock m_lockable;
 
  255    mutable Lazy<const CultureInfoPtr> m_parent;
 
  257    mutable Lazy<const TextInfoPtr> m_text_info;
 
  259    mutable Lazy<const CompareInfoPtr> m_compare_info;
 
  261    mutable Lazy<const CalendarPtr> m_calendar;
 
  263    mutable Lazy<const ArrayPtr<CalendarPtr>> m_optional_calendars;
 
  265    mutable Lazy<NumberFormatInfoPtr> m_number_format;
 
  267    mutable Lazy<DateTimeFormatInfoPtr> m_date_time_format;
 
  273    MEMBER_FUNCTION_MAKE_OBJECT(
CultureInfo, CODEPORTING_ARGS(
const String& name, 
const String& text_and_compare_culture_name), CODEPORTING_ARGS(name, text_and_compare_culture_name));
 
  279    MEMBER_FUNCTION_MAKE_OBJECT(
CultureInfo, CODEPORTING_ARGS(
const CultureInfo& other, 
bool is_read_only = 
false), CODEPORTING_ARGS(other, is_read_only));
 
  288    void VerifyWriteable() 
const;
 
Collection of culture-specific values and algorithms. Setter operations are only enabled on non-read-...
Definition: culture_info.h:32
 
static void set_CurrentCulture(const CultureInfoPtr &value)
Sets culture for current thread.
 
bool Equals(SharedPtr< Object > obj) override
Compares objects.
 
CultureInfoPtr GetConsoleFallbackUICulture() const
Gets alternate culture suitable for console applications.
 
virtual String get_ThreeLetterWindowsLanguageName() const
Gets three-letter code for language as defined in Windows API.
 
static CultureInfoPtr CreateSpecificCulture(const String &name)
Creates culture by name.
 
bool operator==(const CultureInfo &other) const
Compares culture parameters.
 
SharedPtr< Object > GetFormat(const TypeInfo &format_type) override
Gets format object for specific type.
 
CultureInfo(const String &name)
Constructor.
 
virtual String get_Name() const
Gets culture name.
 
virtual CompareInfoPtr get_CompareInfo() const
Gets string comparer that adheres to culture rules.
 
CultureInfo(int culture, bool use_user_override)
Constructor.
 
virtual String get_NativeName() const
Gets culture native name.
 
static const CultureInfoPtr & get_InstalledUICulture()
Gets culture installed with the operating system.
 
virtual ArrayPtr< CalendarPtr > get_OptionalCalendars() const
List of calendars that can be used with the culture.
 
int GetHashCode() const override
Returns object hash code.
 
CultureInfo(const String &name, bool use_user_override)
Constructor.
 
virtual int get_KeyboardLayoutId() const
Gets active input locale identifier.
 
virtual CalendarPtr get_Calendar() const
Gets calendar used by the culture.
 
~CultureInfo() override
Destructor.
 
static CultureInfoPtr GetCultureInfo(const String &name)
Gets culture by its name. Same as CreateSpecificCulture.
 
static CultureInfoPtr get_DefaultThreadCurrentUICulture()
Gets default UI culture in the current application domain.
 
void ClearCachedData()
Refreshes cached culture information.
 
static const CultureInfoPtr & get_CurrentCulture()
Gets culture set for current thread.
 
bool get_UseUserOverride() const
Gets a flag indicating whether the CultureInfo uses user-selected culture settings.
 
CultureTypes get_CultureTypes() const
Gets bitwise joint of culture types that describe the current culture.
 
virtual String get_DisplayName() const
Gets culture display name.
 
static void set_DefaultThreadCurrentUICulture(const CultureInfoPtr &value)
Sets default UI culture in the current application domain.
 
static void set_DefaultThreadCurrentCulture(const CultureInfoPtr &value)
Sets default culture in the current application domain.
 
static CultureInfoPtr ReadOnly(const CultureInfoPtr &culture_info)
Gets a read only version of culture.
 
virtual int get_LCID() const
Gets culture identifier.
 
virtual String get_TwoLetterISOLanguageName() const
Gets two letters ISO language name associated with culture.
 
virtual void set_DateTimeFormat(DateTimeFormatInfoPtr value)
Sets date format information.
 
static ArrayPtr< CultureInfoPtr > GetCultures(CultureTypes types)
Gets cultures that fall into specified types.
 
bool get_IsReadOnly() const
Checks if culture object is read-only.
 
static CultureInfoPtr GetCultureInfo(const String &name, const String &text_and_compare_culture_name)
Gets culture by its name.
 
virtual TextInfoPtr get_TextInfo() const
Gets text parameters used by the culture.
 
static const CultureInfoPtr & get_InvariantCulture()
Gets invariant culture.
 
static void set_CurrentUICulture(const CultureInfoPtr &value)
Sets current thread's UI culture.
 
virtual CultureInfoPtr get_Parent() const
Gets parent culture.
 
CultureInfo(std::nullptr_t)
Always throws ArgumentNullException.
 
String get_IetfLanguageTag() const
Gets the RFC 4646 name for a language.
 
virtual String get_ThreeLetterISOLanguageName() const
Gets three-letter ISO 639-2 language code.
 
static const CultureInfoPtr & get_CurrentUICulture()
Gets current thread's UI culture.
 
static CultureInfoPtr get_DefaultThreadCurrentCulture()
Gets default culture in the current application domain.
 
virtual NumberFormatInfoPtr get_NumberFormat() const
Gets number format information.
 
static CultureInfoPtr GetCultureInfo(int32_t culture)
Gets culture by id.
 
virtual DateTimeFormatInfoPtr get_DateTimeFormat() const
Gets date format information.
 
SharedPtr< Object > Clone() override
Clones culture info.
 
bool IsInherited() const
Gets is-inherited flag. FOR INTERNAL USE.
 
CultureInfo(int culture)
RTTI information.
 
virtual String get_EnglishName() const
Gets culture English name.
 
String ToString() const override
Converts culture to string.
 
static CultureInfoPtr GetCultureInfoByIetfLanguageTag(const String &name)
Deprecated. Gets a read-only CultureInfo object by the specified RFC 4646 language tag.
 
virtual void set_NumberFormat(NumberFormatInfoPtr value)
Gets number format information.
 
CultureInfo & operator=(const CultureInfo &)=delete
 
virtual bool get_IsNeutralCulture() const
Checks whether the culture is neutral.
 
Defies a method that enables object cloning - creating a copy of an object. Objects of this class sho...
Definition: icloneable.h:16
 
Base class that enables using methods available for System.Object class in C#. All non-trivial classe...
Definition: object.h:62
 
Pointer class to wrap types being allocated on heap. Use it to manage memory for classes inheriting O...
Definition: smart_ptr.h:180
 
String class used across the library. Is a substitute for C# System.String when translating code....
Definition: string.h:122
 
Represents a particular type and provides information about it.
Definition: type_info.h:109
 
std::shared_ptr< CultureData > CultureDataPtr
Pointer to hold implementation type.
Definition: culture_data_ptr.h:12
 
SharedPtr< CultureInfo > CultureInfoPtr
CultureInfo pointer type.
Definition: culture_info.h:21
 
CultureTypes
Culture categories bitmask entries.
Definition: culture_types.h:12
 
Definition: db_command.h:9