WIP: Implement PodSerializer using C pod builder

This removed the custom "cookie-factory"-based pod serialization implementation by using the upstream spa_pod_builder internally instead via its libspa::pod::builder::Builder wrapper.

This results in a few breaking changes:

  • Error type changed from nom::IResult to nix::errno::Errno
  • Arrays no longer need their length specified when creating them, the internal builder determines it automatically when closing the array
  • The PodSerializer no longer takes any Write + Seek implementor, instead it takes a &mut Vec<u8> as this is the only thing supported by the builder. This also means the PodSerializer::serialize methods return type has changed slightly.
  • The definition of the PodSerialize trait has also changed slightly due tonthe changes to the serializer
Edited by Tom Wagner

Merge request reports