mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 09:38:11 +00:00

The Serenity Stream API is the name for the new set of classes intended to replace IODevice and its descendants. It provides more flexibility for subclasses by allowing each subclass to override all the possible functionalities according to their wishes. Stream is the base class which implements majority of the functionality expected from a readable and writable stream. SeekableStream adds seeking on top, and provides a couple utility methods which derive from seek. Socket adds a couple of BSD socket utility functions such as checking whether there is data available to read and checking the pending bytes on the socket. As for the concrete classes, there is File which is a SeekableStream and is intended to operate on file-like objects; and TCPSocket, UDPSocket and LocalSocket, which handle TCP, UDP and UNIX sockets respectively. The concrete classes do not do buffering by default. For buffering functionality, a set of augmentative classes named BufferedSeekable and BufferedSocket have been implemented, intended to wrap a SeekableStream and a Socket, respectively.
42 lines
764 B
CMake
42 lines
764 B
CMake
set(SOURCES
|
|
Account.cpp
|
|
AnonymousBuffer.cpp
|
|
ArgsParser.cpp
|
|
ConfigFile.cpp
|
|
Command.cpp
|
|
DateTime.cpp
|
|
DirIterator.cpp
|
|
ElapsedTimer.cpp
|
|
Event.cpp
|
|
EventLoop.cpp
|
|
FileWatcher.cpp
|
|
File.cpp
|
|
GetPassword.cpp
|
|
IODevice.cpp
|
|
LocalServer.cpp
|
|
LocalSocket.cpp
|
|
LockFile.cpp
|
|
MappedFile.cpp
|
|
MimeData.cpp
|
|
NetworkJob.cpp
|
|
NetworkResponse.cpp
|
|
Notifier.cpp
|
|
Object.cpp
|
|
Process.cpp
|
|
ProcessStatisticsReader.cpp
|
|
Property.cpp
|
|
SecretString.cpp
|
|
Socket.cpp
|
|
Stream.cpp
|
|
StandardPaths.cpp
|
|
System.cpp
|
|
TCPServer.cpp
|
|
TCPSocket.cpp
|
|
Timer.cpp
|
|
UDPServer.cpp
|
|
UDPSocket.cpp
|
|
Version.cpp
|
|
)
|
|
|
|
serenity_lib(LibCore core)
|
|
target_link_libraries(LibCore LibC LibCrypt)
|