title: C++ event driven json stream reader
body: <p>I just discovered YAJL project which just does what I need.</p>
  
  <ul>
  <li>Read from stream</li>
  <li>Callback on each valid parsed token</li>
  <li>Reparse incomplete json when new data arrived</li>
  </ul>
  
  <p>But I prefer C++. Of course I can use this library from C++ project and even write my own wrapper if I really want to but anyway native C++ is preferable.</p>
  
  <p>I looked at JsonCPP but looks like it can't read incomplete json data from stream.</p>
  
  <p>Is there any other C++ libraries for parsing json streams?</p>
  
  <p>Some more requirements:</p>
  
  <ul>
  <li>lightweight. boost or Qt are not suitable</li>
  <li>I need something what I may freely use in commercial closed source software (mit, public domain, etc).</li>
  <li>Support for not blocking read. or allow to feed data (append_incoming_data).</li>
  </ul>