mirror of
https://github.com/IHaskell/IHaskell.git
synced 2025-04-16 11:26:08 +00:00
ihaskell-widgets: Port to vinyl-0.9
This commit is contained in:
parent
c070adf882
commit
17e67525f2
@ -102,7 +102,7 @@ library
|
||||
, ipython-kernel >= 0.6.1.2
|
||||
, text >= 0.11
|
||||
, unordered-containers -any
|
||||
, vinyl >= 0.5 && < 0.9
|
||||
, vinyl >= 0.5
|
||||
, vector -any
|
||||
, scientific -any
|
||||
, unix -any
|
||||
|
@ -1,3 +1,4 @@
|
||||
{-# LANGUAGE CPP #-}
|
||||
{-# LANGUAGE TypeFamilies #-}
|
||||
{-# LANGUAGE DataKinds #-}
|
||||
{-# LANGUAGE TypeOperators #-}
|
||||
@ -18,7 +19,12 @@ module IHaskell.Display.Widgets.Interactive
|
||||
import Data.Text
|
||||
import Data.Proxy
|
||||
|
||||
import Data.Vinyl.Core
|
||||
#if MIN_VERSION_vinyl(0,9,0)
|
||||
import Data.Vinyl.Core (Rec(..))
|
||||
import Data.Vinyl.Recursive (recordToList, rmap, rtraverse)
|
||||
#else
|
||||
import Data.Vinyl.Core (Rec(..), recordToList, rmap, rtraverse)
|
||||
#endif
|
||||
import Data.Vinyl.Functor (Identity(..), Const(..))
|
||||
import Data.Vinyl.Derived (HList)
|
||||
import Data.Vinyl.Lens (type (∈))
|
||||
|
@ -75,7 +75,12 @@ import Text.Printf (printf)
|
||||
import Data.Aeson hiding (pairs)
|
||||
import Data.Aeson.Types (Pair)
|
||||
import Data.Int (Int16)
|
||||
#if MIN_VERSION_vinyl(0,9,0)
|
||||
import Data.Vinyl (Rec(..), Dict(..))
|
||||
import Data.Vinyl.Recursive ((<+>), recordToList, reifyConstraint, rmap)
|
||||
#else
|
||||
import Data.Vinyl (Rec(..), (<+>), recordToList, reifyConstraint, rmap, Dict(..))
|
||||
#endif
|
||||
import Data.Vinyl.Functor (Compose(..), Const(..))
|
||||
import Data.Vinyl.Lens (rget, rput, type (∈))
|
||||
import Data.Vinyl.TypeLevel (RecAll)
|
||||
@ -844,7 +849,11 @@ setField' widget sfield val = do
|
||||
|
||||
-- | Pluck an attribute from a record
|
||||
getAttr :: (f ∈ WidgetFields w) => IPythonWidget w -> SField f -> IO (Attr f)
|
||||
#if MIN_VERSION_vinyl(0,9,0)
|
||||
getAttr widget _ = rget <$> _getState <$> readIORef (state widget)
|
||||
#else
|
||||
getAttr widget sfield = rget sfield <$> _getState <$> readIORef (state widget)
|
||||
#endif
|
||||
|
||||
-- | Get the value of a field.
|
||||
getField :: (f ∈ WidgetFields w) => IPythonWidget w -> SField f -> IO (FieldType f)
|
||||
|
Loading…
x
Reference in New Issue
Block a user