GHC.OverloadedLabels

base-4.12.0.0: Basic libraries

Copyright | (c) Adam Gundry 2015-2016
License | see libraries/base/LICENSE
Maintainer | cvs-ghc@haskell.org
Stability | internal
Portability | non-portable (GHC extensions)
Safe Haskell | None
Language | Haskell2010

GHC.OverloadedLabels

Description

This module defines the `IsLabel` class is used by the `OverloadedLabels` extension. See the wiki page for more details.

When `OverloadedLabels` is enabled, if GHC sees an occurrence of the overloaded label syntax `#foo`, it is replaced with

    fromLabel @"foo" :: alpha

plus a wanted constraint `IsLabel "foo" alpha`.

Note that if `RebindableSyntax` is enabled, the desugaring of overloaded label syntax will make use of whatever `fromLabel` is in scope.

# Documentation

class IsLabel (x :: Symbol) a where #

Methods

fromLabel :: a #