Even though OutWriter owns the avro_schema, it still needs to define the lifetime param explicitly. And this lifetime will continue to propagate to other types. Self-reference seems a complicated problem https://users.rust-lang.org/t/how-can-we-teach-people-about-self-referential-types/65362/2. So could we just provide a writer who owns the schema and avoids the lifetime param?🤔
Do you need to keep the inner_writer as a field ?
You can create an instance when you need to write something and then discard it, e.g. in OutWriter::write() method.
Currently, the writer needs to take a lifetime param and this will make it hard to include in struct sometimes. E.g.
Even though OutWriter owns the avro_schema, it still needs to define the lifetime param explicitly. And this lifetime will continue to propagate to other types. Self-reference seems a complicated problem https://users.rust-lang.org/t/how-can-we-teach-people-about-self-referential-types/65362/2. So could we just provide a writer who owns the schema and avoids the lifetime param?🤔