# CallableNodeProcessor

> **Class** in `langsmith`

📖 [View in docs](https://reference.langchain.com/python/langsmith/anonymizer/CallableNodeProcessor)

String node processor that uses a callable function to replace sensitive data.

## Signature

```python
CallableNodeProcessor(
    self,
    func: Union[Callable[[str], str], Callable[[str, list[Union[str, int]]], str]],
)
```

## Extends

- `StringNodeProcessor`

## Constructors

```python
__init__(
    self,
    func: Union[Callable[[str], str], Callable[[str, list[Union[str, int]]], str]],
)
```

| Name | Type |
|------|------|
| `func` | `Union[Callable[[str], str], Callable[[str, list[Union[str, int]]], str]]` |


## Properties

- `func`
- `accepts_path`

## Methods

- [`mask_nodes()`](https://reference.langchain.com/python/langsmith/anonymizer/CallableNodeProcessor/mask_nodes)

---

[View source on GitHub](https://github.com/langchain-ai/langsmith-sdk/blob/6a74bf5af9e542d8065af8edca54b2448f430916/python/langsmith/anonymizer.py#L121)