Differences From Artifact [06c158db08]:
- File
src/OFOptionsParser.h
— part of check-in
[0a73af49f0]
at
2017-04-30 13:35:16
on branch trunk
— Use nonatomic for properties and clean up
This changes retaining behavior, meaning properties are not returned
retained and autoreleased anymore, so a property returned from a getter
now needs to be manually retained and autoreleased before calling the
setter. However, this is rarely the case and not using atomic improves
performance. (user: js, size: 5221) [annotate] [blame] [check-ins using]
To Artifact [faec9b2ba6]:
- File
src/OFOptionsParser.h
— part of check-in
[4af49a13c3]
at
2017-05-07 20:10:13
on branch trunk
— Small code style change
Casts are now written like types in variable declarations. (user: js, size: 5227) [annotate] [blame] [check-ins using]
︙ | ︙ | |||
50 51 52 53 54 55 56 | /*! * An optional pointer to a bool that is set to whether the option has * been specified. */ bool *_Nullable isSpecifiedPtr; /*! | | | | | 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 | /*! * 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 * * @brief A class for parsing the program options specified on the command line. */ @interface OFOptionsParser: OFObject { of_options_parser_option_t *_options; OFMapTable *_longOptions; OFArray OF_GENERIC(OFString *) *_arguments; size_t _index, _subIndex; of_unichar_t _lastOption; OFString *_lastLongOption, *_argument; bool _done; } /*! |
︙ | ︙ | |||
114 115 116 117 118 119 120 | * * @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 */ | | | | 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 | * * @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 |
︙ | ︙ | |||
153 154 155 156 157 158 159 | - (of_unichar_t)nextOption; /*! * @brief Returns the arguments following the last option. * * @return The arguments following the last option */ | | | 153 154 155 156 157 158 159 160 161 162 163 | - (of_unichar_t)nextOption; /*! * @brief Returns the arguments following the last option. * * @return The arguments following the last option */ - (OFArray OF_GENERIC(OFString *) *)remainingArguments; @end OF_ASSUME_NONNULL_END |