Merge branch 'master' into raph

This commit is contained in:
Raphaël 2025-05-24 18:03:06 +02:00 committed by GitHub
commit 520814d6bd
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 357 additions and 225 deletions

View file

@ -10,11 +10,13 @@ class "main()"
' ========================
class Server {
- _port : int
- _serverFd : int
- _password : string
- _server_fd : int
- _poll : PollManager
- _pollManager : PollManager
- _users : map<int, User*>
+ Server(port : int, password : string)
+ ~Server()
+ start() : void
+ getPort() : int
+ showInfo() : void
@ -25,38 +27,42 @@ class Server {
' ============================
class PollManager {
- _fds : vector<pollfd>
- _users : map<int, User>
+ addUser(fd : int) : void
+ removeUser(fd : int) : void
+ updateUser(fd : int, events : short) : void
+ pollLoop(server_fd : int) : void
+ readFromUser(fd : int) : void
+ writeToUser(fd : int) : void
+ PollManager()
+ ~PollManager()
+ setServerFd(fd : int) : void
+ addClient(fd : short unsigned) : void
+ removeClient(fd : short unsigned) : void
+ updateServer(fd : short unsigned) : void
+ pollLoop(server_fd : int, newClients : vector<int>, disconnected : vector<int>, readyClients : vector<pair<int, string>>) : void
}
' ========================
' CLASS: User
' ========================
class User {
- _fd : int
- _nickname : string
- _username : string
- _hostname : string
- _readBuffer : string
- _writeBuffer : string
- _fd : short unsigned int
- _registered : bool
+ getFd() : int
+ getName() : string
+ setNickname(name : string) : void
+ appendToReadBuffer(data : string) : void
+ appendToWriteBuffer(data : string) : void
+ extractFullCommand() : string
- _nickname : string
- _hostname : string
- _read_buffer : string
- _write_buffer : string
- _username : string
- _hasNick : bool
- _hasUser : bool
+ User(fd : short unsigned int)
+ getFd() : short unsigned int
+ isReadyToSend() : bool
+ isRegistered() : bool
+ getName() : string
+ extractFullCommand() : string
+ appendToReadBuffer(data : string) : void
+ appendToWriteBuffer(data : string) : void
+ setNickname(nickname : string) : void
+ setUsername(username : string) : void
+ checkRegistration() : void
}
' ========================
' CLASS: Channel
' ========================