From 6411934685689923c1825968c8645485f12274eb Mon Sep 17 00:00:00 2001 From: Jonathan Schleifer Date: Tue, 6 Nov 2018 22:20:12 +0000 Subject: [PATCH] Adjust to ObjFW changes FossilOrigin-Name: 7a7f60e3e63b1d8bd67b43effb98703320fa689801e4fd575aae26f5354882c9 --- src/IRCConnection.h | 52 ++++++++++++++++++++++++++------------------- src/IRCConnection.m | 21 ++++++++++-------- src/IRCUser.h | 6 +++++- src/IRCUser.m | 4 ++-- 4 files changed, 49 insertions(+), 34 deletions(-) diff --git a/src/IRCConnection.h b/src/IRCConnection.h index 434315a..00b4b54 100644 --- a/src/IRCConnection.h +++ b/src/IRCConnection.h @@ -23,6 +23,8 @@ #import +OF_ASSUME_NONNULL_BEGIN + @class IRCConnection; @class IRCUser; @@ -41,7 +43,7 @@ - (void)connection: (IRCConnection *)connection didSeeUser: (IRCUser *)user leaveChannel: (OFString *)channel - reason: (OFString *)reason; + reason: (nullable OFString *)reason; - (void)connection: (IRCConnection *)connection didSeeUser: (IRCUser *)user changeNicknameTo: (OFString *)nickname; @@ -49,10 +51,10 @@ didSeeUser: (IRCUser *)user kickUser: (OFString *)kickedUser channel: (OFString *)channel - reason: (OFString *)reason; + reason: (nullable OFString *)reason; - (void)connection: (IRCConnection *)connection didSeeUserQuit: (IRCUser *)user - reason: (OFString *)reason; + reason: (nullable OFString *)reason; - (void)connection: (IRCConnection *)connection didReceiveMessage: (OFString *)msg channel: (OFString *)channel @@ -75,46 +77,52 @@ @interface IRCConnection: OFObject { Class _socketClass; - OF_KINDOF(OFTCPSocket) *_socket; - OFString *_server; + OF_KINDOF(OFTCPSocket) *_Nullable _socket; + OFString *_Nullable _server; uint16_t _port; - OFString *_nickname, *_username, *_realname; + OFString *_Nullable _nickname, *_Nullable _username; + OFString *_Nullable _realname; OFMutableDictionary OF_GENERIC(OFString *, OFMutableSet *) *_channels; - id _delegate; + id _Nullable _delegate; of_string_encoding_t _fallbackEncoding; of_time_interval_t _pingInterval, _pingTimeout; - OFString *_pingData; - OFTimer *_pingTimer; + OFString *_Nullable _pingData; + OFTimer *_Nullable _pingTimer; } -@property (assign) Class socketClass; -@property (nonatomic, copy) OFString *server; -@property uint16_t port; -@property (nonatomic, copy) OFString *nickname, *username, *realname; -@property (assign) id delegate; -@property (readonly, nonatomic) OFTCPSocket *socket; -@property of_string_encoding_t fallbackEncoding; -@property of_time_interval_t pingInterval, pingTimeout; +@property (readonly, nonatomic) Class socketClass; +@property OF_NULLABLE_PROPERTY (copy, nonatomic) OFString *server; +@property (nonatomic) uint16_t port; +@property OF_NULLABLE_PROPERTY (copy, nonatomic) + OFString *nickname, *username, *realname; +@property OF_NULLABLE_PROPERTY (assign, nonatomic) + id delegate; +@property OF_NULLABLE_PROPERTY (readonly, nonatomic) + OF_KINDOF(OFTCPSocket *) socket; +@property (nonatomic) of_string_encoding_t fallbackEncoding; +@property (nonatomic) of_time_interval_t pingInterval, pingTimeout; + (instancetype)connection; - (void)sendLine: (OFString *)line; - (void)sendLineWithFormat: (OFConstantString *)line, ...; - (void)connect; - (void)disconnect; -- (void)disconnectWithReason: (OFString *)reason; +- (void)disconnectWithReason: (nullable OFString *)reason; - (void)joinChannel: (OFString *)channelName; - (void)leaveChannel: (OFString *)channel; - (void)leaveChannel: (OFString *)channel - reason: (OFString *)reason; -- (void)sendMessage: (OFString *)msg + reason: (nullable OFString *)reason; +- (void)sendMessage: (OFString *)message to: (OFString *)to; - (void)sendNotice: (OFString *)notice to: (OFString *)to; - (void)kickUser: (OFString *)user channel: (OFString *)channel - reason: (OFString *)reason; + reason: (nullable OFString *)reason; - (void)changeNicknameTo: (OFString *)nickname; - (void)processLine: (OFString *)line; - (void)handleConnection; -- (OFSet OF_GENERIC(OFString *) *)usersInChannel: (OFString *)channel; +- (nullable OFSet OF_GENERIC(OFString *) *)usersInChannel: (OFString *)channel; @end + +OF_ASSUME_NONNULL_END diff --git a/src/IRCConnection.m b/src/IRCConnection.m index 5f3bc33..7d97f24 100644 --- a/src/IRCConnection.m +++ b/src/IRCConnection.m @@ -184,12 +184,12 @@ objc_autoreleasePoolPop(pool); } -- (void)sendMessage: (OFString *)msg +- (void)sendMessage: (OFString *)message to: (OFString *)to { void *pool = objc_autoreleasePoolPush(); - for (OFString *line in [msg componentsSeparatedByString: @"\n"]) + for (OFString *line in [message componentsSeparatedByString: @"\n"]) [self sendLineWithFormat: @"PRIVMSG %@ :%@", to, line]; objc_autoreleasePoolPop(pool); @@ -482,13 +482,13 @@ OFString *from = [components objectAtIndex: 0]; OFString *to = [components objectAtIndex: 2]; IRCUser *user; - OFString *msg; + OFString *message; size_t pos = [from length] + 1 + [[components objectAtIndex: 1] length] + 1 + [to length]; from = [from substringWithRange: of_range(1, [from length] - 1)]; - msg = [line substringWithRange: + message = [line substringWithRange: of_range(pos + 2, [line length] - pos - 2)]; user = [IRCUser IRCUserWithString: from]; @@ -496,14 +496,14 @@ if ([_delegate respondsToSelector: @selector(connection: didReceiveMessage:channel:user:)]) [_delegate connection: self - didReceiveMessage: msg + didReceiveMessage: message channel: to user: user]; } else { if ([_delegate respondsToSelector: @selector(connection: didReceivePrivateMessage:user:)]) [_delegate connection: self - didReceivePrivateMessage: msg + didReceivePrivateMessage: message user: user]; } @@ -593,7 +593,8 @@ [socket asyncReadLineWithTarget: self selector: @selector(socket: didReceiveLine: - exception:)]; + exception:) + context: nil]; } return false; @@ -614,7 +615,8 @@ target: self selector: @selector(socket: didReceiveWronglyEncodedLine: - exception:)]; + exception:) + context: nil]; return false; } @@ -635,7 +637,8 @@ { [_socket asyncReadLineWithTarget: self selector: @selector(socket:didReceiveLine: - exception:)]; + exception:) + context: nil]; } - (OFSet OF_GENERIC(OFString *) *)usersInChannel: (OFString *)channel diff --git a/src/IRCUser.h b/src/IRCUser.h index aa48686..c29389d 100644 --- a/src/IRCUser.h +++ b/src/IRCUser.h @@ -23,6 +23,8 @@ #import +OF_ASSUME_NONNULL_BEGIN + @interface IRCUser: OFObject { OFString *_nickname, *_username, *_hostname; @@ -31,5 +33,7 @@ @property (readonly, nonatomic) OFString *nickname, *username, *hostname; + (instancetype)IRCUserWithString: (OFString *)string; -- initWithString: (OFString *)string; +- (instancetype)initWithString: (OFString *)string OF_DESIGNATED_INITIALIZER; @end + +OF_ASSUME_NONNULL_END diff --git a/src/IRCUser.m b/src/IRCUser.m index 3430aac..911ac2c 100644 --- a/src/IRCUser.m +++ b/src/IRCUser.m @@ -41,7 +41,7 @@ return [[[self alloc] initWithString: string] autorelease]; } -- initWithString: (OFString *)string +- (instancetype)initWithString: (OFString *)string { char *tmp2 = NULL; @@ -88,7 +88,7 @@ [super dealloc]; } -- copy +- (id)copy { return [self retain]; }