<a id="aea.protocols.generator.extract_specification"></a>

# aea.protocols.generator.extract`_`specification

This module extracts a valid protocol specification into pythonic objects.

<a id="aea.protocols.generator.extract_specification.PythonicProtocolSpecification"></a>

## PythonicProtocolSpecification Objects

```python
class PythonicProtocolSpecification()
```

This class represents a protocol specification in python.

<a id="aea.protocols.generator.extract_specification.PythonicProtocolSpecification.__init__"></a>

#### `__`init`__`

```python
def __init__() -> None
```

Instantiate a Pythonic protocol specification.

<a id="aea.protocols.generator.extract_specification.extract"></a>

#### extract

```python
def extract(
    protocol_specification: ProtocolSpecification
) -> PythonicProtocolSpecification
```

Converts a protocol specification into a Pythonic protocol specification.

**Arguments**:

- `protocol_specification`: a protocol specification

**Returns**:

a Pythonic protocol specification

