SYMBOL INDEX (134 symbols across 14 files) FILE: conn.go type transmitFunc (line 9) | type transmitFunc type Conn (line 11) | type Conn struct method WriteReliablePacket (line 22) | func (c *Conn) WriteReliablePacket(buf []byte) error { method WriteUnreliablePacket (line 32) | func (c *Conn) WriteUnreliablePacket(buf []byte) error { method Read (line 42) | func (c *Conn) Read(header PacketHeader, buf []byte) error { method Close (line 53) | func (c *Conn) Close() { method Run (line 57) | func (c *Conn) Run() { method transmit (line 61) | func (c *Conn) transmit(buf []byte) (EOF bool, err error) { function NewConn (line 17) | func NewConn(addr net.Addr, conn net.PacketConn, opts ...ProtocolOption)... FILE: conn_test.go function TestConnWriteReliablePacket (line 14) | func TestConnWriteReliablePacket(t *testing.T) { function readLoop (line 54) | func readLoop(t *testing.T, pc net.PacketConn, c *Conn) { FILE: endpoint.go type EndpointPacketHandler (line 12) | type EndpointPacketHandler type EndpointErrorHandler (line 13) | type EndpointErrorHandler type Endpoint (line 15) | type Endpoint struct method getConn (line 67) | func (e *Endpoint) getConn(addr net.Addr) *Conn { method clearConn (line 101) | func (e *Endpoint) clearConn(addr net.Addr) { method clearConns (line 112) | func (e *Endpoint) clearConns() { method Addr (line 126) | func (e *Endpoint) Addr() net.Addr { method WriteReliablePacket (line 130) | func (e *Endpoint) WriteReliablePacket(buf []byte, addr net.Addr) error { method WriteUnreliablePacket (line 138) | func (e *Endpoint) WriteUnreliablePacket(buf []byte, addr net.Addr) er... method Listen (line 146) | func (e *Endpoint) Listen() { method Close (line 201) | func (e *Endpoint) Close() error { function NewEndpoint (line 37) | func NewEndpoint(conn net.PacketConn, opts ...EndpointOption) *Endpoint { FILE: endpoint_test.go function newPacketConn (line 16) | func newPacketConn(t testing.TB, addr string) net.PacketConn { function BenchmarkEndpointWriteReliablePacket (line 23) | func BenchmarkEndpointWriteReliablePacket(b *testing.B) { function BenchmarkEndpointWriteUnreliablePacket (line 56) | func BenchmarkEndpointWriteUnreliablePacket(b *testing.B) { function TestEndpointWriteReliablePacket (line 89) | func TestEndpointWriteReliablePacket(t *testing.T) { function TestEndpointWriteReliablePacketEndToEnd (line 147) | func TestEndpointWriteReliablePacketEndToEnd(t *testing.T) { function TestRaceConditions (line 192) | func TestRaceConditions(t *testing.T) { type testRaceConditions (line 309) | type testRaceConditions struct method done (line 320) | func (t *testRaceConditions) done() { method wait (line 326) | func (t *testRaceConditions) wait() { method append (line 330) | func (t *testRaceConditions) append(buf []byte) { function newTestRaceConditions (line 316) | func newTestRaceConditions(cap int) *testRaceConditions { function genNumSlice (line 338) | func genNumSlice(len int) (s []int) { function uniqSort (line 345) | func uniqSort(s []int) (result []int) { FILE: error.go function isEOF (line 9) | func isEOF(err error) bool { FILE: examples/basic/main.go function check (line 23) | func check(err error) { function listen (line 29) | func listen(addr string) net.PacketConn { function handler (line 35) | func handler(buf []byte, _ net.Addr) { function main (line 43) | func main() { FILE: examples/benchmark/main.go function check (line 19) | func check(err error) { function listen (line 25) | func listen(addr string) net.PacketConn { function main (line 34) | func main() { FILE: fuzz.go function Fuzz (line 12) | func Fuzz(data []byte) int { FILE: options.go constant DefaultWriteBufferSize (line 6) | DefaultWriteBufferSize uint16 = 256 constant DefaultReadBufferSize (line 7) | DefaultReadBufferSize uint16 = 256 constant DefaultUpdatePeriod (line 9) | DefaultUpdatePeriod = 100 * time.Millisecond constant DefaultResendTimeout (line 10) | DefaultResendTimeout = 100 * time.Millisecond type ProtocolOption (line 13) | type ProtocolOption interface type EndpointOption (line 17) | type EndpointOption interface type Option (line 21) | type Option interface type withBufferPool (line 26) | type withBufferPool struct method applyProtocol (line 28) | func (o withBufferPool) applyProtocol(p *Protocol) { p.pool = o.pool } method applyEndpoint (line 29) | func (o withBufferPool) applyEndpoint(e *Endpoint) { e.pool = o.pool } function WithBufferPool (line 31) | func WithBufferPool(pool *Pool) Option { return withBufferPool{pool: poo... type withWriteBufferSize (line 33) | type withWriteBufferSize struct method applyProtocol (line 35) | func (o withWriteBufferSize) applyProtocol(p *Protocol) { p.writeBuffe... method applyEndpoint (line 36) | func (o withWriteBufferSize) applyEndpoint(e *Endpoint) { e.writeBuffe... function WithWriteBufferSize (line 38) | func WithWriteBufferSize(writeBufferSize uint16) Option { type withReadBufferSize (line 45) | type withReadBufferSize struct method applyProtocol (line 47) | func (o withReadBufferSize) applyProtocol(p *Protocol) { p.readBufferS... method applyEndpoint (line 48) | func (o withReadBufferSize) applyEndpoint(e *Endpoint) { e.readBufferS... function WithReadBufferSize (line 50) | func WithReadBufferSize(readBufferSize uint16) Option { type withProtocolPacketHandler (line 57) | type withProtocolPacketHandler struct method applyProtocol (line 60) | func (o withProtocolPacketHandler) applyProtocol(p *Protocol) { p.ph =... type withEndpointPacketHandler (line 58) | type withEndpointPacketHandler struct method applyEndpoint (line 61) | func (o withEndpointPacketHandler) applyEndpoint(e *Endpoint) { e.ph =... function WithProtocolPacketHandler (line 63) | func WithProtocolPacketHandler(ph ProtocolPacketHandler) ProtocolOption { function WithEndpointPacketHandler (line 66) | func WithEndpointPacketHandler(ph EndpointPacketHandler) EndpointOption { type withProtocolErrorHandler (line 70) | type withProtocolErrorHandler struct method applyProtocol (line 73) | func (o withProtocolErrorHandler) applyProtocol(p *Protocol) { p.eh = ... type withEndpointErrorHandler (line 71) | type withEndpointErrorHandler struct method applyEndpoint (line 74) | func (o withEndpointErrorHandler) applyEndpoint(e *Endpoint) { e.eh = ... function WithProtocolErrorHandler (line 76) | func WithProtocolErrorHandler(eh ProtocolErrorHandler) ProtocolOption { function WithEndpointErrorHandler (line 79) | func WithEndpointErrorHandler(eh EndpointErrorHandler) EndpointOption { type withUpdatePeriod (line 83) | type withUpdatePeriod struct method applyProtocol (line 85) | func (o withUpdatePeriod) applyProtocol(p *Protocol) { p.updatePeriod ... method applyEndpoint (line 86) | func (o withUpdatePeriod) applyEndpoint(e *Endpoint) { e.updatePeriod ... function WithUpdatePeriod (line 88) | func WithUpdatePeriod(updatePeriod time.Duration) Option { type withResendTimeout (line 95) | type withResendTimeout struct method applyProtocol (line 97) | func (o withResendTimeout) applyProtocol(p *Protocol) { p.resendTimeou... method applyEndpoint (line 98) | func (o withResendTimeout) applyEndpoint(e *Endpoint) { e.resendTimeou... function WithResendTimeout (line 100) | func WithResendTimeout(resendTimeout time.Duration) Option { FILE: packet.go constant ACKBitsetSize (line 11) | ACKBitsetSize = 32 type writtenPacket (line 18) | type writtenPacket struct method shouldResend (line 25) | func (p writtenPacket) shouldResend(now time.Time, resendTimeout time.... type PacketHeaderFlag (line 29) | type PacketHeaderFlag method Toggle (line 42) | func (p PacketHeaderFlag) Toggle(flag PacketHeaderFlag) PacketHeaderFl... method Toggled (line 46) | func (p PacketHeaderFlag) Toggled(flag PacketHeaderFlag) bool { method AppendTo (line 50) | func (p PacketHeaderFlag) AppendTo(dst []byte) []byte { constant FlagFragment (line 32) | FlagFragment PacketHeaderFlag = 1 << iota constant FlagA (line 33) | FlagA constant FlagB (line 34) | FlagB constant FlagC (line 35) | FlagC constant FlagD (line 36) | FlagD constant FlagACKEncoded (line 37) | FlagACKEncoded constant FlagEmpty (line 38) | FlagEmpty constant FlagUnordered (line 39) | FlagUnordered type PacketHeader (line 54) | type PacketHeader struct method AppendTo (line 62) | func (p PacketHeader) AppendTo(dst []byte) []byte { function UnmarshalPacketHeader (line 130) | func UnmarshalPacketHeader(buf []byte) (header PacketHeader, leftover []... FILE: packet_test.go function TestEncodeDecodePacketHeader (line 12) | func TestEncodeDecodePacketHeader(t *testing.T) { function BenchmarkMarshalPacketHeader (line 25) | func BenchmarkMarshalPacketHeader(b *testing.B) { function BenchmarkUnmarshalPacketHeader (line 39) | func BenchmarkUnmarshalPacketHeader(b *testing.B) { FILE: pool.go function init (line 9) | func init() { function emptyBufferIndices (line 16) | func emptyBufferIndices(indices []uint32) { FILE: protocol.go type ProtocolPacketHandler (line 11) | type ProtocolPacketHandler type ProtocolErrorHandler (line 12) | type ProtocolErrorHandler type Protocol (line 14) | type Protocol struct method WritePacket (line 84) | func (p *Protocol) WritePacket(reliable bool, buf []byte) ([]byte, err... method waitUntilReaderAvailable (line 112) | func (p *Protocol) waitUntilReaderAvailable() { method waitForNextWriteDetails (line 118) | func (p *Protocol) waitForNextWriteDetails() (idx uint16, ack uint16, ... method nextWriteIndex (line 126) | func (p *Protocol) nextWriteIndex() (idx uint16) { method nextAckDetails (line 131) | func (p *Protocol) nextAckDetails() (ack uint16, ackBits uint32) { method prepareAckBits (line 137) | func (p *Protocol) prepareAckBits(ack uint16) (ackBits uint32) { method write (line 148) | func (p *Protocol) write(header PacketHeader, buf []byte) []byte { method trackWrite (line 165) | func (p *Protocol) trackWrite(idx uint16, buf *Buffer) { method clearWrites (line 182) | func (p *Protocol) clearWrites(start, end uint16) { method ReadPacket (line 204) | func (p *Protocol) ReadPacket(header PacketHeader, buf []byte) []byte { method createAckIfNecessary (line 229) | func (p *Protocol) createAckIfNecessary() (header PacketHeader, needed... method writeAcksIfNecessary (line 253) | func (p *Protocol) writeAcksIfNecessary() []byte { method readAckBits (line 266) | func (p *Protocol) readAckBits(ack uint16, ackBits uint32) { method trackRead (line 286) | func (p *Protocol) trackRead(idx uint16) bool { method clearReads (line 303) | func (p *Protocol) clearReads(start, end uint16) { method trackAcked (line 325) | func (p *Protocol) trackAcked(ack uint16) { method trackUnacked (line 339) | func (p *Protocol) trackUnacked() { method close (line 354) | func (p *Protocol) close() bool { method Close (line 365) | func (p *Protocol) Close() { method Run (line 374) | func (p *Protocol) Run(transmit transmitFunc) { method retransmitUnackedPackets (line 390) | func (p *Protocol) retransmitUnackedPackets(transmit transmitFunc) err... function NewProtocol (line 44) | func NewProtocol(opts ...ProtocolOption) *Protocol { FILE: protocol_test.go function testConnWaitForWriteDetails (line 10) | func testConnWaitForWriteDetails(inc uint16) func(t testing.TB) { function TestConnWaitForWriteDetails (line 57) | func TestConnWaitForWriteDetails(t *testing.T) {