Dealing with errors

Errors from reading the Story

When parsing the Story using read_story_from_string, its content is validated. This means that inkling goes through it and looks for errors. These errors include things like invalid knot or variable declarations, using invalid names for variables in assignments and conditions, wrongly typed conditions, and much more.

If any error is encountered during this validation step, the function returns a ReadError which contains a list of all the errors it found. The helper function print_read_error exists to write a description of all errors and where they were found into a single string, which can be written to a log file.

Runtime errors

Once a story is started, returned errors will be of InklingError type.