I edited my response above :-) > the user checks which type of action it is, before it tries to access any > fields
Yeah. This is the crux of the problem. There is no other way around it. The key is making that check as robust as possible so it doesn't blow up when you don't expect it to :-) In Nim, that basically means Variant types + case statements.