Tomorrow I am going to give a presentation about "Reading and parsing JSON in Rust".
As a last minute preparation I'd like to go over the main cases I need to cover. Maybe some of my readers will have ideas what else to show.
β What is JSONβ
π Reading an arbitrary JSON file without knowing it internal structure. Regardless if the main element is an object or an array. (a mapping or a list)
π€ Reading a JSON which is a plain array of values.
πΉ Reading a JSON which a single level object, key-value pairs of arbitrary values of some known type. e.g string-string pairs or string-number pairs.
πΏ Defining some of the fields in a JSON object.
πΎ Defining all the fields of the JSON object and making sure the JSON we read in does not have any extra fields.
π½ Reading a JSON where a certain field can either have a single value or a vector as a value. In some unfortunate case we might have both language: English
and language: [English, Spanish]
in different files.
π₯· Making sure all the expected fields exist in the file.
π€‘ Reading JSON where the field name is not valid attribute in our language. e.g. Most programming language will not allow an a variable or an attribute to have a dash -
in them. So a field called runs-on
cannot be mapped directly to an attribute.
π§Ά Reading a JSON-Lines file with multiple JSON structures where each JSON structure is on a separate physical row.
Top comments (0)