TIL that in Swift cast from ‘Any’ to ‘AnyObject’ always succeeds: Any as AnyObject:

When trying to bridge an incompatible thing to Obj-C (such as the structure value or function value in your example), Swift will wrap the value in an opaque Obj-C compatible box that can be round tripped across the bridge.