var searchIndex = {}; searchIndex["loirc"] = {"doc":"This library's goal is to offer a highly available IRC client with an easy to use API.\nAutomatic reconnection is built into the design. It uses a channel-like design, where\nevents are received from a `Reader` and commands are sent from one or many `Writer`.","items":[[3,"ActivityMonitor","loirc","This struct monitors a connection's activity.",null,null],[3,"MonitorSettings","","These settings tell the monitor how to behave.",null,null],[12,"activity_timeout","","Amount of time since the last activity.",0,null],[12,"ping_timeout","","Amount of time to wait for a ping reply.",0,null],[3,"Writer","","Used to send messages to the IRC server.",null,null],[3,"Message","","Represents a message received from the server.",null,null],[12,"prefix","","Prefix",1,null],[12,"code","","Code",1,null],[12,"args","","Arguments",1,null],[3,"PrefixUser","","User prefix representation.",null,null],[12,"nickname","","Nickname",2,null],[12,"username","","Username",2,null],[12,"hostname","","Hostname",2,null],[4,"Event","","This is the comprehensive set of events that can occur.",null,null],[13,"Closed","","Connection was manually closed. The string is the reason.",3,null],[13,"Disconnected","","Connection has dropped.",3,null],[13,"Message","","Message from the IRC server.",3,null],[13,"ParseError","","Error parsing a message from the server.",3,null],[13,"Reconnected","","Connection was sucessfully restored.",3,null],[13,"Reconnecting","","Attempting to restore connection.",3,null],[13,"ReconnectionError","","An error occured trying to restore the connection.",3,null],[4,"Error","","Errors produced by the Writer.",null,null],[13,"AlreadyClosed","","Connection is already closed.",4,null],[13,"AlreadyDisconnected","","Connection is already disconnected.",4,null],[13,"Closed","","Connection was manually closed.",4,null],[13,"Disconnected","","Connection was dropped.",4,null],[4,"ReconnectionSettings","","These settings tell the reconnection process how to behave.",null,null],[13,"DoNotReconnect","","Don't try to reconnect after failure.",5,null],[13,"Reconnect","","Reconnect",5,null],[12,"max_attempts","loirc::ReconnectionSettings","After trying this amount of times, it will stop trying.",5,null],[12,"delay_between_attempts","","Wait time between two attempts to reconnect in milliseconds.",5,null],[12,"delay_after_disconnect","","Wait time after disconnection, before trying to reconnect.",5,null],[4,"Code","loirc","Representation of IRC commands, replies and errors.",null,null],[13,"Pass","","PASS = "PASS"",6,null],[13,"Nick","","NICK = "NICK"",6,null],[13,"User","","USER = "USER"",6,null],[13,"Oper","","OPER = "OPER"",6,null],[13,"Mode","","MODE = "MODE"",6,null],[13,"Service","","SERVICE = "SERVICE"",6,null],[13,"Quit","","QUIT = "QUIT"",6,null],[13,"Squit","","SQUIT = "SQUIT"",6,null],[13,"Join","","JOIN = "JOIN"",6,null],[13,"Part","","PART = "PART"",6,null],[13,"Topic","","TOPIC = "TOPIC"",6,null],[13,"Names","","NAMES = "NAMES"",6,null],[13,"List","","LIST = "LIST"",6,null],[13,"Invite","","INVITE = "INVITE"",6,null],[13,"Kick","","KICK = "KICK"",6,null],[13,"Privmsg","","PRIVMSG = "PRIVMSG"",6,null],[13,"Notice","","NOTICE = "NOTICE"",6,null],[13,"Motd","","MOTD = "MOTD"",6,null],[13,"Lusers","","LUSERS = "LUSERS"",6,null],[13,"Version","","VERSION = "VERSION"",6,null],[13,"Stats","","STATS = "STATS"",6,null],[13,"Links","","LINKS = "LINKS"",6,null],[13,"Time","","TIME = "TIME"",6,null],[13,"Connect","","CONNECT = "CONNECT"",6,null],[13,"Trace","","TRACE = "TRACE"",6,null],[13,"Admin","","ADMIN = "ADMIN"",6,null],[13,"Info","","INFO = "INFO"",6,null],[13,"Servlist","","SERVLIST = "SERVLIST"",6,null],[13,"Squery","","SQUERY = "SQUERY"",6,null],[13,"Who","","WHO = "WHO"",6,null],[13,"Whois","","WHOIS = "WHOIS"",6,null],[13,"Whowas","","WHOWAS = "WHOWAS"",6,null],[13,"Kill","","KILL = "KILL"",6,null],[13,"Ping","","PING = "PING"",6,null],[13,"Pong","","PONG = "PONG"",6,null],[13,"Error","","ERROR = "ERROR"",6,null],[13,"Away","","AWAY = "AWAY"",6,null],[13,"Rehash","","REHASH = "REHASH"",6,null],[13,"Die","","DIE = "DIE"",6,null],[13,"Restart","","RESTART = "RESTART"",6,null],[13,"Summon","","SUMMON = "SUMMON"",6,null],[13,"Users","","USERS = "USERS"",6,null],[13,"Wallops","","WALLOPS = "WALLOPS"",6,null],[13,"Userhost","","USERHOST = "USERHOST"",6,null],[13,"Ison","","ISON = "ISON"",6,null],[13,"RplWelcome","","RPL_WELCOME = "001"",6,null],[13,"RplYourhost","","RPL_YOURHOST = "002"",6,null],[13,"RplCreated","","RPL_CREATED = "003"",6,null],[13,"RplMyinfo","","RPL_MYINFO = "004"",6,null],[13,"RplBounce","","RPL_BOUNCE = "005"",6,null],[13,"RplUserhost","","RPL_USERHOST = "302"",6,null],[13,"RplIson","","RPL_ISON = "303"",6,null],[13,"RplAway","","RPL_AWAY = "301"",6,null],[13,"RplUnaway","","RPL_UNAWAY = "305"",6,null],[13,"RplNowaway","","RPL_NOWAWAY = "306"",6,null],[13,"RplWhoisuser","","RPL_WHOISUSER = "311"",6,null],[13,"RplWhoisserver","","RPL_WHOISSERVER = "312"",6,null],[13,"RplWhoisoperator","","RPL_WHOISOPERATOR = "313"",6,null],[13,"RplWhoisidle","","RPL_WHOISIDLE = "317"",6,null],[13,"RplEndofwhois","","RPL_ENDOFWHOIS = "318"",6,null],[13,"RplWhoischannels","","RPL_WHOISCHANNELS = "319"",6,null],[13,"RplWhowasuser","","RPL_WHOWASUSER = "314"",6,null],[13,"RplEndofwhowas","","RPL_ENDOFWHOWAS = "369"",6,null],[13,"RplListstart","","RPL_LISTSTART = "321"",6,null],[13,"RplList","","RPL_LIST = "322"",6,null],[13,"RplListend","","RPL_LISTEND = "323"",6,null],[13,"RplUniqopis","","RPL_UNIQOPIS = "325"",6,null],[13,"RplChannelmodeis","","RPL_CHANNELMODEIS = "324"",6,null],[13,"RplNotopic","","RPL_NOTOPIC = "331"",6,null],[13,"RplTopic","","RPL_TOPIC = "332"",6,null],[13,"RplInviting","","RPL_INVITING = "341"",6,null],[13,"RplSummoning","","RPL_SUMMONING = "342"",6,null],[13,"RplInvitelist","","RPL_INVITELIST = "346"",6,null],[13,"RplEndofinvitelist","","RPL_ENDOFINVITELIST = "347"",6,null],[13,"RplExceptlist","","RPL_EXCEPTLIST = "348"",6,null],[13,"RplEndofexecptlist","","RPL_ENDOFEXECPTLIST = "349"",6,null],[13,"RplVersion","","RPL_VERSION = "351"",6,null],[13,"RplWhoreply","","RPL_WHOREPLY = "352"",6,null],[13,"RplEndofwho","","RPL_ENDOFWHO = "315"",6,null],[13,"RplNamreply","","RPL_NAMREPLY = "353"",6,null],[13,"RplEndofnames","","RPL_ENDOFNAMES = "366"",6,null],[13,"RplLinks","","RPL_LINKS = "364"",6,null],[13,"RplEndoflinks","","RPL_ENDOFLINKS = "365"",6,null],[13,"RplBanlist","","RPL_BANLIST = "367"",6,null],[13,"RplEndofbanlist","","RPL_ENDOFBANLIST = "368"",6,null],[13,"RplInfo","","RPL_INFO = "371"",6,null],[13,"RplEndofinfo","","RPL_ENDOFINFO = "374"",6,null],[13,"RplMotdstart","","RPL_MOTDSTART = "375"",6,null],[13,"RplMotd","","RPL_MOTD = "372"",6,null],[13,"RplEndofmotd","","RPL_ENDOFMOTD = "376"",6,null],[13,"RplYoureoper","","RPL_YOUREOPER = "381"",6,null],[13,"RplRehashing","","RPL_REHASHING = "382"",6,null],[13,"RplYoureservice","","RPL_YOURESERVICE = "383"",6,null],[13,"RplTime","","RPL_TIME = "391"",6,null],[13,"RplUsersstart","","RPL_USERSSTART = "392"",6,null],[13,"RplUsers","","RPL_USERS = "393"",6,null],[13,"RplEndofusers","","RPL_ENDOFUSERS = "394"",6,null],[13,"RplNousers","","RPL_NOUSERS = "395"",6,null],[13,"RplTracelink","","RPL_TRACELINK = "200"",6,null],[13,"RplTraceconnecting","","RPL_TRACECONNECTING = "201"",6,null],[13,"RplTracehandshake","","RPL_TRACEHANDSHAKE = "202"",6,null],[13,"RplTraceuknown","","RPL_TRACEUKNOWN = "203"",6,null],[13,"RplTraceoperator","","RPL_TRACEOPERATOR = "204"",6,null],[13,"RplTraceuser","","RPL_TRACEUSER = "205"",6,null],[13,"RplTraceserver","","RPL_TRACESERVER = "206"",6,null],[13,"RplTraceservice","","RPL_TRACESERVICE = "207"",6,null],[13,"RplTracenewtype","","RPL_TRACENEWTYPE = "208"",6,null],[13,"RplTraceclass","","RPL_TRACECLASS = "209"",6,null],[13,"RplTracereconnect","","RPL_TRACERECONNECT = "210"",6,null],[13,"RplTracelog","","RPL_TRACELOG = "261"",6,null],[13,"RplTraceend","","RPL_TRACEEND = "262"",6,null],[13,"RplStatslinkinfo","","RPL_STATSLINKINFO = "211"",6,null],[13,"RplStatscommands","","RPL_STATSCOMMANDS = "212"",6,null],[13,"RplEndofstats","","RPL_ENDOFSTATS = "219"",6,null],[13,"RplStatsuptime","","RPL_STATSUPTIME = "242"",6,null],[13,"RplStatsoline","","RPL_STATSOLINE = "243"",6,null],[13,"RplUmodeis","","RPL_UMODEIS = "221"",6,null],[13,"RplServlist","","RPL_SERVLIST = "234"",6,null],[13,"RplServlistend","","RPL_SERVLISTEND = "235"",6,null],[13,"RplLuserclient","","RPL_LUSERCLIENT = "251"",6,null],[13,"RplLuserop","","RPL_LUSEROP = "252"",6,null],[13,"RplLuserunknown","","RPL_LUSERUNKNOWN = "253"",6,null],[13,"RplLuserchannels","","RPL_LUSERCHANNELS = "254"",6,null],[13,"RplLuserme","","RPL_LUSERME = "255"",6,null],[13,"RplAdminme","","RPL_ADMINME = "256"",6,null],[13,"RplAdminloc1","","RPL_ADMINLOC1 = "257"",6,null],[13,"RplAdminloc2","","RPL_ADMINLOC2 = "258"",6,null],[13,"RplAdminemail","","RPL_ADMINEMAIL = "259"",6,null],[13,"RplTryagain","","RPL_TRYAGAIN = "263"",6,null],[13,"ErrNosuchnick","","ERR_NOSUCHNICK = "401"",6,null],[13,"ErrNosuchserver","","ERR_NOSUCHSERVER = "402"",6,null],[13,"ErrNosuchchannel","","ERR_NOSUCHCHANNEL = "403"",6,null],[13,"ErrCannotsendtochan","","ERR_CANNOTSENDTOCHAN = "404"",6,null],[13,"ErrToomanychannels","","ERR_TOOMANYCHANNELS = "405"",6,null],[13,"ErrWasnosuchnick","","ERR_WASNOSUCHNICK = "406"",6,null],[13,"ErrToomanytargets","","ERR_TOOMANYTARGETS = "407"",6,null],[13,"ErrNosuchservice","","ERR_NOSUCHSERVICE = "408"",6,null],[13,"ErrNoorigin","","ERR_NOORIGIN = "409"",6,null],[13,"ErrNorecipient","","ERR_NORECIPIENT = "411"",6,null],[13,"ErrNotexttosend","","ERR_NOTEXTTOSEND = "412"",6,null],[13,"ErrNotoplevel","","ERR_NOTOPLEVEL = "413"",6,null],[13,"ErrWildtoplevel","","ERR_WILDTOPLEVEL = "414"",6,null],[13,"ErrBadmask","","ERR_BADMASK = "415"",6,null],[13,"ErrUnknowncommand","","ERR_UNKNOWNCOMMAND = "421"",6,null],[13,"ErrNomotd","","ERR_NOMOTD = "422"",6,null],[13,"ErrNoadmininfo","","ERR_NOADMININFO = "423"",6,null],[13,"ErrFileerror","","ERR_FILEERROR = "424"",6,null],[13,"ErrNonicknamegiven","","ERR_NONICKNAMEGIVEN = "431"",6,null],[13,"ErrErroneousnickname","","ERR_ERRONEOUSNICKNAME = "432"",6,null],[13,"ErrNicknameinuse","","ERR_NICKNAMEINUSE = "433"",6,null],[13,"ErrNickcollision","","ERR_NICKCOLLISION = "436"",6,null],[13,"ErrUnavailresource","","ERR_UNAVAILRESOURCE = "437"",6,null],[13,"ErrUsernotinchannel","","ERR_USERNOTINCHANNEL = "441"",6,null],[13,"ErrNotonchannel","","ERR_NOTONCHANNEL = "442"",6,null],[13,"ErrUseronchannel","","ERR_USERONCHANNEL = "443"",6,null],[13,"ErrNologin","","ERR_NOLOGIN = "444"",6,null],[13,"ErrSummondisabled","","ERR_SUMMONDISABLED = "445"",6,null],[13,"ErrUsersdisabled","","ERR_USERSDISABLED = "446"",6,null],[13,"ErrNotregistered","","ERR_NOTREGISTERED = "451"",6,null],[13,"ErrNeedmoreparams","","ERR_NEEDMOREPARAMS = "461"",6,null],[13,"ErrAlreadyregistred","","ERR_ALREADYREGISTRED = "462"",6,null],[13,"ErrNopermforhost","","ERR_NOPERMFORHOST = "463"",6,null],[13,"ErrPasswdmismatch","","ERR_PASSWDMISMATCH = "464"",6,null],[13,"ErrYourebannedcreep","","ERR_YOUREBANNEDCREEP = "465"",6,null],[13,"ErrYouwillbebanned","","ERR_YOUWILLBEBANNED = "466"",6,null],[13,"ErrKeyset","","ERR_KEYSET = "467"",6,null],[13,"ErrChannelisfull","","ERR_CHANNELISFULL = "471"",6,null],[13,"ErrUnknownmode","","ERR_UNKNOWNMODE = "472"",6,null],[13,"ErrInviteonlychan","","ERR_INVITEONLYCHAN = "473"",6,null],[13,"ErrBannedfromchan","","ERR_BANNEDFROMCHAN = "474"",6,null],[13,"ErrBadchannelkey","","ERR_BADCHANNELKEY = "475"",6,null],[13,"ErrBadchanmask","","ERR_BADCHANMASK = "476"",6,null],[13,"ErrNochanmodes","","ERR_NOCHANMODES = "477"",6,null],[13,"ErrBanlistfull","","ERR_BANLISTFULL = "478"",6,null],[13,"ErrNoprivileges","","ERR_NOPRIVILEGES = "481"",6,null],[13,"ErrChanoprivsneeded","","ERR_CHANOPRIVSNEEDED = "482"",6,null],[13,"ErrCantkillserver","","ERR_CANTKILLSERVER = "483"",6,null],[13,"ErrRestricted","","ERR_RESTRICTED = "484"",6,null],[13,"ErrUniqopprivsneeded","","ERR_UNIQOPPRIVSNEEDED = "485"",6,null],[13,"ErrNooperhost","","ERR_NOOPERHOST = "491"",6,null],[13,"ErrUmodeunknownflag","","ERR_UMODEUNKNOWNFLAG = "501"",6,null],[13,"ErrUsersdontmatch","","ERR_USERSDONTMATCH = "502"",6,null],[13,"Unknown","","Codes that are unknown end up in here.",6,null],[4,"ParseError","","Error generated by the parser.",null,null],[13,"EmptyCommand","","String was empty.",7,null],[13,"EmptyMessage","","Message did not have a code.",7,null],[13,"UnexpectedEnd","","Unexpected end of the string.",7,null],[4,"Prefix","","Prefix of the message.",null,null],[13,"User","","Prefix is a user.",8,null],[13,"Server","","Prefix is a server.",8,null],[5,"connect","","Create a connection to the given address.",null,{"inputs":[{"name":"a"},{"name":"reconnectionsettings"},{"name":"encodingref"}],"output":{"name":"result"}}],[11,"eq","","",0,null],[11,"ne","","",0,null],[11,"fmt","","",0,null],[11,"clone","","",0,null],[11,"default","","",0,{"inputs":[],"output":{"name":"monitorsettings"}}],[11,"new","","Create a new ActivityMonitor.",9,{"inputs":[{"name":"writer"},{"name":"monitorsettings"}],"output":{"name":"activitymonitor"}}],[11,"feed","","Give an event received from the connection to the monitor.",9,null],[11,"drop","","",9,null],[11,"eq","","",6,null],[11,"ne","","",6,null],[11,"fmt","","",6,null],[11,"clone","","",6,null],[11,"is_reply","","Checks if the code is a reply.",6,null],[11,"is_error","","Check if the code is en error.",6,null],[11,"fmt","","",6,null],[11,"from_str","","",6,{"inputs":[{"name":"str"}],"output":{"name":"result"}}],[11,"fmt","","",3,null],[11,"eq","","",4,null],[11,"fmt","","",4,null],[11,"clone","","",4,null],[11,"clone","","",10,null],[11,"disconnect","","Drop the connection and trigger the reconnection process.",10,null],[11,"is_closed","","Check if the connection was manually closed.",10,null],[11,"close","","Close the connection and stop listening for messages.",10,null],[11,"raw","","Send a raw string to the IRC server.",10,null],[11,"eq","","",5,null],[11,"ne","","",5,null],[11,"fmt","","",5,null],[11,"clone","","",5,null],[11,"default","","",5,{"inputs":[],"output":{"name":"reconnectionsettings"}}],[11,"partial_cmp","","",7,null],[11,"eq","","",7,null],[11,"cmp","","",7,null],[11,"fmt","","",7,null],[11,"clone","","",7,null],[11,"eq","","",1,null],[11,"ne","","",1,null],[11,"fmt","","",1,null],[11,"clone","","",1,null],[11,"parse","","Parse the given string into a `Message` struct.",1,{"inputs":[{"name":"str"}],"output":{"name":"result"}}],[11,"eq","","",8,null],[11,"ne","","",8,null],[11,"fmt","","",8,null],[11,"clone","","",8,null],[11,"eq","","",2,null],[11,"ne","","",2,null],[11,"fmt","","",2,null],[11,"clone","","",2,null],[6,"Reader","","This the receiving end of a `mpsc` channel.",null,null]],"paths":[[3,"MonitorSettings"],[3,"Message"],[3,"PrefixUser"],[4,"Event"],[4,"Error"],[4,"ReconnectionSettings"],[4,"Code"],[4,"ParseError"],[4,"Prefix"],[3,"ActivityMonitor"],[3,"Writer"]]}; initSearch(searchIndex);