# HasBuffer<T>(Entity)

> Checks whether an entity has a dynamic buffer of a specific IBufferElementData type.

## Definition

* **Type:** Method
* **Namespace:** [Unity.Entities](/engine/7000.0/script-reference/unity/entities.md)
* **Assembly:** UnityEngine.EntitiesModule

```csharp
protected bool HasBuffer<T>(Entity entity) where T : struct, IBufferElementData
```

### Parameters

**** (\[Entity]\(/engine/7000.0/script-reference/unity/entities/entity)): The Entity object.

### Returns

| Type                                                          | Description                                      |
| ------------------------------------------------------------- | ------------------------------------------------ |
| [bool](https://learn.microsoft.com/dotnet/api/system.boolean) | True, if the specified entity has the component. |

### Remarks

Always returns false for an entity that has been destroyed.

Use this method to check if another entity has a dynamic buffer of a given IBufferElementData type using its [Entity](/engine/7000.0/script-reference/unity/entities/entity.md) object.

When iterating over entities coming from a query, avoid using this method with the current entity in the set. It is generally faster to change your query methods to avoid optional components.

When you call this method on the main thread, it invokes [EntityManager.HasBuffer](/engine/7000.0/script-reference/unity/entities/entitymanager/hasbuffer.md).

This lookup method results in a slower, indirect memory access. When possible, organize your data to minimize the need for indirect lookups.
