Comment: | Minor documentation improvements |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
650b4be2247c574a020b3c844b11c838 |
User & Date: | js on 2015-11-28 19:47:01 |
Other Links: | manifest | tags |
2015-11-29
| ||
11:43 | Make properties a requirement and clean up code check-in: 48980f2297 user: js tags: trunk | |
2015-11-28
| ||
19:47 | Minor documentation improvements check-in: 650b4be224 user: js tags: trunk | |
18:56 | OFOptionsParser: Reworked API check-in: bfa913aebe user: js tags: trunk | |
Modified src/OFArray.h from [16fee25b86] to [fdfb08cf0d].
︙ | ︙ | |||
112 113 114 115 116 117 118 | * * @param object An object * @return A new autoreleased OFArray */ + (instancetype)arrayWithObject: (ObjectType)object; /*! | | | 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 | * * @param object An object * @return A new autoreleased OFArray */ + (instancetype)arrayWithObject: (ObjectType)object; /*! * @brief Creates a new OFArray with the specified objects, terminated by `nil`. * * @param firstObject The first object in the array * @return A new autoreleased OFArray */ + (instancetype)arrayWithObjects: (ObjectType)firstObject, ... OF_SENTINEL; /*! |
︙ | ︙ | |||
252 253 254 255 256 257 258 | * @param object The object which is checked for being in the array * @return A boolean whether the array contains an object with the specified * address */ - (bool)containsObjectIdenticalTo: (nullable ObjectType)object; /*! | | | | | | 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 | * @param object The object which is checked for being in the array * @return A boolean whether the array contains an object with the specified * address */ - (bool)containsObjectIdenticalTo: (nullable ObjectType)object; /*! * @brief Returns the first object of the array or `nil`. * * @warning The returned object is *not* retained and autoreleased for * performance reasons! * * @return The first object of the array or `nil` */ - (nullable ObjectType)firstObject; /*! * @brief Returns the last object of the array or `nil`. * * @warning The returned object is *not* retained and autoreleased for * performance reasons! * * @return The last object of the array or `nil` */ - (nullable ObjectType)lastObject; /*! * @brief Returns the objects in the specified range as a new OFArray. * * @param range The range for the subarray |
︙ | ︙ | |||
436 437 438 439 440 441 442 | */ - (OFArray OF_GENERIC(ObjectType)*)filteredArrayUsingBlock: (of_array_filter_block_t)block; /*! * @brief Folds the array to a single object using the specified block. * | | | 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 | */ - (OFArray OF_GENERIC(ObjectType)*)filteredArrayUsingBlock: (of_array_filter_block_t)block; /*! * @brief Folds the array to a single object using the specified block. * * If the array is empty, it will return `nil`. * * If there is only one object in the array, that object will be returned and * the block will not be invoked. * * If there are at least two objects, the block is invoked for each object * except the first, where left is always to what the array has already been * folded and right what should be added to left. |
︙ | ︙ |
Modified src/OFDate.h from [5fea3d4d33] to [86ae627009].
︙ | ︙ | |||
289 290 291 292 293 294 295 | * @return A new, autoreleased OFString */ - (OFString*)localDateStringWithFormat: (OFConstantString*)format; /*! * @brief Returns the earlier of the two dates. * | | | | 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 | * @return A new, autoreleased OFString */ - (OFString*)localDateStringWithFormat: (OFConstantString*)format; /*! * @brief Returns the earlier of the two dates. * * If the argument is `nil`, it returns the receiver. * * @param otherDate Another date * @return The earlier date of the two dates */ - (OFDate*)earlierDate: (OFDate*)otherDate; /*! * @brief Returns the later of the two dates. * * If the argument is `nil`, it returns the receiver. * * @param otherDate Another date * @return The later date of the two dates */ - (OFDate*)laterDate: (OFDate*)otherDate; /*! |
︙ | ︙ |
Modified src/OFDictionary.h from [77b3d41c42] to [1ea6831bcb].
︙ | ︙ | |||
182 183 184 185 186 187 188 | * @param arguments A va_list of the other arguments * @return An initialized OFDictionary */ - initWithKey: (KeyType)firstKey arguments: (va_list)arguments; /*! | | > | | 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 | * @param arguments A va_list of the other arguments * @return An initialized OFDictionary */ - initWithKey: (KeyType)firstKey arguments: (va_list)arguments; /*! * @brief Returns the object for the given key or `nil` if the key was not * found. * * @warning The returned object is *not* retained and autoreleased for * performance reasons! * * @param key The key whose object should be returned * @return The object for the given key or `nil` if the key was not found */ - (nullable ObjectType)objectForKey: (KeyType)key; - (nullable ObjectType)objectForKeyedSubscript: (KeyType)key; /*! * @brief Checks whether the dictionary contains an object equal to the * specified object. |
︙ | ︙ |
Modified src/OFEnumerator.h from [74f0d63f69] to [b828b3483b].
︙ | ︙ | |||
48 49 50 51 52 53 54 | #else # ifndef DOXYGEN # define ObjectType id # endif @interface OFEnumerator: OFObject #endif /*! | | | | 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | #else # ifndef DOXYGEN # define ObjectType id # endif @interface OFEnumerator: OFObject #endif /*! * @brief Returns the next object or `nil` if there is none left. * * @return The next object or `nil` if there is none left */ - (nullable ObjectType)nextObject; /*! * @brief Returns an array of all remaining objects in the collection. * * @return An array of all remaining objects in the collection |
︙ | ︙ |
Modified src/OFINICategory.h from [e2014b9e81] to [b816d84214].
︙ | ︙ | |||
50 51 52 53 54 55 56 | * @brief Returns the name of the INI category. * * @return The name of the INI category */ - (OFString*)name; /*! | | | | | 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | * @brief Returns the name of the INI category. * * @return The name of the INI category */ - (OFString*)name; /*! * @brief Returns the string value for the specified key, or `nil` if it does * not exist. * * If the specified key is a multi-key (see @ref arrayForKey:), the value of * the first key/value pair found is returned. * * @param key The key for which the string value should be returned * @return The string value for the specified key, or `nil` if it does not exist */ - (nullable OFString*)stringForKey: (OFString*)key; /*! * @brief Returns the string value for the specified key or the specified * default value if it does not exist. * |
︙ | ︙ |
Modified src/OFList.h from [2c4a93e677] to [1c84feb5eb].
︙ | ︙ | |||
161 162 163 164 165 166 167 | * @brief Returns an OFEnumerator to enumerate through all objects of the list. * * @returns An OFEnumerator to enumerate through all objects of the list */ - (OFEnumerator OF_GENERIC(ObjectType)*)objectEnumerator; /*! | | | | | | 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 | * @brief Returns an OFEnumerator to enumerate through all objects of the list. * * @returns An OFEnumerator to enumerate through all objects of the list */ - (OFEnumerator OF_GENERIC(ObjectType)*)objectEnumerator; /*! * @brief Returns the first object of the list or `nil`. * * @warning The returned object is *not* retained and autoreleased for * performance reasons! * * @return The first object of the list or `nil` */ - (nullable ObjectType)firstObject; /*! * @brief Returns the last object of the list or `nil`. * * @warning The returned object is *not* retained and autoreleased for * performance reasons! * * @return The last object of the list or `nil` */ - (nullable ObjectType)lastObject; /*! * @brief Removes all objects from the list. */ - (void)removeAllObjects; |
︙ | ︙ |
Modified src/OFObject.h from [95294129a9] to [70a2085b25].
︙ | ︙ | |||
401 402 403 404 405 406 407 | */ + (void)initialize; /*! * @brief Allocates memory for an instance of the class and sets up the memory * pool for the object. * | | | | 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 | */ + (void)initialize; /*! * @brief Allocates memory for an instance of the class and sets up the memory * pool for the object. * * This method will never return `nil`, instead, it will throw an * @ref OFAllocFailedException. * * @return The allocated object */ + alloc; /*! * @brief Allocates memory for a new instance and calls @ref init on it. |
︙ | ︙ | |||
467 468 469 470 471 472 473 | /*! * @brief Returns the implementation of the instance method for the specified * selector. * * @param selector The selector for which the method should be returned * @return The implementation of the instance method for the specified selector | | | 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 | /*! * @brief Returns the implementation of the instance method for the specified * selector. * * @param selector The selector for which the method should be returned * @return The implementation of the instance method for the specified selector * or `nil` if it isn't implemented */ + (nullable IMP)instanceMethodForSelector: (SEL)selector; /*! * @brief Returns the type encoding of the instance method for the specified * selector. * |
︙ | ︙ | |||
520 521 522 523 524 525 526 | * If the method already exists, it is replaced and the old implementation * returned. If the method does not exist, it is added with the specified type * encoding. * * @param selector The selector for the new method * @param implementation The implementation for the new method * @param typeEncoding The type encoding for the new method | | | | 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 | * If the method already exists, it is replaced and the old implementation * returned. If the method does not exist, it is added with the specified type * encoding. * * @param selector The selector for the new method * @param implementation The implementation for the new method * @param typeEncoding The type encoding for the new method * @return The old implementation or `nil` if the method was added */ + (nullable IMP)replaceClassMethod: (SEL)selector withImplementation: (IMP)implementation typeEncoding: (const char*)typeEncoding; /*! * @brief Replaces or adds an instance method. * * If the method already exists, it is replaced and the old implementation * returned. If the method does not exist, it is added with the specified type * encoding. * * @param selector The selector for the new method * @param implementation The implementation for the new method * @param typeEncoding The type encoding for the new method * @return The old implementation or `nil` if the method was added */ + (nullable IMP)replaceInstanceMethod: (SEL)selector withImplementation: (IMP)implementation typeEncoding: (const char*)typeEncoding; /*! * @brief Adds all methods from the specified class to the class that is the |
︙ | ︙ | |||
599 600 601 602 603 604 605 | /*! * @brief Initializes an already allocated object. * * Derived classes may override this, but need to do * @code * self = [super init] * @endcode | | | | | 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 | /*! * @brief Initializes an already allocated object. * * Derived classes may override this, but need to do * @code * self = [super init] * @endcode * before they do any initialization themselves. @ref init may never return * `nil`, instead an exception (for example @ref * OFInitializationFailedException) should be thrown. * * @return An initialized object */ - init; /*! * @brief Returns the name of the object's class. |
︙ | ︙ | |||
865 866 867 868 869 870 871 | #endif /*! * @brief This method is called when @ref resolveClassMethod: or * @ref resolveInstanceMethod: returned false. It should return a target * to which the message should be forwarded. * | | | > | 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 | #endif /*! * @brief This method is called when @ref resolveClassMethod: or * @ref resolveInstanceMethod: returned false. It should return a target * to which the message should be forwarded. * * @note When the message should not be forwarded, you should not return `nil`, * but instead return the result of `[super * forwardingTargetForSelector: selector]`. * * @return The target to forward the message to */ - (nullable id)forwardingTargetForSelector: (SEL)selector; /*! * @brief Handles messages which are not understood by the receiver. |
︙ | ︙ |
Modified src/OFOptionsParser.h from [d487046e69] to [b395fe2709].
︙ | ︙ | |||
23 24 25 26 27 28 29 | /*! * @struct of_options_parser_option_t OFOptionsParser.h ObjFW/OFOptionsParser.h * * @brief An option which can be parsed by an @ref OFOptionsParser. */ typedef struct of_options_parser_option_t { | | | | | | | 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 | /*! * @struct of_options_parser_option_t OFOptionsParser.h ObjFW/OFOptionsParser.h * * @brief An option which can be parsed by an @ref OFOptionsParser. */ typedef struct of_options_parser_option_t { /*! The short version (e.g. `-v`) of the option or `\0` for none. */ of_unichar_t shortOption; /*! * The long version (e.g. `--verbose`) of the option or `nil` for none. */ OFString *_Nullable longOption; /*! * Whether the option takes an argument. * * 0 means it takes no argument.@n * 1 means it takes a required argument.@n * -1 means it takes an optional argument.@n * * All other values are invalid and will throw an * @ref OFInvalidArgumentException. */ signed char hasArgument; /*! * An optional pointer to a bool that is set to whether the option has * been specified. */ bool *_Nullable isSpecifiedPtr; /*! * An optional pointer to an @ref OFString* that is set to the argument * specified for the option or `nil` for no argument. */ OFString *__autoreleasing _Nullable *_Nullable argumentPtr; } of_options_parser_option_t; /*! * @class OFOptionsParser OFOptionsParser.h ObjFW/OFOptionsParser.h * |
︙ | ︙ | |||
84 85 86 87 88 89 90 | #endif /*! * @brief Creates a new OFOptionsParser which accepts the specified options. * * @param options An array of @ref of_options_parser_option_t specifying all * accepted options, terminated with an option whose short | | | | | | | | | | | | | | | | | | | 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 | #endif /*! * @brief Creates a new OFOptionsParser which accepts the specified options. * * @param options An array of @ref of_options_parser_option_t specifying all * accepted options, terminated with an option whose short * option is `\0` and long option is `nil`. * * @return A new, autoreleased OFOptionsParser */ + (instancetype)parserWithOptions: (const of_options_parser_option_t*)options; /*! * @brief Initializes an already allocated OFOptionsParser so that it accepts * the specified options. * * @param options An array of @ref of_options_parser_option_t specifying all * accepted options, terminated with an option whose short * option is `\0` and long option is `nil`. * * @return An initialized OFOptionsParser */ - initWithOptions: (const of_options_parser_option_t*)options; /*! * @brief Returns the next option. * * If the option is only available as a long option, `-` is returned. * Otherwise, the short option is returned, even if it was specified as a long * option.@n * If an unknown option is specified, `?` is returned.@n * If the argument for the option is missing, `:` is returned.@n * If there is an argument for the option even though it takes none, `=` is * returned.@n * If all options have been parsed, `\0` is returned. * * @note You need to call @ref nextOption repeatedly until it returns `\0` to * make sure all options have been parsed, even if you only rely on the * optional pointers specified and don't do any parsing yourself. * * @return The next option */ - (of_unichar_t)nextOption; /*! * @brief Returns the last parsed option. * * If @ref nextOption returned `?` or `:`, this returns the option which was * unknown or for which the argument was missing.@n * If this returns `-`, the last option is only available as a long option (see * @ref lastLongOption). * * @return The last parsed option */ - (of_unichar_t)lastOption; /*! * @brief Returns the long option for the last parsed option, or `nil` if the * last parsed option was not passed as a long option by the user. * * In case @ref nextOption returned `?`, this contains the unknown long * option.@n * In case it returned `:`, this contains the long option which is missing an * argument.@n * In case it returned `=`, this contains the long option for which an * argument was specified even though the option takes no argument. * * @warning Unlike lastOption, which returns the short option even if the user * specified a long option, this only returns the long option if it * was actually specified as a long option by the user. * * @return The last parsed long option or `nil` */ - (nullable OFString*)lastLongOption; /*! * @brief Returns the argument for the last parsed option, or `nil` if the last |
︙ | ︙ |
Modified src/OFOptionsParser.m from [fbe9ab7d4c] to [b5a7737ef1].
︙ | ︙ | |||
56 57 58 59 60 61 62 | of_options_parser_option_t *iter2; const of_map_table_functions_t keyFunctions = { .hash = stringHash, .equal = stringEqual }; const of_map_table_functions_t valueFunctions = { NULL }; | | | 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 | of_options_parser_option_t *iter2; const of_map_table_functions_t keyFunctions = { .hash = stringHash, .equal = stringEqual }; const of_map_table_functions_t valueFunctions = { NULL }; /* Count, sanity check, initialize pointers */ for (iter = options; iter->shortOption != '\0' || iter->longOption != nil; iter++) { if (iter->hasArgument < -1 || iter->hasArgument > 1) @throw [OFInvalidArgumentException exception]; if (iter->shortOption != '\0' && |
︙ | ︙ |
Modified src/OFProcess.h from [8a69d4d07e] to [b2884aa7f4].
︙ | ︙ | |||
64 65 66 67 68 69 70 | /*! * @brief Creates a new OFProcess with the specified program and arguments and * invokes the program. * * @param program The program to execute. If it does not start with a slash, the * search path specified in PATH is used. | | | | | | | | | | 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 | /*! * @brief Creates a new OFProcess with the specified program and arguments and * invokes the program. * * @param program The program to execute. If it does not start with a slash, the * search path specified in PATH is used. * @param arguments The arguments to pass to the program, or `nil` * @return A new, autoreleased OFProcess. */ + (instancetype) processWithProgram: (OFString*)program arguments: (nullable OFArray OF_GENERIC(OFString*)*)arguments; /*! * @brief Creates a new OFProcess with the specified program, program name and * arguments and invokes the program. * * @param program The program to execute. If it does not start with a slash, the * search path specified in PATH is used. * @param programName The program name for the program to invoke (argv[0]). * Usually, this is equal to program. * @param arguments The arguments to pass to the program, or `nil` * @return A new, autoreleased OFProcess. */ + (instancetype) processWithProgram: (OFString*)program programName: (OFString*)programName arguments: (nullable OFArray OF_GENERIC(OFString*)*)arguments; /*! * @brief Creates a new OFProcess with the specified program, program name, * arguments and environment and invokes the program. * * @param program The program to execute. If it does not start with a slash, the * search path specified in PATH is used. * @param programName The program name for the program to invoke (argv[0]). * Usually, this is equal to program. * @param arguments The arguments to pass to the program, or `nil` * @param environment The environment to pass to the program, or `nil`. If it * is not `nil`, the passed dictionary will be used to * override the environment. If you want to add to the * existing environment, you need to get the existing * environment first, copy it, modify it and then pass it. * @return A new, autoreleased OFProcess. */ + (instancetype) processWithProgram: (OFString*)program programName: (OFString*)programName arguments: (nullable OFArray OF_GENERIC(OFString*)*)arguments environment: (nullable OFDictionary |
︙ | ︙ | |||
126 127 128 129 130 131 132 | /*! * @brief Initializes an already allocated OFProcess with the specified program * and arguments and invokes the program. * * @param program The program to execute. If it does not start with a slash, the * search path specified in PATH is used. | | | | | | | | | | 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 | /*! * @brief Initializes an already allocated OFProcess with the specified program * and arguments and invokes the program. * * @param program The program to execute. If it does not start with a slash, the * search path specified in PATH is used. * @param arguments The arguments to pass to the program, or `nil` * @return An initialized OFProcess. */ - initWithProgram: (OFString*)program arguments: (nullable OFArray OF_GENERIC(OFString*)*)arguments; /*! * @brief Initializes an already allocated OFProcess with the specified program, * program name and arguments and invokes the program. * * @param program The program to execute. If it does not start with a slash, the * search path specified in PATH is used. * @param programName The program name for the program to invoke (argv[0]). * Usually, this is equal to program. * @param arguments The arguments to pass to the program, or `nil` * @return An initialized OFProcess. */ - initWithProgram: (OFString*)program programName: (OFString*)programName arguments: (nullable OFArray OF_GENERIC(OFString*)*)arguments; /*! * @brief Initializes an already allocated OFProcess with the specified program, * program name, arguments and environment and invokes the program. * * @param program The program to execute. If it does not start with a slash, the * search path specified in PATH is used. * @param programName The program name for the program to invoke (argv[0]). * Usually, this is equal to program. * @param arguments The arguments to pass to the program, or `nil` * @param environment The environment to pass to the program, or `nil`. If it * is not `nil`, the passed dictionary will be used to * override the environment. If you want to add to the * existing environment, you need to get the existing * environment first, copy it, modify it and then pass it. * @return An initialized OFProcess. */ - initWithProgram: (OFString*)program programName: (OFString*)programName arguments: (nullable OFArray OF_GENERIC(OFString*)*)arguments environment: (nullable OFDictionary OF_GENERIC(OFString*, OFString*)*)environment; |
︙ | ︙ |
Modified src/OFSettings.h from [2f4b4ac28d] to [2c3ccb9e45].
︙ | ︙ | |||
121 122 123 124 125 126 127 | * @param array The array of strings to set * @param path The path to store the array of strings at */ - (void)setArray: (OFArray OF_GENERIC(OFString*)*)array forPath: (OFString*)path; /*! | | | 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 | * @param array The array of strings to set * @param path The path to store the array of strings at */ - (void)setArray: (OFArray OF_GENERIC(OFString*)*)array forPath: (OFString*)path; /*! * @brief Returns the string for the specified path, or `nil` if the path does * not exist. * * @param path The path for which the string value should be returned * @return The string value of the specified path */ - (nullable OFString*)stringForPath: (OFString*)path; |
︙ | ︙ |
Modified src/OFStream.h from [4dfb1471ce] to [eaef7f1c66].
︙ | ︙ | |||
40 41 42 43 44 45 46 | #if defined(OF_HAVE_SOCKETS) && defined(OF_HAVE_BLOCKS) /*! * @brief A block which is called when data was read from the stream. * * @param stream The stream on which data was read * @param buffer A buffer with the data that has been read * @param length The length of the data that has been read | | > | | > | 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 | #if defined(OF_HAVE_SOCKETS) && defined(OF_HAVE_BLOCKS) /*! * @brief A block which is called when data was read from the stream. * * @param stream The stream on which data was read * @param buffer A buffer with the data that has been read * @param length The length of the data that has been read * @param exception An exception which occurred while reading or `nil` on * success * @return A bool whether the same block should be used for the next read */ typedef bool (^of_stream_async_read_block_t)(OFStream *stream, void *buffer, size_t length, OFException *_Nullable exception); /*! * @brief A block which is called when a line was read from the stream. * * @param stream The stream on which a line was read * @param line The line which has been read or `nil` when the end of stream * occurred * @param exception An exception which occurred while reading or `nil` on * success * @return A bool whether the same block should be used for the next read */ typedef bool (^of_stream_async_read_line_block_t)(OFStream *stream, OFString *_Nullable line, OFException *_Nullable exception); #endif /*! |
︙ | ︙ | |||
558 559 560 561 562 563 564 | * stream until the end of the stream is reached. */ - (OFDataArray*)readDataArrayTillEndOfStream; /*! * @brief Reads a string with the specified length from the stream. * | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 | * stream until the end of the stream is reached. */ - (OFDataArray*)readDataArrayTillEndOfStream; /*! * @brief Reads a string with the specified length from the stream. * * If `\0` appears in the stream, the string will be truncated at the `\0` and * the rest of the bytes of the string will be lost. This way, reading from the * stream will not break because of a `\0` because the specified number of * bytes is still being read and only the string gets truncated. * * @warning Only call this when you know that enough data is available! * Otherwise you will get an exception! * * @param length The length (in bytes) of the string to read from the stream * @return A string with the specified length */ - (OFString*)readStringWithLength: (size_t)length; /*! * @brief Reads a string with the specified encoding and length from the stream. * * If a `\0` appears in the stream, the string will be truncated at the `\0` * and the rest of the bytes of the string will be lost. This way, reading from * the stream will not break because of a `\0` because the specified number of * bytes is still being read and only the string gets truncated. * * @warning Only call this when you know that enough data is available! * Otherwise you will get an exception! * * @param encoding The encoding of the string to read from the stream * @param length The length (in bytes) of the string to read from the stream * @return A string with the specified length */ - (OFString*)readStringWithLength: (size_t)length encoding: (of_string_encoding_t)encoding; /*! * @brief Reads until a newline, `\0` or end of stream occurs. * * @return The line that was read, autoreleased, or `nil` if the end of the * stream has been reached. */ - (nullable OFString*)readLine; /*! * @brief Reads with the specified encoding until a newline, `\0` or end of * stream occurs. * * @param encoding The encoding used by the stream * @return The line that was read, autoreleased, or `nil` if the end of the * stream has been reached. */ - (nullable OFString*)readLineWithEncoding: (of_string_encoding_t)encoding; #ifdef OF_HAVE_SOCKETS /*! * @brief Asyncronously reads until a newline, `\0`, end of stream or an * exception occurs. * * @note The stream must implement @ref fileDescriptorForReading and return a * valid file descriptor in order for this to work! * * @param target The target on which to call the selector when the data has * been received. If the method returns true, it will be called * again when the next line has been received. If you want the * next method in the queue to handle the next line, you need to * return false from the method * @param selector The selector to call on the target. The signature must be * `bool (OFStream *stream, OFString *line, * OFException *exception)`. */ - (void)asyncReadLineWithTarget: (id)target selector: (SEL)selector; /*! * @brief Asyncronously reads with the specified encoding until a newline, * `\0`, end of stream or an exception occurs. * * @note The stream must implement @ref fileDescriptorForReading and return a * valid file descriptor in order for this to work! * * @param encoding The encoding used by the stream * @param target The target on which to call the selector when the data has * been received. If the method returns true, it will be called * again when the next line has been received. If you want the * next method in the queue to handle the next line, you need to * return false from the method * @param selector The selector to call on the target. The signature must be * `bool (OFStream *stream, OFString *line, * OFException *exception)`. */ - (void)asyncReadLineWithEncoding: (of_string_encoding_t)encoding target: (id)target selector: (SEL)selector; # ifdef OF_HAVE_BLOCKS /*! * @brief Asyncronously reads until a newline, `\0`, end of stream or an * exception occurs. * * @note The stream must implement @ref fileDescriptorForReading and return a * valid file descriptor in order for this to work! * * @param block The block to call when the data has been received. * If the block returns true, it will be called again when the next * line has been received. If you want the next block in the queue * to handle the next line, you need to return false from the * block. */ - (void)asyncReadLineWithBlock: (of_stream_async_read_line_block_t)block; /*! * @brief Asyncronously reads with the specified encoding until a newline, * `\0`, end of stream or an exception occurs. * * @note The stream must implement @ref fileDescriptorForReading and return a * valid file descriptor in order for this to work! * * @param encoding The encoding used by the stream * @param block The block to call when the data has been received. * If the block returns true, it will be called again when the next * line has been received. If you want the next block in the queue * to handle the next line, you need to return false from the * block. */ - (void)asyncReadLineWithEncoding: (of_string_encoding_t)encoding block: (of_stream_async_read_line_block_t)block; # endif #endif /*! * @brief Tries to read a line from the stream (see readLine) and returns `nil` * if no complete line has been received yet. * * @return The line that was read, autoreleased, or `nil` if the line is not * complete yet */ - (nullable OFString*)tryReadLine; /*! * @brief Tries to read a line from the stream with the specified encoding (see * @ref readLineWithEncoding:) and returns `nil` if no complete line has * been received yet. * * @param encoding The encoding used by the stream * @return The line that was read, autoreleased, or `nil` if the line is not * complete yet */ - (nullable OFString*)tryReadLineWithEncoding: (of_string_encoding_t)encoding; /*! * @brief Reads until the specified string or `\0` is found or the end of * stream occurs. * * @param delimiter The delimiter * @return The line that was read, autoreleased, or `nil` if the end of the * stream has been reached. */ - (nullable OFString*)readTillDelimiter: (OFString*)delimiter; /*! * @brief Reads until the specified string or `\0` is found or the end of * stream occurs. * * @param delimiter The delimiter * @param encoding The encoding used by the stream * @return The line that was read, autoreleased, or `nil` if the end of the * stream has been reached. */ - (nullable OFString*)readTillDelimiter: (OFString*)delimiter encoding: (of_string_encoding_t)encoding; /*! * @brief Tries to reads until the specified string or `\0` is found or the end * of stream (see @ref readTillDelimiter:) and returns `nil` if not * enough data has been received yet. * * @param delimiter The delimiter * @return The line that was read, autoreleased, or `nil` if the end of the * stream has been reached. */ - (nullable OFString*)tryReadTillDelimiter: (OFString*)delimiter; /*! * @brief Tries to read until the specified string or `\0` is found or the end * of stream occurs (see @ref readTillDelimiter:encoding:) and returns * `nil` if not enough data has been received yet. * * @param delimiter The delimiter * @param encoding The encoding used by the stream * @return The line that was read, autoreleased, or `nil` if the end of the * stream has been reached. */ - (nullable OFString*)tryReadTillDelimiter: (OFString*)delimiter encoding: (of_string_encoding_t)encoding; /*! * @brief Returns a boolen whether writes are buffered. |
︙ | ︙ |
Modified src/OFString+XMLUnescaping.h from [7a2761c9a2] to [84773e4642].
︙ | ︙ | |||
48 49 50 51 52 53 54 | * stringByXMLUnescapingWithHandler:. */ @protocol OFStringXMLUnescapingDelegate <OFObject> /*! * @brief This callback is called when an unknown entity was found while trying * to unescape XML. * | | | | 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | * stringByXMLUnescapingWithHandler:. */ @protocol OFStringXMLUnescapingDelegate <OFObject> /*! * @brief This callback is called when an unknown entity was found while trying * to unescape XML. * * The callback is supposed to return a substitution for the entity or `nil` if * it is unknown to the callback as well, in which case an exception will be * thrown. * * @param string The string which contains the unknown entity * @param entity The name of the entity that is unknown * @return A substitution for the entity or `nil` */ - (OFString*)string: (OFString*)string containsUnknownEntityNamed: (OFString*)entity; @end @interface OFString (XMLUnescaping) /*! |
︙ | ︙ |
Modified src/OFSystemInfo.h from [5abab9f67b] to [1916d81006].
︙ | ︙ | |||
76 77 78 79 80 81 82 | * @return The path where user configuration for the application can be stored */ + (OFString*)userConfigPath; /*! * @brief Returns the vendor of the CPU. * | | | 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 | * @return The path where user configuration for the application can be stored */ + (OFString*)userConfigPath; /*! * @brief Returns the vendor of the CPU. * * If the vendor could not be determined, `nil` is returned instead. * * @return The vendor of the CPU */ + (nullable OFString*)CPUVendor; #if defined(OF_X86_64) || defined(OF_X86) || defined(DOXYGEN) /*! |
︙ | ︙ |
Modified src/OFTCPSocket.h from [68e32c48a9] to [236b9a919c].
︙ | ︙ | |||
27 28 29 30 31 32 33 | #ifdef OF_HAVE_BLOCKS /*! * @brief A block which is called when the socket connected. * * @param socket The socket which connected * @param exception An exception which occurred while connecting the socket or | | | | 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 | #ifdef OF_HAVE_BLOCKS /*! * @brief A block which is called when the socket connected. * * @param socket The socket which connected * @param exception An exception which occurred while connecting the socket or * `nil` on success */ typedef void (^of_tcp_socket_async_connect_block_t)(OFTCPSocket *socket, OFException *_Nullable exception); /*! * @brief A block which is called when the socket accepted a connection. * * @param socket The socket which accepted the connection * @param acceptedSocket The socket which has been accepted * @param exception An exception which occurred while accepting the socket or * `nil` on success * @return A bool whether the same block should be used for the next incoming * connection */ typedef bool (^of_tcp_socket_async_accept_block_t)(OFTCPSocket *socket, OFTCPSocket *acceptedSocket, OFException *_Nullable exception); #endif |
︙ | ︙ |
Modified src/OFTLSSocket.h from [d16d0183c5] to [cc8fcde285].
︙ | ︙ | |||
76 77 78 79 80 81 82 | /*! * @brief Initiates the TLS handshake. * * @note This is only useful if you used @ref initWithSocket: to start TLS on * a TCP socket which is already connected! * * @param host The host to expect for certificate verification. | | | 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 | /*! * @brief Initiates the TLS handshake. * * @note This is only useful if you used @ref initWithSocket: to start TLS on * a TCP socket which is already connected! * * @param host The host to expect for certificate verification. * May be `nil` if certificate verification is disabled. */ - (void)startTLSWithExpectedHost: (nullable OFString*)host; /*! * @brief Sets a delegate for the TLS socket. * * @param delegate The delegate to use |
︙ | ︙ |
Modified src/OFThread.h from [5636f9d458] to [c270f45fee].
︙ | ︙ | |||
145 146 147 148 149 150 151 | * @brief Yields a processor voluntarily and moves the thread to the end of the * queue for its priority. */ + (void)yield; #ifdef OF_HAVE_THREADS /*! | | | 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 | * @brief Yields a processor voluntarily and moves the thread to the end of the * queue for its priority. */ + (void)yield; #ifdef OF_HAVE_THREADS /*! * @brief Terminates the current thread, letting it return `nil`. */ + (void)terminate OF_NO_RETURN; /*! * @brief Terminates the current thread, letting it return the specified object. * * @param object The object which the terminated thread will return |
︙ | ︙ | |||
204 205 206 207 208 209 210 | * @brief Returns the run loop for the thread. * * @return The run loop for the thread */ - (OFRunLoop*)runLoop; /*! | | | 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 | * @brief Returns the run loop for the thread. * * @return The run loop for the thread */ - (OFRunLoop*)runLoop; /*! * @brief Returns the name of the thread or `nil` if none has been set. * * @return The name of the thread or nik if none has been set */ - (nullable OFString*)name; /*! * @brief Sets the name for the thread. |
︙ | ︙ |
Modified src/OFUDPSocket.h from [24146b1f99] to [385f265ac9].
︙ | ︙ | |||
40 41 42 43 44 45 46 | /*! * @brief A block which is called when the host / port pair for the UDP socket * has been resolved. * * @param host The host that has been resolved * @param port The port of the host / port pair * @param address The address of the resolved host / port pair | | | | 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 | /*! * @brief A block which is called when the host / port pair for the UDP socket * has been resolved. * * @param host The host that has been resolved * @param port The port of the host / port pair * @param address The address of the resolved host / port pair * @param exception An exception which occurred while resolving or `nil` on * success */ typedef void (^of_udp_socket_async_resolve_block_t)(OFString *host, uint16_t port, of_udp_socket_address_t address, OFException *_Nullable exception); /*! * @brief A block which is called when a packet has been received. * * @param socket The UDP which received a packet * @param buffer The buffer the packet has been written to * @param length The length of the packet * @param sender The address of the sender of the packet * @param exception An exception which occurred while receiving or `nil` on * success * @return A bool whether the same block should be used for the next receive */ typedef bool (^of_udp_socket_async_receive_block_t)(OFUDPSocket *socket, void *buffer, size_t length, of_udp_socket_address_t sender, OFException *_Nullable exception); #endif |
︙ | ︙ |
Modified src/OFXMLParser.h from [8ab695520f] to [98bb225fb1].
︙ | ︙ | |||
50 51 52 53 54 55 56 | /*! * @brief This callback is called when the XML parser found the start of a new * tag. * * @param parser The parser which found a new tag * @param name The name of the tag which just started | | | | | | | 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 | /*! * @brief This callback is called when the XML parser found the start of a new * tag. * * @param parser The parser which found a new tag * @param name The name of the tag which just started * @param prefix The prefix of the tag which just started or `nil` * @param ns The namespace of the tag which just started or `nil` * @param attributes The attributes included in the tag which just started or * `nil` */ - (void)parser: (OFXMLParser*)parser didStartElement: (OFString*)name prefix: (nullable OFString*)prefix namespace: (nullable OFString*)ns attributes: (nullable OFArray OF_GENERIC(OFXMLAttribute*)*)attributes; /*! * @brief This callback is called when the XML parser found the end of a tag. * * @param parser The parser which found the end of a tag * @param name The name of the tag which just ended * @param prefix The prefix of the tag which just ended or `nil` * @param ns The namespace of the tag which just ended or `nil` */ - (void)parser: (OFXMLParser*)parser didEndElement: (OFString*)name prefix: (nullable OFString*)prefix namespace: (nullable OFString*)ns; /*! |
︙ | ︙ | |||
108 109 110 111 112 113 114 | - (void)parser: (OFXMLParser*)parser foundComment: (OFString*)comment; /*! * @brief This callback is called when the XML parser found an entity it * doesn't know. * | | | | 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 | - (void)parser: (OFXMLParser*)parser foundComment: (OFString*)comment; /*! * @brief This callback is called when the XML parser found an entity it * doesn't know. * * The callback is supposed to return a substitution for the entity or `nil` if * it is not known to the callback as well, in which case an exception will be * risen. * * @param parser The parser which found an unknown entity * @param entity The name of the entity the XML parser didn't know * @return A substitution for the entity or `nil` */ - (OFString*)parser: (OFXMLParser*)parser foundUnknownEntityNamed: (OFString*)entity; @end /*! * @class OFXMLParser OFXMLParser.h ObjFW/OFXMLParser.h |
︙ | ︙ |