[{"title":"( 80 个子文件 160KB ) go-libp2p:Go中的libp2p实现-源码","children":[{"title":"go-libp2p-master","children":[{"title":"go.mod <span style='color:#111;'> 1.72KB </span>","children":null,"spread":false},{"title":"codecov.yml <span style='color:#111;'> 43B </span>","children":null,"spread":false},{"title":".github","children":[{"title":"ISSUE_TEMPLATE","children":[{"title":"bug-report.md <span style='color:#111;'> 585B </span>","children":null,"spread":false},{"title":"doc.md <span style='color:#111;'> 355B </span>","children":null,"spread":false},{"title":"feature.md <span style='color:#111;'> 544B </span>","children":null,"spread":false},{"title":"enhancement.md <span style='color:#111;'> 493B </span>","children":null,"spread":false},{"title":"question.md <span style='color:#111;'> 389B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"p2p","children":[{"title":"host","children":[{"title":"basic","children":[{"title":"natmgr.go <span style='color:#111;'> 6.29KB </span>","children":null,"spread":false},{"title":"basic_host_test.go <span style='color:#111;'> 22.08KB </span>","children":null,"spread":false},{"title":"basic_host.go <span style='color:#111;'> 28.78KB </span>","children":null,"spread":false}],"spread":true},{"title":"relay","children":[{"title":"addrsplosion.go <span style='color:#111;'> 3.53KB </span>","children":null,"spread":false},{"title":"log.go <span style='color:#111;'> 99B </span>","children":null,"spread":false},{"title":"relay.go <span style='color:#111;'> 880B </span>","children":null,"spread":false},{"title":"addrsplosion_test.go <span style='color:#111;'> 2.53KB </span>","children":null,"spread":false},{"title":"doc.go <span style='color:#111;'> 1.17KB </span>","children":null,"spread":false},{"title":"autorelay_test.go <span style='color:#111;'> 5.44KB </span>","children":null,"spread":false},{"title":"autorelay.go <span style='color:#111;'> 8.14KB </span>","children":null,"spread":false}],"spread":true},{"title":"routed","children":[{"title":"routed.go <span style='color:#111;'> 5.34KB </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"protocol","children":[{"title":"identify","children":[{"title":"obsaddr_glass_test.go <span style='color:#111;'> 1.49KB </span>","children":null,"spread":false},{"title":"peer_loop.go <span style='color:#111;'> 6.41KB </span>","children":null,"spread":false},{"title":"peer_loop_test.go <span style='color:#111;'> 2.82KB </span>","children":null,"spread":false},{"title":"id_push.go <span style='color:#111;'> 576B </span>","children":null,"spread":false},{"title":"id.go <span style='color:#111;'> 21.94KB </span>","children":null,"spread":false},{"title":"id_test.go <span style='color:#111;'> 30.85KB </span>","children":null,"spread":false},{"title":"opts.go <span style='color:#111;'> 599B </span>","children":null,"spread":false},{"title":"pb","children":[{"title":"identify.proto <span style='color:#111;'> 1.85KB </span>","children":null,"spread":false},{"title":"Makefile <span style='color:#111;'> 175B </span>","children":null,"spread":false},{"title":"identify.pb.go <span style='color:#111;'> 24.53KB </span>","children":null,"spread":false}],"spread":false},{"title":"id_delta.go <span style='color:#111;'> 1.68KB </span>","children":null,"spread":false},{"title":"obsaddr.go <span style='color:#111;'> 13.43KB </span>","children":null,"spread":false},{"title":"obsaddr_test.go <span style='color:#111;'> 8.89KB </span>","children":null,"spread":false},{"title":"id_glass_test.go <span style='color:#111;'> 1.71KB </span>","children":null,"spread":false}],"spread":false},{"title":"ping","children":[{"title":"ping.go <span style='color:#111;'> 2.61KB </span>","children":null,"spread":false},{"title":"ping_test.go <span style='color:#111;'> 1.06KB </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"net","children":[{"title":"conngater","children":[{"title":"conngater.go <span style='color:#111;'> 8.04KB </span>","children":null,"spread":false},{"title":"conngater_test.go <span style='color:#111;'> 9.92KB </span>","children":null,"spread":false}],"spread":true},{"title":"README.md <span style='color:#111;'> 810B </span>","children":null,"spread":false},{"title":"mock","children":[{"title":"mock_peernet.go <span style='color:#111;'> 9.07KB </span>","children":null,"spread":false},{"title":"mock_stream.go <span style='color:#111;'> 5.79KB </span>","children":null,"spread":false},{"title":"complement.go <span style='color:#111;'> 486B </span>","children":null,"spread":false},{"title":"mock_test.go <span style='color:#111;'> 14.15KB </span>","children":null,"spread":false},{"title":"mock.go <span style='color:#111;'> 1.12KB </span>","children":null,"spread":false},{"title":"interface.go <span style='color:#111;'> 3.26KB </span>","children":null,"spread":false},{"title":"mock_notif_test.go <span style='color:#111;'> 4.57KB </span>","children":null,"spread":false},{"title":"mock_net.go <span style='color:#111;'> 8.56KB </span>","children":null,"spread":false},{"title":"mock_printer.go <span style='color:#111;'> 781B </span>","children":null,"spread":false},{"title":"mock_link.go <span style='color:#111;'> 1.69KB </span>","children":null,"spread":false},{"title":"mock_conn.go <span style='color:#111;'> 3.92KB </span>","children":null,"spread":false},{"title":"ratelimiter.go <span style='color:#111;'> 2.02KB </span>","children":null,"spread":false}],"spread":false}],"spread":true},{"title":"test","children":[{"title":"backpressure","children":[{"title":"backpressure.go <span style='color:#111;'> 27B </span>","children":null,"spread":false},{"title":"backpressure_test.go <span style='color:#111;'> 9.58KB </span>","children":null,"spread":false}],"spread":true},{"title":"reconnects","children":[{"title":"reconnect_test.go <span style='color:#111;'> 5.01KB </span>","children":null,"spread":false},{"title":"reconnect.go <span style='color:#111;'> 86B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"discovery","children":[{"title":"mdns.go <span style='color:#111;'> 4.23KB </span>","children":null,"spread":false},{"title":"mdns_test.go <span style='color:#111;'> 1.06KB </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"go.sum <span style='color:#111;'> 62.93KB </span>","children":null,"spread":false},{"title":"NEWS.md <span style='color:#111;'> 13.57KB </span>","children":null,"spread":false},{"title":"libp2p_test.go <span style='color:#111;'> 4.08KB </span>","children":null,"spread":false},{"title":"package-list.json <span style='color:#111;'> 4.21KB </span>","children":null,"spread":false},{"title":"options.go <span style='color:#111;'> 13.75KB </span>","children":null,"spread":false},{"title":"examples","children":[{"title":"README.md <span style='color:#111;'> 127B </span>","children":null,"spread":false}],"spread":true},{"title":".travis.yml <span style='color:#111;'> 387B </span>","children":null,"spread":false},{"title":"config","children":[{"title":"transport.go <span style='color:#111;'> 2.06KB </span>","children":null,"spread":false},{"title":"reflection_magic_test.go <span style='color:#111;'> 3.17KB </span>","children":null,"spread":false},{"title":"config_test.go <span style='color:#111;'> 399B </span>","children":null,"spread":false},{"title":"reflection_magic.go <span style='color:#111;'> 3.77KB </span>","children":null,"spread":false},{"title":"muxer.go <span style='color:#111;'> 1.52KB </span>","children":null,"spread":false},{"title":"constructor_types.go <span style='color:#111;'> 2.85KB </span>","children":null,"spread":false},{"title":"security.go <span style='color:#111;'> 2.12KB </span>","children":null,"spread":false},{"title":"config.go <span style='color:#111;'> 9.72KB </span>","children":null,"spread":false},{"title":"muxer_test.go <span style='color:#111;'> 2.26KB </span>","children":null,"spread":false}],"spread":true},{"title":"LICENSE <span style='color:#111;'> 1.06KB </span>","children":null,"spread":false},{"title":"defaults.go <span style='color:#111;'> 4.02KB </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 24.64KB </span>","children":null,"spread":false},{"title":"options_filter.go <span style='color:#111;'> 1.16KB </span>","children":null,"spread":false},{"title":"error_util.go <span style='color:#111;'> 248B </span>","children":null,"spread":false},{"title":".codecov.yml <span style='color:#111;'> 36B </span>","children":null,"spread":false},{"title":"libp2p.go <span style='color:#111;'> 2.24KB </span>","children":null,"spread":false},{"title":".gitignore <span style='color:#111;'> 63B </span>","children":null,"spread":false},{"title":"options_test.go <span style='color:#111;'> 2.85KB </span>","children":null,"spread":false}],"spread":false}],"spread":true}]