diff --git a/docs/index.rst b/docs/index.rst index e450a45..3774848 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -3,11 +3,11 @@ Welcome to capnp's documentation! ================================= -This is a python wrapping of the C++ implementation of the `Capnproto `_ library. Here is a description, quoted from its docs: +This is a python wrapping of the C++ implementation of the `Cap'n Proto `_ library. Here is a short description, quoted from its docs: Cap’n Proto is an insanely fast data interchange format and capability-based RPC system. Think JSON, except binary. Or think Protocol Buffers, except faster. In fact, in benchmarks, Cap’n Proto is INFINITY TIMES faster than Protocol Buffers. -The INFINITY TIMES faster part isn't so true for python, but in some simplistic benchmarks (available in the `benchmark directory of the repo `_), capnp is 4x faster than the pure python Protocol Buffer library, and 2x faster than the C++ implementation. +The INFINITY TIMES faster part isn't so true for python, but in some simplistic benchmarks (available in the `benchmark directory of the repo `_), capnp has proven to be decently faster than Protocol Buffers. Also, the python capnp library can load Cap'n Proto schema files directly, without the need for a seperate compile step like with Protocol Buffers or Thrift. Contents: diff --git a/docs/install.rst b/docs/install.rst index db24525..fca0e8d 100644 --- a/docs/install.rst +++ b/docs/install.rst @@ -3,10 +3,10 @@ Installation =================== -C++ Capnproto Library +C++ Cap'n Proto Library --------------------- -You need to install the C++ Capnproto library first. It requires a C++ compiler with C++11 support, such as GCC 4.7+ or Clang 3.2+. Follow installation docs at `http://kentonv.github.io/capnproto/install.html `_ with an added `sudo ldconfig` after you're done installing, or if you're feeling lazy, you can run the commands below:: +You need to install the C++ Cap'n Proto library first. It requires a C++ compiler with C++11 support, such as GCC 4.7+ or Clang 3.2+. Follow installation docs at `http://kentonv.github.io/capnproto/install.html `_ with an added `sudo ldconfig` after you're done installing, or if you're feeling lazy, you can run the commands below:: wget https://github.com/kentonv/capnproto/archive/master.zip unzip master.zip diff --git a/docs/quickstart.rst b/docs/quickstart.rst index 31bbf15..7f36d30 100644 --- a/docs/quickstart.rst +++ b/docs/quickstart.rst @@ -5,20 +5,20 @@ Quickstart This assumes you already have the capnp library installed. If you don't, please follow the instructions at :ref:`Installation ` first. -In general, this library is a very light wrapping of the `Capnproto C++ library `_. You can refer to its docs for more advanced concepts, or just to get a basic idea of how the python library is structured. +In general, this library is a very light wrapping of the `Cap'n Proto C++ library `_. You can refer to its docs for more advanced concepts, or just to get a basic idea of how the python library is structured. -Load a Capnproto Schema +Load a Cap'n Proto Schema ------------------------ First you need to import the library:: import capnp -Then you can load the Capnproto schema with:: +Then you can load the Cap'n Proto schema with:: capnp.load('addressbook.capnp') -For future reference, here is the capnproto schema. Also available in the github repository under examples/addressbook.capnp:: +For future reference, here is the Cap'n Proto schema. Also available in the github repository under examples/addressbook.capnp:: # addressbook.capnp 0x934efea7f017fff0; @@ -63,14 +63,14 @@ First you need to allocate a MessageBuilder for your message to go in. There is message = capnp.MallocMessageBuilder() -Initialize a New Capnproto Object +Initialize a New Cap'n Proto Object ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Now that you have a message buffer, you need to allocate an actual object that is from your schema. In this case, we will allocate an `AddressBook`:: addressBook = message.initRoot(addressbook.AddressBook) -Notice that we used `addressbook` from the previous section: `Load a Capnproto Schema`_. +Notice that we used `addressbook` from the previous section: `Load a Cap'n Proto Schema`_. List ~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -86,7 +86,7 @@ For now, let's grab the first element out of this list and assign it to a variab Primitive Types ~~~~~~~~~~~~~~~~~~~~~~~~~~~ -For all primitive types, from the Capnproto docs: +For all primitive types, from the Cap'n Proto docs: - Boolean: Bool - Integers: Int8, Int16, Int32, Int64 @@ -154,7 +154,7 @@ Much like before, you will have to de-serialize the message from a file descript f = open('example.bin') message = capnp.PackedFdMessageReader(f.fileno()) -Initialize a New Capnproto Object +Initialize a New Cap'n Proto Object ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Just like when building, you have to actually specify which message you want to read out of buffer::