# ShallowCopier&lt;T&gt; Methods

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

## DeepCopy(T, CopyContext) {#deepcopy-t-orleans-serialization-cloning-copycontext-2c2280f5}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.cloning.shallowcopier-1/methods/deepcopy-t-orleans-serialization-cloning-copycontext-2c2280f5/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Cloning/IDeepCopier.cs)

```csharp
public T DeepCopy(T input, CopyContext _)
```

Returns the input value.

### Parameters

- `input` (`T`)
- `_` (`CopyContext`)

## DeepCopy(object?, CopyContext) {#deepcopy-object-nullable-orleans-serialization-cloning-copycontext-ea1bd991}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.cloning.shallowcopier-1/methods/deepcopy-object-nullable-orleans-serialization-cloning-copycontext-ea1bd991/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Cloning/IDeepCopier.cs)

```csharp
public object? DeepCopy(object? input, CopyContext _)
```

Returns the input value.

### Parameters

- `input` (`object?`)
- `_` (`CopyContext`)

## IsShallowCopyable {#isshallowcopyable-1a9bca44}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.cloning.shallowcopier-1/methods/isshallowcopyable-1a9bca44/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Cloning/IDeepCopier.cs#L99)

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

Returns true if the type is shallow-copyable.
