moritzuehling/demoinfo-public — pull request #26 by main-- (2014-12-30 01:01:28+00:00)
Title: Protobuf on stereoids

Quoting 31de7d7c71883b0ac582a0ad1cecf9470b5ed133:

>»ESL One fnatic vs NiP on de_cache« just parsed in less than a second on my machine.
>DemoInfo is fast. I'm pleased.

From 6s to 1s. 80% speedup. ezpz.

As always: Carefully reviewing commit by commit is recommended. There are many smaller commits and a few bigger ones that I couldn't split up, but the code comments and commit messages should explain everything.

Yes, there's quite significant code duplication between `ManagedBitStream` and `UnsafeBitStream`, but I **really** don't want to mix them up.

(Coming soon to a `µopt` branch near you: `MethodImplOptions.AggressiveInlining`)