# Parser::MessageScratch

<a id="messagescratch"></a>

# MessageScratch

```cpp
#include <icy/http/parser.h>

struct MessageScratch
```

[Defined in src/http/include/icy/http/parser.h:142](https://github.com/auscaster/icey/blob/main/src/http/include/icy/http/parser.h#L142)

The start line and headers of the message being parsed, applied to the request or response once its headers are complete.

## Public Attributes

| Return | Name | Description |
|--------|------|-------------|
| `std::string` | [`version`](#version-2)  |  |
| `std::string` | [`method`](#method-4)  |  |
| `std::string` | [`uri`](#uri)  |  |
| `std::string` | [`reason`](#reason)  |  |
| [`http::StatusCode`](https://auscaster.com/icey/docs/api-reference/icy-http.md#statuscode) | [`status`](#status-2)  |  |
| `std::vector< std::pair< std::string, std::string > >` | [`headers`](#headers-2)  |  |

---

<a id="version-2"></a>

### version

```cpp
std::string version
```

[Defined in src/http/include/icy/http/parser.h:144](https://github.com/auscaster/icey/blob/main/src/http/include/icy/http/parser.h#L144)

---

<a id="method-4"></a>

### method

```cpp
std::string method
```

[Defined in src/http/include/icy/http/parser.h:145](https://github.com/auscaster/icey/blob/main/src/http/include/icy/http/parser.h#L145)

---

<a id="uri"></a>

### uri

```cpp
std::string uri
```

[Defined in src/http/include/icy/http/parser.h:146](https://github.com/auscaster/icey/blob/main/src/http/include/icy/http/parser.h#L146)

---

<a id="reason"></a>

### reason

```cpp
std::string reason
```

[Defined in src/http/include/icy/http/parser.h:147](https://github.com/auscaster/icey/blob/main/src/http/include/icy/http/parser.h#L147)

---

<a id="status-2"></a>

### status

```cpp
http::StatusCode status = http::StatusCode::OK
```

Type: [`http::StatusCode`](https://auscaster.com/icey/docs/api-reference/icy-http.md#statuscode)

[Defined in src/http/include/icy/http/parser.h:148](https://github.com/auscaster/icey/blob/main/src/http/include/icy/http/parser.h#L148)

---

<a id="headers-2"></a>

### headers

```cpp
std::vector< std::pair< std::string, std::string > > headers
```

[Defined in src/http/include/icy/http/parser.h:149](https://github.com/auscaster/icey/blob/main/src/http/include/icy/http/parser.h#L149)

## Public Methods

| Return | Name | Description |
|--------|------|-------------|
| `void` | [`reset`](#reset-20) `inline` |  |

---

<a id="reset-20"></a>

### reset

`inline`

```cpp
inline void reset()
```

[Defined in src/http/include/icy/http/parser.h:151](https://github.com/auscaster/icey/blob/main/src/http/include/icy/http/parser.h#L151)
