|
cpp-mirai-client
v2.6.1
cpp client for mirai-api-http
|
消息链对象,由一系列消息元素组成 更多...
#include <MessageChain.hpp>
类 | |
| class | MessageElement |
| 消息元素对象 更多... | |
| struct | SourceInfo |
| 消息来源信息 更多... | |
Public 成员函数 | |
| MessageChain ()=default | |
| MessageChain (const MessageChain &rhs) | |
| MessageChain & | operator= (const MessageChain &rhs) |
| MessageChain (MessageChain &&rhs) noexcept | |
| MessageChain & | operator= (MessageChain &&rhs) noexcept |
| ~MessageChain ()=default | |
| template<typename MessageType > | |
| MessageChain & | push_back (MessageType &&m) |
| 在消息链结尾添加消息元素 更多... | |
| template<typename MessageType , typename... Args> | |
| MessageChain & | emplace_back (Args &&... args) |
| 在消息链结尾直接构造消息元素 更多... | |
| template<MessageTypes Type, typename... Args> | |
| MessageChain & | emplace_back (Args &&... args) |
| 在消息链结尾直接构造消息元素 更多... | |
| template<typename MessageType > | |
| iterator | insert (const_iterator pos, MessageType &&m) |
| 在消息链中插入元素 更多... | |
| template<typename MessageType , typename... Args> | |
| iterator | emplace (const_iterator pos, Args &&... args) |
| 在消息链中插入元素 更多... | |
| template<MessageTypes Type, typename... Args> | |
| iterator | emplace (const_iterator pos, Args &&... args) |
| 在消息链中插入元素 更多... | |
| MessageTypes | GetType (size_type i) const |
| 获取指定下标处的消息类型 更多... | |
| template<typename MessageType > | |
| std::vector< MessageType > | GetAll () const |
| 获取所有指定类型的消息元素 更多... | |
| template<MessageTypes Type> | |
| auto | GetAll () const |
| 获取所有指定类型的消息元素 更多... | |
| std::optional< SourceInfo > | GetSourceInfo () const |
| 获取消息链中的来源信息 更多... | |
| void | RemoveInvalid () |
| 去除消息链中的无效消息 更多... | |
| bool | valid () const |
| 检查消息链是否有效 更多... | |
| template<typename... Args> | |
| MessageChain & | App (Args &&... args) |
在消息链结尾构造 AppMessage,返回自身的引用 更多... | |
| template<typename... Args> | |
| MessageChain & | AtAll (Args &&... args) |
在消息链结尾构造 AtAllMessage,返回自身的引用 更多... | |
| template<typename... Args> | |
| MessageChain & | At (Args &&... args) |
在消息链结尾构造 AtMessage,返回自身的引用 更多... | |
| template<typename... Args> | |
| MessageChain & | Audio (Args &&... args) |
在消息链结尾构造 AudioMessage,返回自身的引用 更多... | |
| template<typename... Args> | |
| MessageChain & | Dice (Args &&... args) |
在消息链结尾构造 DiceMessage,返回自身的引用 更多... | |
| template<typename... Args> | |
| MessageChain & | Face (Args &&... args) |
在消息链结尾构造 FaceMessage,返回自身的引用 更多... | |
| template<typename... Args> | |
| MessageChain & | Flash (Args &&... args) |
在消息链结尾构造 FlashImageMessage,返回自身的引用 更多... | |
| template<typename... Args> | |
| MessageChain & | Image (Args &&... args) |
在消息链结尾构造 ImageMessage,返回自身的引用 更多... | |
| template<typename... Args> | |
| MessageChain & | Json (Args &&... args) |
在消息链结尾构造 JsonMessage,返回自身的引用 更多... | |
| template<typename... Args> | |
| MessageChain & | MiraiCode (Args &&... args) |
在消息链结尾构造 MiraiCodeMessage,返回自身的引用 更多... | |
| template<typename... Args> | |
| MessageChain & | Plain (Args &&... args) |
在消息链结尾构造 PlainMessage,返回自身的引用 更多... | |
| template<typename... Args> | |
| MessageChain & | Poke (Args &&... args) |
在消息链结尾构造 PokeMessage,返回自身的引用 更多... | |
| template<typename... Args> | |
| MessageChain & | Xml (Args &&... args) |
在消息链结尾构造 XmlMessage,返回自身的引用 更多... | |
| template<typename... Args> | |
| MessageChain & | Forward (Args &&... args) |
在消息链结尾插入 ForwardMessage,返回自身的引用 更多... | |
| MessageChain & | operator+= (const MessageChain &rhs) |
| MessageChain & | operator+= (MessageChain &&rhs) |
| MessageChain & | operator+= (const MessageElement &m) |
| MessageChain & | operator+= (MessageElement &&m) |
| template<typename MessageType > | |
| auto | operator+= (MessageType &&m) -> std::enable_if_t< traits::is_message_type< std::decay_t< MessageType > >::value, MessageChain & > |
| template<typename MessageType > | |
| MessageType & | GetAt (size_type i) |
| 获取指定下标处的消息 更多... | |
| template<typename MessageType > | |
| const MessageType & | GetAt (size_type i) const |
| 获取指定下标处的消息 更多... | |
| template<MessageTypes Type> | |
| GetType_t< Type > & | GetAt (size_type i) |
| 获取指定下标处的消息 更多... | |
| template<MessageTypes Type> | |
| const GetType_t< Type > & | GetAt (size_type i) const |
| 获取指定下标处的消息 更多... | |
| template<typename MessageType > | |
| std::vector< std::reference_wrapper< MessageType > > | GetAllRef () |
| 获取所有指定类型的消息元素的引用 更多... | |
| template<typename MessageType > | |
| std::vector< std::reference_wrapper< const MessageType > > | GetAllRef () const |
| 获取所有指定类型的消息元素的引用 更多... | |
| template<MessageTypes Type> | |
| auto | GetAllRef () |
| 获取所有指定类型的消息元素的引用 更多... | |
| template<MessageTypes Type> | |
| auto | GetAllRef () const |
| 获取所有指定类型的消息元素的引用 更多... | |
Protected 类型 | |
| using | MessageContainer = std::vector< MessageElement > |
Protected 属性 | |
| MessageContainer | message_ |
友元 | |
| MessageChain | operator+ (const MessageChain &lhs, const MessageChain &rhs) |
| 拼接两个消息链 更多... | |
| MessageChain | operator+ (const MessageChain &lhs, const MessageElement &m) |
| MessageChain | operator+ (const MessageElement &m, const MessageChain &rhs) |
| template<typename MessageType > | |
| auto | operator+ (const MessageChain &lhs, MessageType &&m) -> std::enable_if_t< traits::is_message_type< std::decay_t< MessageType > >::value, MessageChain > |
| template<typename MessageType > | |
| auto | operator+ (MessageType &&m, const MessageChain &rhs) -> std::enable_if_t< traits::is_message_type< std::decay_t< MessageType > >::value, MessageChain > |
| using | value_type = MessageContainer::value_type |
| STL-like interface 更多... | |
| using | allocator_type = MessageContainer::allocator_type |
| STL-like interface 更多... | |
| using | size_type = MessageContainer::size_type |
| STL-like interface 更多... | |
| using | difference_type = MessageContainer::difference_type |
| STL-like interface 更多... | |
| using | reference = MessageContainer::reference |
| STL-like interface 更多... | |
| using | const_reference = MessageContainer::const_reference |
| STL-like interface 更多... | |
| using | pointer = MessageContainer::pointer |
| STL-like interface 更多... | |
| using | const_pointer = MessageContainer::const_pointer |
| STL-like interface 更多... | |
| using | reverse_iterator = MessageContainer::reverse_iterator |
| STL-like interface 更多... | |
| using | const_reverse_iterator = MessageContainer::const_reverse_iterator |
| STL-like interface 更多... | |
| using | iterator = MessageContainer::iterator |
| STL-like interface 更多... | |
| using | const_iterator = MessageContainer::const_iterator |
| STL-like interface 更多... | |
| bool | empty () const noexcept |
| STL-like interface 更多... | |
| size_type | size () const noexcept |
| STL-like interface 更多... | |
| void | reserve (size_type new_cap) |
| STL-like interface 更多... | |
| void | shrink_to_fit () noexcept |
| STL-like interface 更多... | |
| size_type | max_size () const noexcept |
| STL-like interface 更多... | |
| size_type | capacity () const noexcept |
| STL-like interface 更多... | |
| void | clear () noexcept |
| STL-like interface 更多... | |
| iterator | erase (const_iterator pos) |
| STL-like interface 更多... | |
| iterator | erase (const_iterator first, const_iterator last) |
| STL-like interface 更多... | |
| void | pop_back () |
| STL-like interface 更多... | |
| void | resize (size_type count) |
| STL-like interface 更多... | |
| iterator | begin () noexcept |
| STL-like interface 更多... | |
| const_iterator | begin () const noexcept |
| STL-like interface 更多... | |
| const_iterator | cbegin () const noexcept |
| STL-like interface 更多... | |
| iterator | end () noexcept |
| STL-like interface 更多... | |
| const_iterator | end () const noexcept |
| STL-like interface 更多... | |
| const_iterator | cend () const noexcept |
| STL-like interface 更多... | |
| reverse_iterator | rbegin () noexcept |
| STL-like interface 更多... | |
| const_reverse_iterator | crbegin () const noexcept |
| STL-like interface 更多... | |
| reverse_iterator | rend () noexcept |
| STL-like interface 更多... | |
| const_reverse_iterator | crend () const noexcept |
| STL-like interface 更多... | |
| const_reference | operator[] (size_type n) const noexcept |
| STL-like interface 更多... | |
| reference | operator[] (size_type n) noexcept |
| STL-like interface 更多... | |
| const_reference | at (size_type n) const |
| STL-like interface 更多... | |
| reference | at (size_type n) |
| STL-like interface 更多... | |
| const_reference | back () const |
| STL-like interface 更多... | |
| reference | back () |
| STL-like interface 更多... | |
| const_reference | front () const |
| STL-like interface 更多... | |
| reference | front () |
| STL-like interface 更多... | |
消息链对象,由一系列消息元素组成
可以使用类似STL容器的操作来访问各元素( std::vector<std::unique_ptr<MessageElement>> )
在文件 MessageChain.hpp 第 60 行定义.
|
protected |
在文件 MessageChain.hpp 第 313 行定义.
| using Mirai::MessageChain::value_type = MessageContainer::value_type |
STL-like interface
在文件 MessageChain.hpp 第 333 行定义.
| using Mirai::MessageChain::allocator_type = MessageContainer::allocator_type |
STL-like interface
在文件 MessageChain.hpp 第 334 行定义.
| using Mirai::MessageChain::size_type = MessageContainer::size_type |
STL-like interface
在文件 MessageChain.hpp 第 335 行定义.
| using Mirai::MessageChain::difference_type = MessageContainer::difference_type |
STL-like interface
在文件 MessageChain.hpp 第 336 行定义.
| using Mirai::MessageChain::reference = MessageContainer::reference |
STL-like interface
在文件 MessageChain.hpp 第 337 行定义.
| using Mirai::MessageChain::const_reference = MessageContainer::const_reference |
STL-like interface
在文件 MessageChain.hpp 第 338 行定义.
| using Mirai::MessageChain::pointer = MessageContainer::pointer |
STL-like interface
在文件 MessageChain.hpp 第 339 行定义.
| using Mirai::MessageChain::const_pointer = MessageContainer::const_pointer |
STL-like interface
在文件 MessageChain.hpp 第 340 行定义.
| using Mirai::MessageChain::reverse_iterator = MessageContainer::reverse_iterator |
STL-like interface
在文件 MessageChain.hpp 第 341 行定义.
| using Mirai::MessageChain::const_reverse_iterator = MessageContainer::const_reverse_iterator |
STL-like interface
在文件 MessageChain.hpp 第 342 行定义.
| using Mirai::MessageChain::iterator = MessageContainer::iterator |
STL-like interface
在文件 MessageChain.hpp 第 343 行定义.
| using Mirai::MessageChain::const_iterator = MessageContainer::const_iterator |
STL-like interface
在文件 MessageChain.hpp 第 344 行定义.
|
default |
|
default |
|
noexcept |
在文件 MessageChain.cpp 第 36 行定义.
|
default |
| MessageChain & Mirai::MessageChain::operator= | ( | const MessageChain & | rhs | ) |
在文件 MessageChain.cpp 第 27 行定义.
|
noexcept |
在文件 MessageChain.cpp 第 38 行定义.
|
inlinenoexcept |
STL-like interface
在文件 MessageChain.hpp 第 346 行定义.
|
inlinenoexcept |
STL-like interface
在文件 MessageChain.hpp 第 347 行定义.
|
inline |
STL-like interface
在文件 MessageChain.hpp 第 348 行定义.
|
inlinenoexcept |
STL-like interface
在文件 MessageChain.hpp 第 349 行定义.
|
inlinenoexcept |
STL-like interface
在文件 MessageChain.hpp 第 350 行定义.
|
inlinenoexcept |
STL-like interface
在文件 MessageChain.hpp 第 351 行定义.
|
inlinenoexcept |
STL-like interface
在文件 MessageChain.hpp 第 353 行定义.
|
inline |
STL-like interface
在文件 MessageChain.hpp 第 354 行定义.
|
inline |
STL-like interface
在文件 MessageChain.hpp 第 355 行定义.
|
inline |
STL-like interface
在文件 MessageChain.hpp 第 356 行定义.
|
inline |
STL-like interface
在文件 MessageChain.hpp 第 357 行定义.
|
inlinenoexcept |
STL-like interface
在文件 MessageChain.hpp 第 359 行定义.
|
inlinenoexcept |
STL-like interface
在文件 MessageChain.hpp 第 360 行定义.
|
inlinenoexcept |
STL-like interface
在文件 MessageChain.hpp 第 361 行定义.
|
inlinenoexcept |
STL-like interface
在文件 MessageChain.hpp 第 362 行定义.
|
inlinenoexcept |
STL-like interface
在文件 MessageChain.hpp 第 363 行定义.
|
inlinenoexcept |
STL-like interface
在文件 MessageChain.hpp 第 364 行定义.
|
inlinenoexcept |
STL-like interface
在文件 MessageChain.hpp 第 365 行定义.
|
inlinenoexcept |
STL-like interface
在文件 MessageChain.hpp 第 366 行定义.
|
inlinenoexcept |
STL-like interface
在文件 MessageChain.hpp 第 367 行定义.
|
inlinenoexcept |
STL-like interface
在文件 MessageChain.hpp 第 368 行定义.
|
inlinenoexcept |
STL-like interface
在文件 MessageChain.hpp 第 370 行定义.
STL-like interface
在文件 MessageChain.hpp 第 371 行定义.
|
inline |
STL-like interface
在文件 MessageChain.hpp 第 372 行定义.
STL-like interface
在文件 MessageChain.hpp 第 373 行定义.
|
inline |
STL-like interface
在文件 MessageChain.hpp 第 374 行定义.
|
inline |
STL-like interface
在文件 MessageChain.hpp 第 375 行定义.
|
inline |
STL-like interface
在文件 MessageChain.hpp 第 376 行定义.
|
inline |
STL-like interface
在文件 MessageChain.hpp 第 377 行定义.
|
inline |
在消息链结尾添加消息元素
类似 std::vector::push_back()
| MessageType | 消息类型 |
| m | 要添加的消息 |
在文件 MessageChain.hpp 第 392 行定义.
|
inline |
在消息链结尾直接构造消息元素
类似 std::vector::emplace_back()。
| MessageType | 消息类型 |
| Args | 参数类型 |
| args | 构造消息元素的参数 |
在文件 MessageChain.hpp 第 409 行定义.
|
inline |
在消息链结尾直接构造消息元素
类似 std::vector::emplace_back()。
| Type | MessageTypes |
| Args | 参数类型 |
| args | 构造消息元素的参数 |
在文件 MessageChain.hpp 第 426 行定义.
|
inline |
在消息链中插入元素
类似 std::vector::insert()。
| MessageType | 消息类型 |
| pos | 插入位置 |
| m | 要添加的消息 |
在文件 MessageChain.hpp 第 440 行定义.
|
inline |
在消息链中插入元素
类似 std::vector::emplace()。
| MessageType | 消息类型 |
| Args | 参数类型 |
| pos | 插入位置 |
| args | 构造对应消息的参数 |
在文件 MessageChain.hpp 第 457 行定义.
|
inline |
在消息链中插入元素
| Type | MessageTypes |
| Args | 参数类型 |
| pos | 插入位置 |
| args | 构造对应消息的参数 |
在文件 MessageChain.hpp 第 472 行定义.
| MessageChain & Mirai::MessageChain::operator+= | ( | const MessageChain & | rhs | ) |
拼接两个消息链
在文件 MessageChain.cpp 第 45 行定义.
| MessageChain & Mirai::MessageChain::operator+= | ( | MessageChain && | rhs | ) |
拼接两个消息链
在文件 MessageChain.cpp 第 52 行定义.
| MessageChain & Mirai::MessageChain::operator+= | ( | const MessageElement & | m | ) |
添加消息元素到消息链结尾
在文件 MessageChain.cpp 第 65 行定义.
| MessageChain & Mirai::MessageChain::operator+= | ( | MessageElement && | m | ) |
添加消息元素到消息链结尾
在文件 MessageChain.cpp 第 71 行定义.
|
inline |
添加消息元素到消息链结尾
在文件 MessageChain.hpp 第 489 行定义.
|
inline |
获取指定下标处的消息
若消息类型与实际类型不匹配会抛出 TypeDismatchError 异常
| MessageType | 消息类型 |
| i | 下标 |
在文件 MessageChain.hpp 第 531 行定义.
|
inline |
获取指定下标处的消息
若消息类型与实际类型不匹配会抛出 TypeDismatchError 异常
| MessageType | 消息类型 |
| i | 下标 |
在文件 MessageChain.hpp 第 533 行定义.
|
inline |
获取指定下标处的消息
若消息类型与实际类型不匹配会抛出 TypeDismatchError 异常
| Type | MessageTypes |
| i | 下标 |
在文件 MessageChain.hpp 第 550 行定义.
|
inline |
获取指定下标处的消息
若消息类型与实际类型不匹配会抛出 TypeDismatchError 异常
| Type | MessageTypes |
| i | 下标 |
在文件 MessageChain.hpp 第 552 行定义.
|
inline |
|
inline |
获取所有指定类型的消息元素
该方法将拷贝消息元素
| MessageType | 消息类型 |
std::vector<MessageType> 在文件 MessageChain.hpp 第 574 行定义.
|
inline |
获取所有指定类型的消息元素
该方法将拷贝消息元素
| Type | 消息类型 |
std::vector<GetType_t<Type>> 在文件 MessageChain.hpp 第 593 行定义.
|
inline |
获取所有指定类型的消息元素的引用
| MessageType | 消息类型 |
std::vector<std::reference_wrapper<MessageType>> 在文件 MessageChain.hpp 第 603 行定义.
|
inline |
获取所有指定类型的消息元素的引用
| MessageType | 消息类型 |
std::vector<std::reference_wrapper<MessageType>> 在文件 MessageChain.hpp 第 615 行定义.
|
inline |
获取所有指定类型的消息元素的引用
| Type | 消息类型 |
std::vector<std::reference_wrapper<GetType_t<Type>>> 在文件 MessageChain.hpp 第 637 行定义.
|
inline |
获取所有指定类型的消息元素的引用
| Type | 消息类型 |
std::vector<std::reference_wrapper<GetType_t<Type>>> 在文件 MessageChain.hpp 第 639 行定义.
| std::optional< MessageChain::SourceInfo > Mirai::MessageChain::GetSourceInfo | ( | ) | const |
| void Mirai::MessageChain::RemoveInvalid | ( | ) |
| bool Mirai::MessageChain::valid | ( | ) | const |
|
inline |
在消息链结尾构造 AppMessage,返回自身的引用
在文件 MessageChain.hpp 第 671 行定义.
|
inline |
在消息链结尾构造 AtAllMessage,返回自身的引用
在文件 MessageChain.hpp 第 677 行定义.
|
inline |
在消息链结尾构造 AtMessage,返回自身的引用
在文件 MessageChain.hpp 第 683 行定义.
|
inline |
在消息链结尾构造 AudioMessage,返回自身的引用
在文件 MessageChain.hpp 第 689 行定义.
|
inline |
在消息链结尾构造 DiceMessage,返回自身的引用
在文件 MessageChain.hpp 第 695 行定义.
|
inline |
在消息链结尾构造 FaceMessage,返回自身的引用
在文件 MessageChain.hpp 第 701 行定义.
|
inline |
在消息链结尾构造 FlashImageMessage,返回自身的引用
在文件 MessageChain.hpp 第 707 行定义.
|
inline |
在消息链结尾构造 ImageMessage,返回自身的引用
在文件 MessageChain.hpp 第 713 行定义.
|
inline |
在消息链结尾构造 JsonMessage,返回自身的引用
在文件 MessageChain.hpp 第 719 行定义.
|
inline |
在消息链结尾构造 MiraiCodeMessage,返回自身的引用
在文件 MessageChain.hpp 第 725 行定义.
|
inline |
在消息链结尾构造 PlainMessage,返回自身的引用
在文件 MessageChain.hpp 第 731 行定义.
|
inline |
在消息链结尾构造 PokeMessage,返回自身的引用
在文件 MessageChain.hpp 第 737 行定义.
|
inline |
在消息链结尾构造 XmlMessage,返回自身的引用
在文件 MessageChain.hpp 第 743 行定义.
|
inline |
在消息链结尾插入 ForwardMessage,返回自身的引用
在文件 MessageChain.hpp 第 749 行定义.
|
friend |
拼接两个消息链
在文件 MessageChain.cpp 第 78 行定义.
|
friend |
添加消息元素到消息链结尾
在文件 MessageChain.cpp 第 85 行定义.
|
friend |
添加消息元素到消息链结尾
在文件 MessageChain.hpp 第 502 行定义.
|
friend |
添加消息元素到消息链结尾
在文件 MessageChain.hpp 第 505 行定义.
|
friend |
添加消息元素到消息链结尾
在文件 MessageChain.hpp 第 512 行定义.
|
protected |
在文件 MessageChain.hpp 第 314 行定义.