24 #if !UCONFIG_NO_FORMATTING
42 class DateTimePatternGenerator;
45 #if defined (_MSC_VER)
166 kDateOffset = kShort + 1,
175 kDateTimeOffset = kDateTime + 1,
182 kRelative = (1 << 7),
184 kFullRelative = (kFull | kRelative),
186 kLongRelative = kLong | kRelative,
188 kMediumRelative = kMedium | kRelative,
190 kShortRelative = kShort | kRelative,
206 DATE_OFFSET = kDateOffset,
208 DATE_TIME = kDateTime
224 using Format::format;
518 static DateFormat* U_EXPORT2 createInstance(
void);
531 static DateFormat* U_EXPORT2 createTimeInstance(EStyle style = kDefault,
532 const Locale& aLocale = Locale::getDefault());
549 static DateFormat* U_EXPORT2 createDateInstance(EStyle style = kDefault,
550 const Locale& aLocale = Locale::getDefault());
570 static DateFormat* U_EXPORT2 createDateTimeInstance(EStyle dateStyle = kDefault,
571 EStyle timeStyle = kDefault,
572 const Locale& aLocale = Locale::getDefault());
574 #ifndef U_HIDE_DRAFT_API
589 static DateFormat* U_EXPORT2 createInstanceForSkeleton(
606 static DateFormat* U_EXPORT2 createInstanceForSkeleton(
625 static DateFormat* U_EXPORT2 createInstanceForSkeleton(
633 #ifndef U_HIDE_INTERNAL_API
660 static DateFormat* U_EXPORT2 internalCreateInstanceForSkeleton(
675 static const Locale* U_EXPORT2 getAvailableLocales(int32_t& count);
682 virtual UBool isLenient(
void)
const;
704 virtual void setLenient(
UBool lenient);
711 virtual UBool isCalendarLenient(
void)
const;
723 virtual void setCalendarLenient(
UBool lenient);
734 virtual const Calendar* getCalendar(
void)
const;
745 virtual void adoptCalendar(
Calendar* calendarToAdopt);
754 virtual void setCalendar(
const Calendar& newCalendar);
763 virtual const NumberFormat* getNumberFormat(
void)
const;
771 virtual void adoptNumberFormat(
NumberFormat* formatToAdopt);
778 virtual void setNumberFormat(
const NumberFormat& newNumberFormat);
785 virtual const TimeZone& getTimeZone(
void)
const;
793 virtual void adoptTimeZone(
TimeZone* zoneToAdopt);
800 virtual void setTimeZone(
const TimeZone& zone);
908 friend class DateFmtKeyByStyle;
911 #ifndef U_HIDE_OBSOLETE_API