{-# OPTIONS --without-K --safe #-}

-- Bundled version of a Cartesian Closed Category
module Categories.Category.CartesianClosed.Bundle where

open import Level

open import Categories.Category.Core using (Category)
open import Categories.Category.CartesianClosed using (CartesianClosed)
open import Categories.Category.Cartesian.Bundle

record CartesianClosedCategory o  e : Set (suc (o    e)) where
  field
    U         : Category o  e  -- U for underlying
    cartesianClosed : CartesianClosed U

  open Category U public

  cartesianCategory : CartesianCategory o  e
  cartesianCategory = record
    { U = U
    ; cartesian = CartesianClosed.cartesian cartesianClosed
    }