# Function: parse()

Parses a value using a [Standard Schema](https://github.com/standard-schema/standard-schema) compatible schema.
Returns a [Result](../types/Result.Result.md) with the parsed value on success or validation errors on failure.

## Type Param

**S**

The Standard Schema V1 compatible schema type.

## Examples

**Basic Usage**

```ts
import { Result } from '@praha/byethrow';
import { z } from 'zod';

const schema = z.object({ name: z.string() });
const result = Result.parse(schema, { name: 'John' });
// Result.Result<{ name: string }, ReadonlyArray<StandardSchemaV1.Issue>>
```

**Curried Usage**

```ts
import { Result } from '@praha/byethrow';
import { z } from 'zod';

const schema = z.object({ name: z.string() });
const parser = Result.parse(schema);
const result = parser({ name: 'John' });
// Result.Result<{ name: string }, ReadonlyArray<StandardSchemaV1.Issue>>
```

## Call Signature

> **parse**\<`S`>(`schema`): (`value`) => [`Result`](../types/Result.Result.md)\<`InferOutput`\<`S`>, readonly `Issue`\[]>

### Type Parameters

#### S

`S` _extends_ `StandardSchemaV1`\<`unknown`, `unknown`>

### Parameters

#### schema

`S`

### Returns

(`value`) => [`Result`](../types/Result.Result.md)\<`InferOutput`\<`S`>, readonly `Issue`\[]>

## Call Signature

> **parse**\<`S`>(`schema`, `value`): [`Result`](../types/Result.Result.md)\<`InferOutput`\<`S`>, readonly `Issue`\[]>

### Type Parameters

#### S

`S` _extends_ `StandardSchemaV1`\<`unknown`, `unknown`>

### Parameters

#### schema

`S`

#### value

`unknown`

### Returns

[`Result`](../types/Result.Result.md)\<`InferOutput`\<`S`>, readonly `Issue`\[]>
