Distinção entre classes de nível superior privadas e privadas de arquivo
No Swift 3, qual é exatamente a diferença no controle de acesso entre
private class Foo { }
e
fileprivate class Bar { }
assumindo que ambas são classes de nível superior, ou seja, elas são colocadas diretamente em um arquivo em vez de aninhadas em alguma outra construção?