44 template<
typename value_type>
using object_filter = std::function<bool(value_type)>;
51 jsonifier::vector<value_type> objects{};
54 static unordered_map<jsonifier::string, unbounded_message_block<value_type>*> objectsBuffersMap;
65 void run(std::coroutine_handle<
72 object_collector_return_data objectReturnData{};
73 object_filter<value_type> filteringFunction{};
74 int32_t quantityOfObjectsToCollect{};
75 jsonifier::string collectorId{};
76 int32_t msToCollectFor{};
79 using message_collector = object_collector<message_data>;
99 template<
typename value_type>
friend struct jsonifier::core;
116 jsonifier::vector<attachment_data> attachments{};
118 jsonifier::vector<jsonifier::string> stickerIds{};
141 template<
typename value_type>
friend struct jsonifier::core;
150 jsonifier::vector<attachment_data> attachments{};
165 jsonifier::string reason{};
A co_routine - representing a potentially asynchronous operation/function.
For sending Https requests.
Data structure representing a single message_data.
Message response base, for responding to messages.
An interface class for the message_data related discord endpoints.
Object collector, for collecting objects from a channel.
co_routine< object_collector_return_data, false > collectObjects(int32_t quantityToCollect, int32_t msToCollectForNew, object_filter< value_type > filteringFunctionNew)
Begin waiting for objects.
For sending a direct-message.
A class representing a snowflake identifier with various operations.
A class that extends time_stamp_base to provide additional functionality.
A thread-safe messaging block for data-structures.
std::function< bool(value_type)> object_filter
Typedef for the message filter.
The main namespace for the forward-facing interfaces.
For crossposting a message.
snowflake messageId
snowflake of the message to be crossposted.
snowflake channelId
channel_data within which to crosspost the message from.
For deleting a bulk of messages.
jsonifier::vector< snowflake > messageIds
Array of message ids to delete.
snowflake channelId
channel_data within which to delete the messages.
jsonifier::string reason
The reason for deleting the messages.
snowflake channelId
The channel_data from which to collect the message_data.
For getting a collection of messages.
snowflake aroundThisId
Around this id.
snowflake afterThisId
After this id.
snowflake beforeThisId
Before this id.
int32_t limit
Limit of messages to collect.
snowflake channelId
channel_data from which to collect the messages.
For getting a collection of pinned messages.
snowflake channelId
The channel_data from which to collect pinned messages.
Object_collector_return_data responseData.c.
For pinning a single message_data.
snowflake messageId
The message which you would like to pin.
snowflake channelId
The channel_data within which to pin the message_data.
jsonifier::string reason
Reason for pinning this message_data.
For unpinning a single message_data.
jsonifier::string reason
Reason for pinning this message_data.
snowflake channelId
The channel_data within which to unpin the message_data.
snowflake messageId
The message which you would like to unpin.