Differences From Artifact [3a80b7e602]:
- File src/OFDate.h — part of check-in [c57f9fe4fb] at 2011-01-01 14:58:50 on branch trunk — Add +[distantFuture] and +[distantPast] to OFDate. (user: js, size: 3770) [annotate] [blame] [check-ins using]
To Artifact [5536148640]:
- File
src/OFDate.h
— part of check-in
[c084907c2c]
at
2011-01-01 16:12:03
on branch trunk
— Multiple OFDate changes.
* Don't expose time_t to the user.
* Use better return types for -[minute] etc.
* Add +[dateWithTimeIntervalSinceNow:].
* Add -[dateByAddingTimeInterval:]. (user: js, size: 5263) [annotate] [blame] [check-ins using]
1 2 3 4 5 6 7 8 9 10 11 | /* * Copyright (c) 2008 - 2010 * Jonathan Schleifer <js@webkeks.org> * * All rights reserved. * * This file is part of ObjFW. It may be distributed under the terms of the * Q Public License 1.0, which can be found in the file LICENSE included in * the packaging of this file. */ | < < < < < < < < < < | | | | | > > > > > > > > > > > > > > > > > > | | | > > > > > > > > > > > > > > > > > > > | | | | | | | | | | | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 | /* * Copyright (c) 2008 - 2010 * Jonathan Schleifer <js@webkeks.org> * * All rights reserved. * * This file is part of ObjFW. It may be distributed under the terms of the * Q Public License 1.0, which can be found in the file LICENSE included in * the packaging of this file. */ #import "OFObject.h" @class OFString; /** * \brief A class for storing, accessing and comparing dates. */ @interface OFDate: OFObject <OFCopying, OFComparing> { int64_t sec; uint32_t usec; } /** * \return A new, autoreleased OFDate with the current date and time */ + date; /** * \param sec The seconds since 1970-01-01 00:00:00 * \return A new, autoreleased OFDate with the specified date and time */ + dateWithTimeIntervalSince1970: (int64_t)sec; /** * \param sec The seconds since 1970-01-01 00:00:00 * \param usec The microsecond part of the time * \return A new, autoreleased OFDate with the specified date and time */ + dateWithTimeIntervalSince1970: (int64_t)sec microseconds: (uint32_t)usec; /** * \param sec The seconds since now * \return A new, autoreleased OFDate with the specified date and time */ + dateWithTimeIntervalSinceNow: (int64_t)sec; /** * \param sec The seconds since now * \param usec The microsecond part of the time * \return A new, autoreleased OFDate with the specified date and time */ + dateWithTimeIntervalSinceNow: (int64_t)sec microseconds: (uint32_t)usec; /** * Returns a date in the distant future. The date is system-dependant. * * \return A date in the distant future */ + distantFuture; /** * Returns a date in the distant past. The date is system-dependant. * * \return A date in the distant past */ + distantPast; /** * Initializes an already allocated OFDate with the specified date and time. * * \param sec The seconds since 1970-01-01 00:00:00 * \return An initialized OFDate with the specified date and time */ - initWithTimeIntervalSince1970: (int64_t)sec; /** * Initializes an already allocated OFDate with the specified date and time. * * \param sec The seconds since 1970-01-01 00:00:00 * \param usec The microsecond part of the time * \return An initialized OFDate with the specified date and time */ - initWithTimeIntervalSince1970: (int64_t)sec microseconds: (uint32_t)usec; /** * Initializes an already allocated OFDate with the specified date and time. * * \param sec The seconds since now * \param usec The microsecond part of the time * \return A new, autoreleased OFDate with the specified date and time */ - initWithTimeIntervalSinceNow: (int64_t)sec; /** * Initializes an already allocated OFDate with the specified date and time. * * \param sec The seconds since now * \param usec The microsecond part of the time * \return A new, autoreleased OFDate with the specified date and time */ - initWithTimeIntervalSinceNow: (int64_t)sec microseconds: (uint32_t)usec; /** * \return The microsecond of the date */ - (uint32_t)microsecond; /** * \return The seconds of the date */ - (uint8_t)second; /** * \return The minute of the date */ - (uint8_t)minute; /** * \return The hour of the date */ - (uint8_t)hour; /** * \return The hour of the date in local time */ - (uint8_t)localHour; /** * \return The day of the month of the date */ - (uint8_t)dayOfMonth; /** * \return The day of the month of the date in local time */ - (uint8_t)localDayOfMonth; /** * \return The month of the year of the date */ - (uint8_t)monthOfYear; /** * \return The month of the year of the date in local time */ - (uint8_t)localMonthOfYear; /** * \return The year of the date */ - (uint16_t)year; /** * \return The day of the week of the date */ - (uint8_t)dayOfWeek; /** * \return The day of the week of the date in local time */ - (uint8_t)localDayOfWeek; /** * \return The day of the year of the date */ - (uint16_t)dayOfYear; /** * \return The day of the year of the date in local time */ - (uint16_t)localDayOfYear; /** * Creates a string of the date with the specified format. * * See the manpage for strftime for information on the format. * * \param fmt The format for the date string |
︙ | ︙ | |||
176 177 178 179 180 181 182 183 | - (OFDate*)earlierDate: (OFDate*)date; /** * \param date Another date * \return The later date of the two dates */ - (OFDate*)laterDate: (OFDate*)date; @end | > > > > > > > > > > > > > > > > > > | 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 | - (OFDate*)earlierDate: (OFDate*)date; /** * \param date Another date * \return The later date of the two dates */ - (OFDate*)laterDate: (OFDate*)date; /** * Returns a new date with the specified time interval added. * * \param sec The seconds after the date * \return A new, autoreleased OFDate */ - (OFDate*)dateByAddingTimeInterval: (int64_t)sec; /** * Returns a new date with the specified time interval added. * * \param sec The seconds after the date * \param usec The microseconds after the date * \return A new, autoreleased OFDate */ - (OFDate*)dateByAddingTimeInterval: (int64_t)sec withMicroseconds: (uint32_t)usec; @end |