Reading and parsing JSON in general and specifically in Rust 🦀
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
andlanguage: [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 calledruns-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.