> ## Documentation Index
> Fetch the complete documentation index at: https://cdktn.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Python: Tokenization

> CDKTN Core API Reference for Tokenization in Python.

Less oft-needed functions to manipulate Tokens.

## Initializers <a name="Initializers" id="cdktn.Tokenization.Initializer" />

```python theme={null}
import cdktn

cdktn.Tokenization()
```

| **Name** | **Type** | **Description** |
| -------- | -------- | --------------- |

***

## Static Functions <a name="Static Functions" id="Static Functions" />

| **Name**                                                                               | **Description**                                                                                    |
| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
| <code><a href="#cdktn.Tokenization.isResolvable">is\_resolvable</a></code>             | Return whether the given object is an IResolvable object.                                          |
| <code><a href="#cdktn.Tokenization.resolve">resolve</a></code>                         | Resolves an object by evaluating all tokens and removing any undefined or empty objects or arrays. |
| <code><a href="#cdktn.Tokenization.reverse">reverse</a></code>                         | Reverse any value into Resolvables, if possible.                                                   |
| <code><a href="#cdktn.Tokenization.reverseList">reverse\_list</a></code>               | Un-encode a Tokenized value from a list.                                                           |
| <code><a href="#cdktn.Tokenization.reverseMap">reverse\_map</a></code>                 | Un-encode a Tokenized value from a map.                                                            |
| <code><a href="#cdktn.Tokenization.reverseNumber">reverse\_number</a></code>           | Un-encode a Tokenized value from a number.                                                         |
| <code><a href="#cdktn.Tokenization.reverseNumberList">reverse\_number\_list</a></code> | Un-encode a Tokenized value from a list.                                                           |
| <code><a href="#cdktn.Tokenization.reverseString">reverse\_string</a></code>           | Un-encode a string potentially containing encoded tokens.                                          |
| <code><a href="#cdktn.Tokenization.stringifyNumber">stringify\_number</a></code>       | Stringify a number directly or lazily if it's a Token.                                             |

***

### `is_resolvable` <a name="is_resolvable" id="cdktn.Tokenization.isResolvable" />

```python theme={null}
import cdktn

cdktn.Tokenization.is_resolvable(
  obj: typing.Any
)
```

Return whether the given object is an IResolvable object.

This is different from Token.isUnresolved() which will also check for
encoded Tokens, whereas this method will only do a type check on the given
object.

#### `obj`<sup>Required</sup> <a name="obj" id="cdktn.Tokenization.isResolvable.parameter.obj" />

* *Type:* typing.Any

***

### `resolve` <a name="resolve" id="cdktn.Tokenization.resolve" />

```python theme={null}
import cdktn

cdktn.Tokenization.resolve(
  obj: typing.Any,
  resolver: ITokenResolver,
  scope: IConstruct,
  preparing: bool = None
)
```

Resolves an object by evaluating all tokens and removing any undefined or empty objects or arrays.

Values can only be primitives, arrays or tokens. Other objects (i.e. with methods) will be rejected.

#### `obj`<sup>Required</sup> <a name="obj" id="cdktn.Tokenization.resolve.parameter.obj" />

* *Type:* typing.Any

The object to resolve.

***

#### `resolver`<sup>Required</sup> <a name="resolver" id="cdktn.Tokenization.resolve.parameter.resolver" />

* *Type:* <a href="#cdktn.ITokenResolver">ITokenResolver</a>

The resolver to apply to any resolvable tokens found.

***

#### `scope`<sup>Required</sup> <a name="scope" id="cdktn.Tokenization.resolve.parameter.scope" />

* *Type:* constructs.IConstruct

The scope from which resolution is performed.

***

#### `preparing`<sup>Optional</sup> <a name="preparing" id="cdktn.Tokenization.resolve.parameter.preparing" />

* *Type:* bool
* *Default:* false

Whether the resolution is being executed during the prepare phase or not.

***

### `reverse` <a name="reverse" id="cdktn.Tokenization.reverse" />

```python theme={null}
import cdktn

cdktn.Tokenization.reverse(
  x: typing.Any
)
```

Reverse any value into Resolvables, if possible.

#### `x`<sup>Required</sup> <a name="x" id="cdktn.Tokenization.reverse.parameter.x" />

* *Type:* typing.Any

***

### `reverse_list` <a name="reverse_list" id="cdktn.Tokenization.reverseList" />

```python theme={null}
import cdktn

cdktn.Tokenization.reverse_list(
  l: typing.List[str]
)
```

Un-encode a Tokenized value from a list.

#### `l`<sup>Required</sup> <a name="l" id="cdktn.Tokenization.reverseList.parameter.l" />

* *Type:* typing.List\[str]

***

### `reverse_map` <a name="reverse_map" id="cdktn.Tokenization.reverseMap" />

```python theme={null}
import cdktn

cdktn.Tokenization.reverse_map(
  m: typing.Mapping[typing.Any]
)
```

Un-encode a Tokenized value from a map.

#### `m`<sup>Required</sup> <a name="m" id="cdktn.Tokenization.reverseMap.parameter.m" />

* *Type:* typing.Mapping\[typing.Any]

***

### `reverse_number` <a name="reverse_number" id="cdktn.Tokenization.reverseNumber" />

```python theme={null}
import cdktn

cdktn.Tokenization.reverse_number(
  n: typing.Union[int, float]
)
```

Un-encode a Tokenized value from a number.

#### `n`<sup>Required</sup> <a name="n" id="cdktn.Tokenization.reverseNumber.parameter.n" />

* *Type:* typing.Union\[int, float]

***

### `reverse_number_list` <a name="reverse_number_list" id="cdktn.Tokenization.reverseNumberList" />

```python theme={null}
import cdktn

cdktn.Tokenization.reverse_number_list(
  l: typing.List[typing.Union[int, float]]
)
```

Un-encode a Tokenized value from a list.

#### `l`<sup>Required</sup> <a name="l" id="cdktn.Tokenization.reverseNumberList.parameter.l" />

* *Type:* typing.List\[typing.Union\[int, float]]

***

### `reverse_string` <a name="reverse_string" id="cdktn.Tokenization.reverseString" />

```python theme={null}
import cdktn

cdktn.Tokenization.reverse_string(
  s: str
)
```

Un-encode a string potentially containing encoded tokens.

#### `s`<sup>Required</sup> <a name="s" id="cdktn.Tokenization.reverseString.parameter.s" />

* *Type:* str

***

### `stringify_number` <a name="stringify_number" id="cdktn.Tokenization.stringifyNumber" />

```python theme={null}
import cdktn

cdktn.Tokenization.stringify_number(
  x: typing.Union[int, float]
)
```

Stringify a number directly or lazily if it's a Token.

If it is an object (i.e., \{ Ref: 'SomeLogicalId' }), return it as-is.

#### `x`<sup>Required</sup> <a name="x" id="cdktn.Tokenization.stringifyNumber.parameter.x" />

* *Type:* typing.Union\[int, float]

***
