Ссылка CFCalendar
Непрозрачный тип CFCalendar представляет систему календаря. Связанный API предоставляет информацию о календаре и поддерживает calendrical вычисления, такие как определение диапазона данного calendrical модуля и добавления модулей к данному абсолютному времени.
CFAbsoluteTime является операционным лингва франка CFCalendar — чтобы сделать календарную арифметику, Вы запускаете и заканчиваетесь абсолютным временем; для преобразования между анализируемой датой в одном календаре и другим календарем Вы сначала преобразовываете в абсолютное время. CFAbsoluteTime обеспечивает абсолютную шкалу и эпоха для дат и времени, которые могут тогда быть представлены в определенном календаре для calendrical вычислений или пользовательского дисплея.
В календаре день, неделя, рабочий день, месяц и числа года обычно на основе 1, но могут быть специфичные для календаря исключения. Порядковые числа, где они происходят, на основе 1. Некоторым календарям, представленным этим API, вероятно, придется отобразить их понятия основной единицы в год/месяц/неделю/день / … номенклатура. Например, календарь, составленный из 4 четвертей через год вместо 12 месяцев, использует модуль «месяца» для представления четвертей. Определенные значения модуля определяются каждым календарем, и не обязательно “соответствующие с” или имеют “корреспонденцию”, значения для того модуля в другом календаре.
Несколько функций CFCalendar (CFCalendarComposeAbsoluteTime
, CFCalendarDecomposeAbsoluteTime
, CFCalendarAddComponents
, и CFCalendarGetComponentDifference
) возьмите строку описания, описывающую calendrical компоненты, предоставленные в varargs области параметра. Можно обеспечить столько компонентов, сколько Вы нуждаетесь (или выбираете к), в любом порядке, который Вы выбираете. Когда существует неполная информация для вычислений абсолютного времени, значения по умолчанию, подобные 0 и 1, обычно выбираются календарем, но это - специфичный для календаря выбор. Если Вы предоставляете противоречивую информацию, специфичное для календаря разрешение неоднозначности выполняется (который может включить игнорирование того или большего количества параметров). Символы строки описания указывают модули и порядок следующих параметров. Символы приняты от соответствующих символов формата, используемых CFDateFormatter, если это возможно, как показано в Таблице 1.
Символ |
Значение |
Тип значения |
---|---|---|
y |
год |
интервал |
M |
месяц |
интервал |
d |
день |
интервал |
H |
час |
интервал |
m |
минута |
интервал |
s |
второй |
интервал |
Информацией, связанной с форматированием дат и времени и связанной с именем информации календаря, управляет CFDateFormatter.
CFCalendar подвергается некоторым ограничениям. Нет никакого прыжка второй обработки — существование секунд прыжка проигнорировано как в другом CoreFoundation API. В целом историческая точность календарей не гарантируется. В настоящее время нет никакого API для определения Ваших собственных календарей.
CFCalendar “бесплатный соединенный мостом” с его дубликатом Основы Какао, NSCalendar. Это означает, что Базовый тип Основы является взаимозаменяемым в вызовах функции или вызовах метода с соединенным мостом объектом Основы. Поэтому в методе, где Вы видите NSCalendar *
параметр, можно передать в a CFCalendarRef
, и в функции, где Вы видите a CFCalendarRef
параметр, можно передать в экземпляре NSCalendar. Посмотрите Бесплатные Соединенные мостом Типы для получения дополнительной информации о бесплатном образовании моста.
-
Возвращает копию логического календаря для текущего пользователя.
Объявление
Swift
func CFCalendarCopyCurrent() -> CFCalendar!
Objective C
CFCalendarRef CFCalendarCopyCurrent ( void );
Возвращаемое значение
Логический календарь для текущего пользователя, формирующегося из настроек для выбранной системной локали текущего пользователя, наложенной с любыми пользовательскими настройками пользователь, указал в Установках системы. Эта функция может возвратить сохраненный кэшируемый объект, не новый объект. Владение соблюдает Создать Правило.
Обсуждение
Настройки, которые Вы получаете от этого календаря, не изменяются, если пользовательские значения по умолчанию изменяются так, чтобы Ваши операции были непротиворечивыми.
Обычно Вы выполняете некоторые операции на возвращенном объекте и затем выпускаете его. Возвращенный объект может кэшироваться, таким образом, Вы не должны держаться за него неопределенно.
Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.4 и позже.
-
Возвращает календарный объект для календаря, идентифицированного идентификатором календаря.
Объявление
Swift
func CFCalendarCreateWithIdentifier(_
alloc
: CFAllocator!, _ident
: CFString!) -> CFCalendar!Objective C
CFCalendarRef CFCalendarCreateWithIdentifier ( CFAllocatorRef allocator, CFStringRef identifier );
Параметры
alloc
Средство выделения для использования для выделения памяти для нового объекта. Передача
NULL
илиkCFAllocatorDefault
использовать текущее средство выделения по умолчанию.ident
Идентификатор календаря. Константы идентификатора календаря поданы
CFLocaleRef
.Возвращаемое значение
Календарный объект для календаря, идентифицированного
ident
. Если идентификатор неизвестен (если, например, это - или нераспознанная строка, или календарь не поддерживается текущей версией операционной системы), возвратыNULL
. Владение соблюдает Создать Правило.Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.4 и позже.
-
Когда указанные компоненты добавляются к данному абсолютному времени, вычисляет абсолютное время.
Объявление
Objective C
Boolean CFCalendarAddComponents ( CFCalendarRef calendar, CFAbsoluteTime *at, CFOptionFlags options, const char *componentDesc, ... );
Параметры
calendar
Календарь для использования для вычисления.
at
Ссылка на абсолютное время. На вводе, точках к абсолютному времени, к которому должны быть добавлены компоненты; на выводе, точках к результату вычисления.
options
Опции для вычисления. Для допустимых значений посмотрите Константы.
componentDesc
Строка, описывающая компоненты, предоставленные в vararg параметрах.
...
Параметры Vararg, дающие суммы каждого calendrical компонента в порядке, указанном
componentDesc
. Суммы для добавления могут быть отрицательными, нуль, положительными, или любая комбинация этого.Возвращаемое значение
TRUE
— и вat
вычисленное время — еслиat
падения в определенном диапазоне календаря и возможно вычислить абсолютное время когда компоненты (calendrical компоненты, указанныеcomponentDesc
и данный в varargs), добавляются к вводу абсолютное времяat
; иначеFALSE
.Обсуждение
Некоторые операции могут быть неоднозначными, и поведение вычисления специфично для календаря, но обычно компоненты добавляются в указанном порядке.
Если Вы указываете опцию «обертки» (
kCFCalendarComponentsWrap
), указанные компоненты должны быть постепенно увеличены и повториться для обнуления на переполнении, но не должны заставлять более высокие модули быть постепенно увеличенными. Когда «Обертка» является ложью, переполнение в модуле переносит в более высокие модули, как в типичном дополнении.Обратите внимание на то, что некоторые вычисления могут относительно занять много времени для выполнения.
Следующий пример показывает, как добавить 2 месяца и 3 дня к абсолютному времени
at
текущая стоимость с помощью существующего календаря (gregorian
):CFCalendarAddComponents(gregorian, &at, 0, "Md", 2, 3);
Оператор импорта
Objective C
@import CoreFoundation;
Доступность
Доступный в OS X v10.4 и позже.
-
Вычисляет абсолютное время из компонентов в строке описания.
Объявление
Objective C
Boolean CFCalendarComposeAbsoluteTime ( CFCalendarRef calendar, CFAbsoluteTime *at, const char *componentDesc, ... );
Параметры
calendar
Календарь для использования для вычисления.
at
По возврату, содержит вычисленное абсолютное время.
componentDesc
Строка, описывающая компоненты, предоставленные в vararg параметрах.
...
Параметры Vararg, дающие суммы каждого calendrical компонента в порядке, указанном
componentDesc
. Суммы для добавления могут быть отрицательными, нуль, положительными, или любая комбинация этого.Возвращаемое значение
TRUE
— и вat
абсолютное время вычислило из данных компонентов — еслиcomponentDesc
строка описания может быть преобразована в абсолютное время, иначеFALSE
. Также возвратыFALSE
для значений из диапазона.Обсуждение
Когда существуют недостаточные компоненты, предоставленные для завершенного указания абсолютного времени, календарь использует значения по умолчанию своего выбора. Когда существует противоречивая информация, календарь может проигнорировать некоторые параметры, или функция может возвратиться
FALSE
. Ненужные компоненты проигнорированы (например, День имеет приоритет за Рабочий день + порядковый Рабочий день). Обратите внимание на то, что некоторые вычисления могут относительно занять много времени для выполнения.Следующий пример показывает, как использовать эту функцию для инициализации абсолютного времени,
at
, до 6 января 1965 14:10:00, для данного календаряgregorian
.CFCalendarComposeAbsoluteTime(gregorian, &at, "yMdHms", 1965, 1, 6, 14, 10, 00);
Оператор импорта
Objective C
@import CoreFoundation;
Доступность
Доступный в OS X v10.4 и позже.
-
Вычисляет компоненты, обозначенные componentDesc строкой описания в течение данного абсолютного времени.
Объявление
Objective C
Boolean CFCalendarDecomposeAbsoluteTime ( CFCalendarRef calendar, CFAbsoluteTime at, const char *componentDesc, ... );
Параметры
calendar
Календарь для использования для вычисления.
at
Абсолютное время.
componentDesc
Строка, описывающая компоненты, предоставленные в vararg параметрах.
...
Указатели Vararg на хранение для каждого из желаемых компонентов. По успешному возврату указатели заполнены значениями соответствующих компонентов. Тип всех модулей
int
.Возвращаемое значение
TRUE
если функция в состоянии вычислить компоненты, обозначенныеcomponentDesc
строка описания в течение данного абсолютного времени и заливки значения к компонентам, данным в varargs. ВозвратыFALSE
если абсолютное время выходит за пределы определенного диапазона календаря, или вычисление не может быть выполнено.Обсуждение
Рабочий день ordinality, когда требуется, относится к следующему большему (чем Неделя) требуемых модулей. Некоторые вычисления могут относительно занять много времени для выполнения.
Следующий пример показывает, как использовать эту функцию для определения текущего года, месяца и дня, с помощью существующего календаря (
gregorian
):CFCalendarDecomposeAbsoluteTime(gregorian, CFAbsoluteTimeGetCurrent(), "yMd", &year, &month, &day);
Оператор импорта
Objective C
@import CoreFoundation;
Доступность
Доступный в OS X v10.4 и позже.
-
Вычисляет различие между двумя абсолютными разами, с точки зрения указанных calendrical компонентов.
Объявление
Objective C
Boolean CFCalendarGetComponentDifference ( CFCalendarRef calendar, CFAbsoluteTime startingAT, CFAbsoluteTime resultAT, CFOptionFlags options, const char *componentDesc, ... );
Параметры
calendar
Календарь для использования для вычисления.
startingAT
Стартовое абсолютное время.
resultAT
Результат абсолютное время.
options
Опции для вычисления. Для допустимых значений посмотрите Константы.
componentDesc
Строка, описывающая компоненты, предоставленные в vararg параметрах.
...
Указатели Vararg на хранение для каждого из желаемых компонентов. По успешному возврату указатели заполнены значениями соответствующих компонентов. Тип всех модулей
int
.Возвращаемое значение
TRUE
— и в varargs различия — если возможно вычислить различие (результат - запускающийся) междуresultAT
иstartingAT
с точки зрения calendrical компонентов, указанныхcomponentDesc
. ВозвратыFALSE
если или абсолютное время выходит за пределы определенного диапазона календаря, или вычисление не может быть выполнено.Обсуждение
Если нет достаточно маленького модуля, который требуют содержать полную точность различия, результат с потерями. Некоторые операции могут быть неоднозначными, и поведение вычисления специфично для календаря, но обычно большие компоненты будут вычислены перед меньшими компонентами; например, в Григорианском календаре результат мог бы быть
1
месяц и5
дни, вместо, например,0
месяцы и35
дни. Если позже прежде ранее, получающиеся значения компонентов могут быть отрицательными.Это вычисление является примерно инверсией
CFCalendarAddComponents
работа, но calendrical арифметика является обратимой только в простых случаях. Это вычисление имеет тенденцию быть несколько раз более дорогим, чем операция Add.Следующий пример показывает, как получить приблизительное количество дней между двумя абсолютными разами (
at1
,at2
) использование существующего календаря (gregorian
):CFCalendarGetComponentDifference(gregorian, at1, at2, 0, "d", &days);
Оператор импорта
Objective C
@import CoreFoundation;
Доступность
Доступный в OS X v10.4 и позже.
-
Возвращает диапазон значений, которые один модуль может взять в большем модуле, во время которого происходит определенное абсолютное время.
Объявление
Swift
func CFCalendarGetRangeOfUnit(_
calendar
: CFCalendar!, _smallerUnit
: CFCalendarUnit, _biggerUnit
: CFCalendarUnit, _at
: CFAbsoluteTime) -> CFRangeObjective C
CFRange CFCalendarGetRangeOfUnit ( CFCalendarRef calendar, CFCalendarUnit smallerUnit, CFCalendarUnit biggerUnit, CFAbsoluteTime at );
Параметры
calendar
Календарь для исследования.
smallerUnit
Единица времени по календарю. Поскольку видят допустимые значения
CFCalendarUnit
.biggerUnit
Единица времени по календарю. Поскольку видят допустимые значения
CFCalendarUnit
.at
Абсолютное время.
Возвращаемое значение
Диапазон значений, что единица времени по календарю, указанная
smallerUnit
может взять в единице времени по календарю, указаннойbiggerUnit
это включает абсолютное времяat
. Например, диапазон, который Дневной модуль может взять в Месяце, в котором находится абсолютное время.Если
biggerUnit
не логически больше, чемsmallerUnit
в календаре или данной комбинации модулей не целесообразен (или вычисление, которое не определено), результат{kCFNotFound, kCFNotFound
}.Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.4 и позже.
-
Возвращает порядковое число calendrical модуля в большем модуле в указанное абсолютное время.
Объявление
Swift
func CFCalendarGetOrdinalityOfUnit(_
calendar
: CFCalendar!, _smallerUnit
: CFCalendarUnit, _biggerUnit
: CFCalendarUnit, _at
: CFAbsoluteTime) -> CFIndexObjective C
CFIndex CFCalendarGetOrdinalityOfUnit ( CFCalendarRef calendar, CFCalendarUnit smallerUnit, CFCalendarUnit biggerUnit, CFAbsoluteTime at );
Параметры
calendar
Календарь для исследования.
smallerUnit
Единица времени по календарю. Поскольку видят допустимые значения
CFCalendarUnit
.biggerUnit
Единица времени по календарю. Поскольку видят допустимые значения
CFCalendarUnit
.at
Абсолютное время.
Возвращаемое значение
Порядковое число единицы времени по календарю, указанной
smallerUnit
в единице времени по календарю, указаннойbiggerUnit
в абсолютное времяat
. Например, время 00:45 находится на первом часе дня, и в течение Часа модулей и Дня соответственно, результат был бы 1.Если
biggerUnit
параметр не логически больше, чемsmallerUnit
параметр в календаре или данная комбинация модулей не целесообразен (или вычисление, которое не определено), результатkCFNotFound
.Обсуждение
ordinality является в большинстве случаев не тем же как анализируемым значением модуля. Обычно возвращаемые значения
1
и больше; исключение является возвращающимся вычислением недели в месяце,0
в течение многих дней перед первой неделей, в месяце содержащей дату. Обратите внимание на то, что некоторые вычисления могут относительно занять много времени для выполнения.Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.4 и позже.
-
Возвраты ссылкой время начала и продолжительность данной единицы времени по календарю, содержащей данное абсолютное время.
Объявление
Swift
func CFCalendarGetTimeRangeOfUnit(_
calendar
: CFCalendar!, _unit
: CFCalendarUnit, _at
: CFAbsoluteTime, _startp
: UnsafeMutablePointer<CFAbsoluteTime>, _tip
: UnsafeMutablePointer<CFTimeInterval>) -> BooleanObjective C
Boolean CFCalendarGetTimeRangeOfUnit ( CFCalendarRef calendar, CFCalendarUnit unit, CFAbsoluteTime at, CFAbsoluteTime *startp, CFTimeInterval *tip );
Параметры
calendar
Календарь для исследования.
unit
Единица времени по календарю (для допустимых значений, посмотрите
CFCalendarUnit
).at
Абсолютное время.
startp
По возврату, содержит начало единицы времени по календарю, указанной
unit
это содержит времяat
.tip
По возврату, содержит продолжительность единицы времени по календарю, указанной
unit
это содержит времяat
.Возвращаемое значение
true
если значенияstartp
иtip
мог быть вычислен, иначеfalse
.Обсуждение
Если, например, Вы пытаетесь получить диапазон a, функция может перестать работать
kCFCalendarUnitWeekday
и укажите время (at
) это в течение выходных.Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.5 и позже.
-
Возвращает максимальные пределы диапазона значений, которые указанный модуль может взять в данном календаре.
Объявление
Swift
func CFCalendarGetMaximumRangeOfUnit(_
calendar
: CFCalendar!, _unit
: CFCalendarUnit) -> CFRangeObjective C
CFRange CFCalendarGetMaximumRangeOfUnit ( CFCalendarRef calendar, CFCalendarUnit unit );
Параметры
calendar
Календарь для исследования.
unit
Единица времени по календарю. Поскольку видят допустимые значения
CFCalendarUnit
.Возвращаемое значение
Максимальные пределы диапазона значений, в которых может взять указанный модуль
calendar
. Например, в Григорианском календаре максимальные диапазоны для Дневного модуля 1-31.Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.4 и позже.
-
Возвращает минимальные пределы диапазона значений, которые указанный модуль может взять в данном календаре.
Объявление
Swift
func CFCalendarGetMinimumRangeOfUnit(_
calendar
: CFCalendar!, _unit
: CFCalendarUnit) -> CFRangeObjective C
CFRange CFCalendarGetMinimumRangeOfUnit ( CFCalendarRef calendar, CFCalendarUnit unit );
Параметры
calendar
Календарь для исследования.
unit
Единица времени по календарю. Поскольку видят допустимые значения
CFCalendarUnit
.Возвращаемое значение
Минимальные пределы диапазона значений, в которых может взять указанный модуль
calendar
. Например, в Григорианском календаре минимальные диапазоны для Дневного модуля 1-28.Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.4 и позже.
-
Возвращает объект часового пояса для указанного календаря.
Объявление
Swift
func CFCalendarCopyTimeZone(_
calendar
: CFCalendar!) -> CFTimeZone!Objective C
CFTimeZoneRef CFCalendarCopyTimeZone ( CFCalendarRef calendar );
Параметры
calendar
Календарь для исследования.
Возвращаемое значение
Копия часового пояса возражает для указанного календаря. Владение соблюдает Создать Правило.
Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.4 и позже.
-
Устанавливает часовой пояс для календаря.
Объявление
Swift
func CFCalendarSetTimeZone(_
calendar
: CFCalendar!, _locale
: CFTimeZone!)Objective C
void CFCalendarSetTimeZone ( CFCalendarRef calendar, CFTimeZoneRef tz );
Параметры
calendar
Календарь для изменения.
locale
Часовой пояс для установки для
calendar
.Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.4 и позже.
-
Возвращает идентификатор данного календаря.
Объявление
Swift
func CFCalendarGetIdentifier(_
calendar
: CFCalendar!) -> CFString!Objective C
CFStringRef CFCalendarGetIdentifier ( CFCalendarRef calendar );
Параметры
calendar
Календарь для исследования.
Возвращаемое значение
Строковое представление
calendar
идентификатор. Константы идентификатора календаря могут быть найдены вCFLocaleRef
. Владение соблюдает Получить Правило.Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.4 и позже.
-
Возвращает объект языкового стандарта для указанного календаря.
Объявление
Swift
func CFCalendarCopyLocale(_
calendar
: CFCalendar!) -> CFLocale!Objective C
CFLocaleRef CFCalendarCopyLocale ( CFCalendarRef calendar );
Параметры
calendar
Календарь для исследования.
Возвращаемое значение
Копия объекта языкового стандарта для указанного календаря. Владение соблюдает Создать Правило.
Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.4 и позже.
-
Устанавливает локаль для календаря.
Объявление
Swift
func CFCalendarSetLocale(_
calendar
: CFCalendar!, _locale
: CFLocale!)Objective C
void CFCalendarSetLocale ( CFCalendarRef calendar, CFLocaleRef locale );
Параметры
calendar
Календарь для изменения.
locale
Локаль для установки для
calendar
.Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.4 и позже.
-
Возвращает индекс первого рабочего дня для указанного календаря.
Объявление
Swift
func CFCalendarGetFirstWeekday(_
calendar
: CFCalendar!) -> CFIndexObjective C
CFIndex CFCalendarGetFirstWeekday ( CFCalendarRef calendar );
Параметры
calendar
Календарь для исследования.
Возвращаемое значение
Индекс первого рабочего дня указанного календаря.
Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.4 и позже.
-
Устанавливает первый рабочий день для календаря.
Объявление
Swift
func CFCalendarSetFirstWeekday(_
calendar
: CFCalendar!, _wkdy
: CFIndex)Objective C
void CFCalendarSetFirstWeekday ( CFCalendarRef calendar, CFIndex wkdy );
Параметры
calendar
Календарь для изменения.
wkdy
Индекс для установки в течение первого рабочего дня
calendar
.Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.4 и позже.
-
Возвращает минимальное число дней на первой неделе указанного календаря.
Объявление
Swift
func CFCalendarGetMinimumDaysInFirstWeek(_
calendar
: CFCalendar!) -> CFIndexObjective C
CFIndex CFCalendarGetMinimumDaysInFirstWeek ( CFCalendarRef calendar );
Параметры
calendar
Календарь для исследования.
Возвращаемое значение
Минимальное число дней на первой неделе
calendar
.Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.4 и позже.
-
Определяет минимальный номер дней на первой неделе указанного календаря.
Объявление
Swift
func CFCalendarSetMinimumDaysInFirstWeek(_
calendar
: CFCalendar!, _mwd
: CFIndex)Objective C
void CFCalendarSetMinimumDaysInFirstWeek ( CFCalendarRef calendar, CFIndex mwd );
Параметры
calendar
Календарь для изменения.
mwd
Число для установки как минимальное число дней на первой неделе
calendar
.Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.4 и позже.
-
Возвращает идентификатор типа для непрозрачного типа CFCalendar.
Объявление
Swift
func CFCalendarGetTypeID() -> CFTypeID
Objective C
CFTypeID CFCalendarGetTypeID ( void );
Возвращаемое значение
Идентификатор типа для непрозрачного типа CFCalendar.
Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.4 и позже.
-
Ссылка на объект CFCalendar.
Объявление
Swift
typealias CFCalendarRef = CFCalendar
Objective C
typedef const struct __CFCalendar *CFCalendarRef;
Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.4 и позже.
-
Константы CFCalendarUnit используются для указания calendrical модулей, таких как день или месяц, в различных календарных вычислениях.
Объявление
Swift
struct CFCalendarUnit : RawOptionSetType { init(_
rawValue
: CFOptionFlags) init(rawValuerawValue
: CFOptionFlags) static var Era: CFCalendarUnit { get } static var Year: CFCalendarUnit { get } static var Month: CFCalendarUnit { get } static var Day: CFCalendarUnit { get } static var Hour: CFCalendarUnit { get } static var Minute: CFCalendarUnit { get } static var Second: CFCalendarUnit { get } static var Week: CFCalendarUnit { get } static var Weekday: CFCalendarUnit { get } static var WeekdayOrdinal: CFCalendarUnit { get } static var Quarter: CFCalendarUnit { get } static var WeekOfMonth: CFCalendarUnit { get } static var WeekOfYear: CFCalendarUnit { get } static var YearForWeekOfYear: CFCalendarUnit { get } }Objective C
typedef enum { kCFCalendarUnitEra = (1 << 1), kCFCalendarUnitYear = (1 << 2), kCFCalendarUnitMonth = (1 << 3), kCFCalendarUnitDay = (1 << 4), kCFCalendarUnitHour = (1 << 5), kCFCalendarUnitMinute = (1 << 6), kCFCalendarUnitSecond = (1 << 7), kCFCalendarUnitWeek = (1 << 8), kCFCalendarUnitWeekday = (1 << 9), kCFCalendarUnitWeekdayOrdinal = (1 << 10), kCFCalendarUnitQuarter = (1UL << 11), kCFCalendarUnitWeekOfMonth = (1UL << 12), kCFCalendarUnitWeekOfYear = (1UL << 13), kCFCalendarUnitYearForWeekOfYear = (1UL << 14), } CFCalendarUnit;
Константы
-
Era
kCFCalendarUnitEra
Указывает модуль эры.
Доступный в OS X v10.4 и позже.
-
Year
kCFCalendarUnitYear
Указывает модуль года.
Доступный в OS X v10.4 и позже.
-
Month
kCFCalendarUnitMonth
Указывает модуль месяца.
Доступный в OS X v10.4 и позже.
-
Day
kCFCalendarUnitDay
Указывает дневной модуль.
Доступный в OS X v10.4 и позже.
-
Hour
kCFCalendarUnitHour
Указывает модуль часа.
Доступный в OS X v10.4 и позже.
-
Minute
kCFCalendarUnitMinute
Указывает мелкий модуль.
Доступный в OS X v10.4 и позже.
-
Second
kCFCalendarUnitSecond
Указывает второй модуль.
Доступный в OS X v10.4 и позже.
-
Week
kCFCalendarUnitWeek
Указывает недельный модуль.
Доступный в OS X v10.4 и позже.
Осуждаемый в OS X v10.10.
-
Weekday
kCFCalendarUnitWeekday
Указывает будний модуль.
Будние модули являются числами
1
-N
(где для Григорианского календаряN=7
и1
воскресенье).Доступный в OS X v10.4 и позже.
-
WeekdayOrdinal
kCFCalendarUnitWeekdayOrdinal
Указывает порядковый будний модуль.
Рабочий день порядковый модуль описывает порядковую позицию в модуле месяца соответствующего буднего модуля. Например, в Григорианском календаре рабочий день порядковый модуль
2
для буднего модуля3
указывает «второй вторник в месяце».Доступный в OS X v10.4 и позже.
-
Quarter
kCFCalendarUnitQuarter
Указывает модуль четверти года.
Доступный в OS X v10.6 и позже.
-
WeekOfMonth
kCFCalendarUnitWeekOfMonth
Указывает исходную неделю единицы времени по календарю месяца.
Доступный в OS X v10.7 и позже.
-
WeekOfYear
kCFCalendarUnitWeekOfYear
Указывает исходную неделю единицы времени по календарю года.
Доступный в OS X v10.7 и позже.
-
YearForWeekOfYear
kCFCalendarUnitYearForWeekOfYear
Указывает относительный год в течение недели в единице времени по календарю года.
Доступный в OS X v10.7 и позже.
Оператор импорта
Objective C
@import CoreFoundation;
Swift
import CoreFoundation
Доступность
Доступный в OS X v10.4 и позже.
-
-
Переносящаяся опция указывает, что видит поведение переполнения для календарных компонентов в calendrical вычислениях —
CFCalendarAddComponents
иCFCalendarGetComponentDifference
.Объявление
Swift
var kCFCalendarComponentsWrap: Int { get }
Objective C
enum { kCFCalendarComponentsWrap = (1 << 0) }
Константы
-
kCFCalendarComponentsWrap
kCFCalendarComponentsWrap
Указывает, что компоненты, указанные для календарных компонентов, должны быть постепенно увеличены и повториться для обнуления на переполнении, но не должны заставлять более высокие модули быть постепенно увеличенными.
Доступный в OS X v10.4 и позже.
-