I'm sorry to ask such a basic question but I haven't been able to find the answer anywhere :
In order to make an Encoder, you must define different types of containers :
SingleValueEncodingContainerUnkeyedEncodingContainerKeyedEncodingContainerProtocol (yes the naming spec is weird)Those last two must both contain a method called superEncoder however I have not been able to find what it's supposed to do anywhere. This question has an answer that implements it but doesn't explain it, and this talk only makes a passing mention of it.
What is it supposed to do, and what is it for ?