Skip to main content
Module

x/fun/mod.ts>newtype.getSemigroup

A collection of algebraic data types, lenses, and schemables based on a light weight higher kinded type implementation. Written for deno.
Go to Latest
function newtype.getSemigroup
import { newtype } from "https://deno.land/x/fun@v.2.0.0-alpha.11/mod.ts";
const { getSemigroup } = newtype;

Retype an existing Semigroup from an inner type to a Newtype.

Examples

Example 1

import { Newtype, getSemigroup } from "./newtype.ts";
import * as N from "./number.ts";

type Integer = Newtype<'Integer', number>;

const semigroupInteger = getSemigroup<Integer>(N.SemigroupNumberSum);

Parameters

semigroup: Semigroup<ToValue<T>>

Returns

Semigroup<T>