# ForId

``public final class ForId``

Witness for the `Id<A>` data type. To be used in simulated Higher Kinded Types.

• ``` eq(_:_:) ```

#### Declaration

Swift

``public static func eq<A>(_ lhs: Kind<ForId, A>, _ rhs: Kind<ForId, A>) -> Bool where A : Equatable``
• ``` map(_:_:) ```

#### Declaration

Swift

``public static func map<A, B>(_ fa: Kind<ForId, A>, _ f: @escaping (A) -> B) -> Kind<ForId, B>``
• ``` pure(_:) ```

#### Declaration

Swift

``public static func pure<A>(_ a: A) -> Kind<ForId, A>``
• ``` flatMap(_:_:) ```

#### Declaration

Swift

``public static func flatMap<A, B>(_ fa: Kind<ForId, A>, _ f: @escaping (A) -> Kind<ForId, B>) -> Kind<ForId, B>``
• ``` tailRecM(_:_:) ```

#### Declaration

Swift

``public static func tailRecM<A, B>(_ a: A, _ f: @escaping (A) -> Kind<ForId, Either<A, B>>) -> Kind<ForId, B>``
• ``` coflatMap(_:_:) ```

#### Declaration

Swift

``public static func coflatMap<A, B>(_ fa: Kind<ForId, A>, _ f: @escaping (Kind<ForId, A>) -> B) -> Kind<ForId, B>``
• ``` extract(_:) ```

#### Declaration

Swift

``public static func extract<A>(_ fa: Kind<ForId, A>) -> A``
• ``` foldLeft(_:_:_:) ```

#### Declaration

Swift

``public static func foldLeft<A, B>(_ fa: Kind<ForId, A>, _ b: B, _ f: @escaping (B, A) -> B) -> B``
• ``` foldRight(_:_:_:) ```

#### Declaration

Swift

``public static func foldRight<A, B>(_ fa: Kind<ForId, A>, _ b: Eval<B>, _ f: @escaping (A, Eval<B>) -> Eval<B>) -> Eval<B>``
• ``` traverse(_:_:) ```

#### Declaration

Swift

``public static func traverse<G: Applicative, A, B>(_ fa: Kind<ForId, A>, _ f: @escaping (A) -> Kind<G, B>) -> Kind<G, Kind<ForId, B>>``