00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef IS_CHANNEL_H
00017 #define IS_CHANNEL_H
00018
00019 #ifndef USE_PCH
00020 #include <string>
00021 #include <cstring>
00022 #endif
00023
00024 #include "debug.h"
00025
00026
00027 inline bool is_channel(char const* name)
00028 {
00029 ASSERT(*name != 0);
00030 return *name == '#' || *name == '&' || (*name == '@' && name[1] == '#');
00031 }
00032
00033
00034 inline bool is_channel(std::string const& name)
00035 {
00036 ASSERT(!name.empty());
00037 char c = name[0];
00038 return c == '#' || c == '&' || (c == '@' && name[1] == '#');
00039 }
00040
00041
00042 inline bool is_server(char const* name)
00043 {
00044 return std::strchr(name, '.') != NULL;
00045 }
00046
00047
00048 inline bool is_server(std::string const& name)
00049 {
00050 return name.find('.') != std::string::npos;
00051 }
00052
00053
00054 inline bool is_nick(char const* name)
00055 {
00056 return !is_channel(name) && !is_server(name);
00057 }
00058
00059
00060 inline bool is_nick(std::string const& name)
00061 {
00062 return !is_channel(name) && !is_server(name);
00063 }
00064
00065 #endif // IS_CHANNEL_H