How are ListLabels, ArrayLabels, etc. implemented?

That works for n=2 arguments. How about when you have n > 2 arguments?