From cfee856a2ad6dc86952430646efd20deb039a9ed Mon Sep 17 00:00:00 2001 From: YuCheng Hu Date: Tue, 23 Jul 2019 15:52:24 -0400 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=B8=80=E4=B8=AA=E5=9B=BE?= =?UTF-8?q?=E7=89=87=E7=94=A8=E6=9D=A5=E8=AF=B4=E6=98=8E=E5=BA=8F=E5=88=97?= =?UTF-8?q?=E5=8C=96=E5=92=8C=E5=8F=8D=E5=BA=8F=E5=88=97=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../images/protocol-buffers-serialization.png | Bin 0 -> 33303 bytes src/docs/asciidoc/index.adoc | 1 + 2 files changed, 1 insertion(+) create mode 100644 src/docs/asciidoc/images/protocol-buffers-serialization.png diff --git a/src/docs/asciidoc/images/protocol-buffers-serialization.png b/src/docs/asciidoc/images/protocol-buffers-serialization.png new file mode 100644 index 0000000000000000000000000000000000000000..5c84745b772c92e0c6d33843c459223e44de98ef GIT binary patch literal 33303 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 z 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 G!~PG@R>;o) literal 0 HcmV?d00001 diff --git a/src/docs/asciidoc/index.adoc b/src/docs/asciidoc/index.adoc index 9d1a6cc..95c9530 100644 --- a/src/docs/asciidoc/index.adoc +++ b/src/docs/asciidoc/index.adoc @@ -31,3 +31,4 @@ Protocol Buffers 是一种轻便高效的结构化数据存储格式,可以用 我们才考虑到了 Protocol Buffer 提供的功能。 +image::protocol-buffers-serialization.png[]