Comments (1)
Yes, the readers and writers inherit from common abstract classes so once instantiated, you can have code that works independent of the file format.
But we could generate factories. For readers, we could use the file extension or peek at the first few bytes. In addition to file names, the binary readers and writers support stream-like objects, but HDF5 does not support this, so I guess the factory would be based on a file name. For creating writers, you need to know what format you want, so there is probably less value in generating those.
from yardl.
Related Issues (20)
- Python union classes generated with duplicate type parameters
- Python syntax/type errors when default union type is list or dict
- Unable to create switch expression of type string HOT 2
- Python ndjson error reading aliased nullable union with value None
- Error reading empty stream if it is the last step in a Protocol HOT 1
- Union of aliased type compiler error for C++ NDJSON
- `yardl generate --watch` exits if model initially has errors
- Empty protocol results in an invalid C++ CopyTo method HOT 1
- Serialized stream lacks terminating byte if you don't use a protocol Writer as a context manager in Python
- Extra \0 byte written in Python binary.StreamSerializer when value is empty
- Missing stream item in Python NDJsonProtocolReader when previous stream is empty HOT 1
- Error in Python when serializing complex arrays that are not C-contiguous HOT 1
- Panic when calling `yardl generate --watch` from wrong directory
- `get_dtype` does not work with union cases
- Include path to offending values in serialization errors
- Make generated CMakeLists.txt work without Conda on common Linux distros
- C++ date types depend on C++ standard HOT 2
- Union of aliased generic types compiler error for C++ NDJSON
- Panic when generating Python/MATLAB for Enum with no default value
- C++ HDF5 build error for Records containing map fields HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from yardl.