I have an array of custom object "Foo".
Each "Foo" has an optional array of "Bar".
I know I could do it using for loops but I'm hoping for a more elegant way, possibly using flatMap, filter and/or reduce.
Foo can have more properties of different types.
class Foo {
var bars: [Bar]?
}
let foo1 = Foo()
let foo2 = Foo()
let foo3 = Foo()
let bar1 = Bar()
let bar2 = Bar()
let bar3 = Bar()
foo1.bars.append(bar2)
foo1.bars.append(bar3)
foo2.bars.append(bar1)
foo2.bars.append(bar2)
foo2.bars.append(bar3)
foo3.bars.append(bar1)
foo3.bars.append(bar2)
let FooArray = [Foo1, Foo2, Foo3]
// Magic -> Print 7