whitepages/thrift — pull request #3 by axos88 (2013-06-20 22:55:24+00:00)
Title: T speedup serilizer

A new layer has been introduced between the protocol layer and the transport layer, implemented in C, which is able to buffer all data transfer between the p layer and the t layer, thus avoiding constantly switching context between ruby and C.

The memory buffer transport has also been rewritten to avoid calling ivar_get and ivar_set as far as possible, thus speeding it up.

Factory object have been introduced for the MemoryBufferTransport and the newly introduced FastMemoryBufferTransport, which may be passed on as parameters to the Serializer and Deserializer objects' initializers if needed. It will default to the old implementation of MemoryBufferTransport.