67 template<
typename Full>
69 assert(owner.HasComponentOfBase<Base>());
75 return owner.id == other.owner.id && full_type_id == other.full_type_id;
79 assert(EntityIsValid(owner.id));
80 auto matching = owner.GetAllComponentsPolymorphic<Base>();
82 if (comp.full_id == full_type_id){
83 return comp.template
Get<Base>(GetOwner().GetID());
89 inline Base* operator->(){
95 return static_cast<T*
>(get());