IRC parsing, tokenization, and state handling in C#
at ircrobots 90 lines 2.4 kB view raw
1using System.Collections.Generic; 2using System.Threading.Tasks; 3using IRCStates; 4using IRCTokens; 5 6namespace IRCRobots 7{ 8 public class Server : IServer 9 { 10 private int SentCount { get; set; } 11 12 public IEnumerable<SentLine> SendRaw(string line, SendPriority sendPriority = SendPriority.Default) 13 { 14 throw new System.NotImplementedException(); 15 } 16 17 public IEnumerable<SentLine> Send(Line line, SendPriority sendPriority = SendPriority.Default) 18 { 19 LinePresend(line); 20 var sentLine = new SentLine {Id = SentCount, Priority = sendPriority, Line = line}; 21 SentCount++; 22 return new[] {sentLine}; 23 } 24 25 public void SetThrottle(int rate, float time) 26 { 27 throw new System.NotImplementedException(); 28 } 29 30 public (string address, int port) ServerAddress() 31 { 32 throw new System.NotImplementedException(); 33 } 34 35 public async Task Connect(ITCPTransport transport, ConnectionParams connectionParams) 36 { 37 throw new System.NotImplementedException(); 38 } 39 40 public async Task Disconnect() 41 { 42 throw new System.NotImplementedException(); 43 } 44 45 public void LinePreread(Line line) 46 { 47 throw new System.NotImplementedException(); 48 } 49 50 public void LinePresend(Line line) 51 { 52 throw new System.NotImplementedException(); 53 } 54 55 public async Task LineRead(Line line) 56 { 57 throw new System.NotImplementedException(); 58 } 59 60 public async Task LineSend(Line line) 61 { 62 throw new System.NotImplementedException(); 63 } 64 65 public async Task STSPolicy(STSPolicy stsPolicy) 66 { 67 throw new System.NotImplementedException(); 68 } 69 70 public async Task ResumePolicy(ResumePolicy resumePolicy) 71 { 72 throw new System.NotImplementedException(); 73 } 74 75 public bool CapAgreed(ICapability capability) 76 { 77 throw new System.NotImplementedException(); 78 } 79 80 public string? CapAvailable(ICapability capability) 81 { 82 throw new System.NotImplementedException(); 83 } 84 85 public async Task<bool> SASLAuth(SASLParams saslParams) 86 { 87 throw new System.NotImplementedException(); 88 } 89 } 90}