# NullableCopier&lt;T&gt; Methods

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.nullablecopier-1/)

## DeepCopy(T?, CopyContext) {#deepcopy-t-nullable-orleans-serialization-cloning-copycontext-42f5b0ea}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.nullablecopier-1/methods/deepcopy-t-nullable-orleans-serialization-cloning-copycontext-42f5b0ea/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Codecs/NullableCodec.cs#L86)

```csharp
public T? DeepCopy(T? input, CopyContext context)
```

Creates a deep copy of the provided input.

### Parameters

- `input` (`T?`): The input.
- `context` (`CopyContext`): The context.

### Returns

A copy of `input`.

## IsShallowCopyable {#isshallowcopyable-c1c920af}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.nullablecopier-1/methods/isshallowcopyable-c1c920af/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Codecs/NullableCodec.cs#L81)

```csharp
public bool IsShallowCopyable()
```

Returns true if the type is shallow-copyable.
