1{-# OPTIONS_GHC -Wall #-}
2{-# LANGUAGE OverloadedStrings #-}
5 , basics, char, string, debug
7 , platform, cmd, sub, virtualDom
8 , jsonDecode, jsonEncode
9 , webgl, vector2, vector3, vector4, matrix4
11 , isKernel, getKernel, canonicalIsKernel
16import Prelude hiding (maybe)
17import Control.Monad (liftM2)
19import qualified Data.Text as Text
20import Data.Text (Text)
22import qualified Elm.Name as N
23import qualified Elm.Package as Pkg
32 { _package :: !Pkg.Name
38instance Eq Canonical where
39 (==) (Canonical pkg home) (Canonical pkg' home') =
40 home == home' && pkg == pkg'
47{-# NOINLINE basics #-}
49basics = Canonical Pkg.core "Basics"
54char = Canonical Pkg.core N.char
57{-# NOINLINE string #-}
59string = Canonical Pkg.core N.string
64debug = Canonical Pkg.core N.debug
73maybe = Canonical Pkg.core N.maybe
78list = Canonical Pkg.core N.list
83array = Canonical Pkg.core N.array
90{-# NOINLINE platform #-}
92platform = Canonical Pkg.core "Platform"
97cmd = Canonical Pkg.core "Platform.Cmd"
102sub = Canonical Pkg.core "Platform.Sub"
105{-# NOINLINE virtualDom #-}
106virtualDom :: Canonical
107virtualDom = Canonical Pkg.virtualDom "VirtualDom"
114{-# NOINLINE jsonDecode #-}
115jsonDecode :: Canonical
116jsonDecode = Canonical Pkg.core "Json.Decode"
119{-# NOINLINE jsonEncode #-}
120jsonEncode :: Canonical
121jsonEncode = Canonical Pkg.core "Json.Encode"
128{-# NOINLINE webgl #-}
130webgl = Canonical Pkg.webgl "WebGL"
133{-# NOINLINE vector2 #-}
135vector2 = Canonical Pkg.linearAlgebra "Math.Vector2"
138{-# NOINLINE vector3 #-}
140vector3 = Canonical Pkg.linearAlgebra "Math.Vector3"
143{-# NOINLINE vector4 #-}
145vector4 = Canonical Pkg.linearAlgebra "Math.Vector4"
148{-# NOINLINE matrix4 #-}
150matrix4 = Canonical Pkg.linearAlgebra "Math.Matrix4"
157canonicalToText :: Canonical -> Text
158canonicalToText (Canonical _ name) =
166isKernel :: N.Name -> Bool
168 Text.isPrefixOf "Elm.Kernel." name
171getKernel :: N.Name -> Text
176canonicalIsKernel :: Canonical -> Bool
177canonicalIsKernel (Canonical _ name) =
185instance Binary Canonical where
186 put (Canonical a b) =
190 liftM2 Canonical get get
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list