each2<T1 extends Component, T2 extends Component> method

Iterable<(WorldEntity, T1, T2)> each2<T1 extends Component, T2 extends Component>()

Iterates (entity, T1, T2) for every entity with both components.

Implementation

Iterable<(WorldEntity, T1, T2)>
    each2<T1 extends Component, T2 extends Component>() sync* {
  for (final entity in query2<T1, T2>()) {
    if (_readComponent<T1>(entity) case Some(value: final v1)) {
      if (_readComponent<T2>(entity) case Some(value: final v2)) {
        yield (entity, v1, v2);
      }
    }
  }
}