flowchart TB
subgraph 单接口
direction LR
r1(Reader)---w1(Writer)---c1(Closer)---s1(Seeker)
end
subgraph 双接口
direction LR
rw(ReadWriter)---rc(ReadCloser)---rs(ReadSeeker)---wc(WriteCloser)---ws(WriteSeeker)
end
subgraph 三接口
direction LR
rwc(ReadWriteCloser)---rsc(ReadSeekCloser)---rws(ReadWriteSeeker)
end
单接口 --组合--> 双接口 --组合--> 三接口
flowchart TB
subgraph Byte
direction LR
br(ByteReader)---bw(ByteWriter)---bc(ByteScanner)
end
subgraph Rune
direction LR
rr(RuneReader)---rw(ByteWriter)---rc(ByteScanner)
end
subgraph String
direction LR
sw(StringWriter)
end
flowchart TB
subgraph 附加
direction LR
rf(ReaderFrom)---wt(WriterTo)---ra(ReaderAt)---wa(WriterAt)
end
subgraph 限制
direction LR
lr(LimitedReader)---sr(SectionReader)
end
subgraph 内部
direction LR
d(discard)---nc(nopCloser)---tr(teeReader镜像)
mr(multiReader串联)---mw(multiWriter广播)
pr(PipeReader就地读)--同个pipe,chan实现---pw(PipeWriter就地写)
end