{-# OPTIONS --without-K #-} module function.overloading {i j}{X : Set i}{Y : Set j} where open import level open import sum open import overloading.core fun-is-fun : Coercion (X → Y) (X → Y) fun-is-fun = coerce-self _ private module fun-methods {k}{Source : Set k} ⦃ c : Coercion Source (X → Y) ⦄ where open Coercion c public using () renaming (coerce to apply) open fun-methods public