Display all parsed elements when parsing emojis in replies (#4875)

This commit is contained in:
nerix
2023-10-08 12:09:42 +02:00
committed by GitHub
parent 4db93bf1da
commit fe4d6121a2
4 changed files with 74 additions and 42 deletions
+28
View File
@@ -0,0 +1,28 @@
#pragma once
namespace chatterino::variant {
/// Compile-time safe visitor for std and boost variants.
///
/// From https://en.cppreference.com/w/cpp/utility/variant/visit
///
/// Usage:
///
/// ```
/// std::variant<int, double> v;
/// std::visit(variant::Overloaded{
/// [](double) { qDebug() << "double"; },
/// [](int) { qDebug() << "int"; }
/// }, v);
/// ```
template <class... Ts>
struct Overloaded : Ts... {
using Ts::operator()...;
};
// Technically, we shouldn't need this, as we're on C++ 20,
// but not all of our compilers support CTAD for aggregates yet.
template <class... Ts>
Overloaded(Ts...) -> Overloaded<Ts...>;
} // namespace chatterino::variant