Trying to understand a big existing codebase might be more difficult than rewriting a small subset for your own use case, especially for something as trivial as a parser for a relatively simple language like protobuf.
> Trying to understand a big existing codebase might be more difficult than rewriting a small subset for your own use case (...)
Adding a small feature to an existing codebase will never require more work than implementing a minimal working example from scratch.
Gaining enough understanding of that existing codebase to know how one would go about adding that small feature, on the other hand, can easily require more time than it would take to build what you need from scratch.