Resolve inert defers

This commit is contained in:
Christian Treffs 2018-12-04 08:07:08 +01:00
parent 7a5a7974e2
commit 72fdc6d119
4 changed files with 4 additions and 12 deletions

View File

@ -13,9 +13,7 @@ public final class TypedFamily1<A>: TypedFamilyProtocol where A: Component {
public init(_ nexus: Nexus, requiresAll compA: A.Type, excludesAll: [Component.Type]) {
self.nexus = nexus
traits = FamilyTraitSet(requiresAll: [compA], excludesAll: excludesAll)
defer {
nexus.onFamilyInit(traits: traits)
}
nexus.onFamilyInit(traits: traits)
}
public func makeIterator() -> ComponentIterator1<A> {

View File

@ -15,9 +15,7 @@ public final class TypedFamily2<A, B>: TypedFamilyProtocol where A: Component, B
public init(_ nexus: Nexus, requiresAll compA: A.Type, _ compB: B.Type, excludesAll: [Component.Type]) {
self.nexus = nexus
traits = FamilyTraitSet(requiresAll: [compA, compB], excludesAll: excludesAll)
defer {
nexus.onFamilyInit(traits: traits)
}
nexus.onFamilyInit(traits: traits)
}
public func makeIterator() -> ComponentIterator2<A, B> {

View File

@ -14,9 +14,7 @@ public final class TypedFamily4<A, B, C, D>: TypedFamilyProtocol where A: Compon
public init(_ nexus: Nexus, requiresAll compA: A.Type, _ compB: B.Type, _ compC: C.Type, _ compD: D.Type, excludesAll: [Component.Type]) {
self.nexus = nexus
traits = FamilyTraitSet(requiresAll: [compA, compB, compC, compD], excludesAll: excludesAll)
defer {
nexus.onFamilyInit(traits: traits)
}
nexus.onFamilyInit(traits: traits)
}
public func makeIterator() -> ComponentIterator4<A, B, C, D> {

View File

@ -14,9 +14,7 @@ public final class TypedFamily5<A, B, C, D, E>: TypedFamilyProtocol where A: Com
public init(_ nexus: Nexus, requiresAll compA: A.Type, _ compB: B.Type, _ compC: C.Type, _ compD: D.Type, _ compE: E.Type, excludesAll: [Component.Type]) {
self.nexus = nexus
traits = FamilyTraitSet(requiresAll: [compA, compB, compC, compD, compE], excludesAll: excludesAll)
defer {
nexus.onFamilyInit(traits: traits)
}
nexus.onFamilyInit(traits: traits)
}
public func makeIterator() -> ComponentIterator5<A, B, C, D, E> {