liquidhaskell-0.7.0.0: tests/pos/ClassKind.hs
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE PolyKinds #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE StandaloneDeriving #-}
-- | Implements key mechanisms of Awake.Data.Struct without
-- any additional bounds checking beyond what is documented.
module ClassKind where
import Data.Proxy
class Member a where
{-@ class Member a where
sizeOfMember :: Proxy a -> Nat
@-}
sizeOfMember :: Proxy a -> Int