Chatterino
Classes | Typedefs | Enumerations | Functions
filterparser Namespace Reference

Classes

class  BinaryOperation
 
class  Expression
 
class  FilterParser
 
class  ListExpression
 
class  RegexExpression
 
class  Tokenizer
 
class  UnaryOperation
 
class  ValueExpression
 

Typedefs

using MessagePtr = std::shared_ptr< const chatterino::Message >
 
using ContextMap = QMap< QString, QVariant >
 
using ExpressionPtr = std::unique_ptr< Expression >
 
using ExpressionList = std::vector< std::unique_ptr< Expression > >
 

Enumerations

enum  TokenType {
  CONTROL_START = 0, AND = 1, OR = 2, LP = 3,
  RP = 4, LIST_START = 5, LIST_END = 6, COMMA = 7,
  CONTROL_END = 19, BINARY_START = 20, EQ = 21, NEQ = 22,
  LT = 23, GT = 24, LTE = 25, GTE = 26,
  CONTAINS = 27, STARTS_WITH = 28, ENDS_WITH = 29, MATCH = 30,
  BINARY_END = 49, UNARY_START = 50, NOT = 51, UNARY_END = 99,
  MATH_START = 100, PLUS = 101, MINUS = 102, MULTIPLY = 103,
  DIVIDE = 104, MOD = 105, MATH_END = 149, OTHER_START = 150,
  STRING = 151, INT = 152, IDENTIFIER = 153, REGULAR_EXPRESSION = 154,
  NONE = 200
}
 

Functions

ContextMap buildContextMap (const MessagePtr &m, chatterino::Channel *channel)
 
bool convertVariantTypes (QVariant &a, QVariant &b, int type)
 
bool variantTypesMatch (QVariant &a, QVariant &b, QVariant::Type type)
 
QString tokenTypeToInfoString (TokenType type)
 

Typedef Documentation

◆ ContextMap

using filterparser::ContextMap = typedef QMap<QString, QVariant>

◆ ExpressionList

using filterparser::ExpressionList = typedef std::vector<std::unique_ptr<Expression> >

◆ ExpressionPtr

using filterparser::ExpressionPtr = typedef std::unique_ptr<Expression>

◆ MessagePtr

using filterparser::MessagePtr = typedef std::shared_ptr<const chatterino::Message>

Enumeration Type Documentation

◆ TokenType

Enumerator
CONTROL_START 
AND 
OR 
LP 
RP 
LIST_START 
LIST_END 
COMMA 
CONTROL_END 
BINARY_START 
EQ 
NEQ 
LT 
GT 
LTE 
GTE 
CONTAINS 
STARTS_WITH 
ENDS_WITH 
MATCH 
BINARY_END 
UNARY_START 
NOT 
UNARY_END 
MATH_START 
PLUS 
MINUS 
MULTIPLY 
DIVIDE 
MOD 
MATH_END 
OTHER_START 
STRING 
INT 
IDENTIFIER 
REGULAR_EXPRESSION 
NONE 

Function Documentation

◆ buildContextMap()

ContextMap filterparser::buildContextMap ( const MessagePtr m,
chatterino::Channel channel 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ convertVariantTypes()

bool filterparser::convertVariantTypes ( QVariant &  a,
QVariant &  b,
int  type 
)
Here is the caller graph for this function:

◆ tokenTypeToInfoString()

QString filterparser::tokenTypeToInfoString ( TokenType  type)
Here is the caller graph for this function:

◆ variantTypesMatch()

bool filterparser::variantTypesMatch ( QVariant &  a,
QVariant &  b,
QVariant::Type  type 
)
Here is the caller graph for this function: