9 #include <QRegularExpression> 12 #include <pajlada/serialize.hpp> 23 return std::tie(this->name_, this->filter_, this->id_) ==
24 std::tie(other.name_, other.filter_, other.id_);
30 , id_(QUuid::createUuid())
60 return this->parser_->valid();
65 return this->parser_->execute(context);
73 std::unique_ptr<filterparser::FilterParser> parser_;
85 rapidjson::Document::AllocatorType &a)
87 rapidjson::Value ret(rapidjson::kObjectType);
92 value->getId().toString(QUuid::WithoutBraces), a);
101 bool *error =
nullptr)
103 if (!value.IsObject())
105 PAJLADA_REPORT_ERROR(error)
106 return std::make_shared<chatterino::FilterRecord>(QString(),
110 QString _name, _filter, _id;
116 return std::make_shared<chatterino::FilterRecord>(
117 _name, _filter, QUuid::fromString(_id));
bool valid() const
Definition: FilterRecord.hpp:58
const QString & getName() const
Definition: FilterRecord.hpp:43
Definition: FilterParser.cpp:8
bool filter(const filterparser::ContextMap &context) const
Definition: FilterRecord.hpp:63
Definition: SeventvEventAPISubscription.hpp:67
const QUuid & getId() const
Definition: FilterRecord.hpp:53
std::shared_ptr< FilterRecord > FilterRecordPtr
Definition: FilterRecord.hpp:76
Definition: Application.cpp:48
QMap< QString, QVariant > ContextMap
Definition: Types.hpp:10
void set(rapidjson::Value &obj, const char *key, const Type &value, rapidjson::Document::AllocatorType &a)
Definition: RapidjsonHelpers.hpp:22
Definition: Command.hpp:25
bool getSafe(const rapidjson::Value &obj, const char *key, Type &out)
Definition: RapidjsonHelpers.hpp:73
QString name
Definition: Credentials.cpp:94
FilterRecord(const QString &name, const QString &filter)
Definition: FilterRecord.hpp:27
const QString & getFilter() const
Definition: FilterRecord.hpp:48
FilterRecord(const QString &name, const QString &filter, const QUuid &id)
Definition: FilterRecord.hpp:35
Definition: FilterRecord.hpp:18
bool operator==(const FilterRecord &other) const
Definition: FilterRecord.hpp:21