X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Ftypedefs.h;h=20fc596be444ac29c0665da90af031d0019e0676;hb=c60f88bb5ce23d1291dddfd3e15ba71c801b7d3c;hp=62ceb564e5ba242959462b87236e589375861526;hpb=5a378e8954717c19deaa618fc326164680383505;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/typedefs.h b/include/typedefs.h index 62ceb564e..20fc596be 100644 --- a/include/typedefs.h +++ b/include/typedefs.h @@ -49,6 +49,34 @@ class XLineFactory; struct ConnectClass; struct ModResult; +namespace ClientProtocol +{ + class Event; + class EventProvider; + class Message; + class MessageTagProvider; + class Serializer; + + typedef std::vector MessageList; + typedef std::vector ParamList; + typedef std::string SerializedMessage; + + struct MessageTagData + { + MessageTagProvider* tagprov; + std::string value; + void* provdata; + + MessageTagData(MessageTagProvider* prov, const std::string& val, void* data = NULL); + }; + + /** Map of message tag values and providers keyed by their name. + * Sorted in descending order to ensure tag names beginning with symbols (such as '+') come later when iterating + * the container than tags with a normal name. + */ + typedef insp::flat_map > TagMap; +} + #include "hashcomp.h" #include "base.h" @@ -82,10 +110,6 @@ typedef std::map ConfigFileCache; /** Generic user list, used for exceptions */ typedef std::set CUList; -/** A set of strings. - */ -typedef std::vector string_list; - /** Contains an ident and host split into two strings */ typedef std::pair IdentHostPair;