IRC parsing, tokenization, and state handling in C#
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}