1-----------------------------------------------------------------------------
3-- Module : Language.PureScript.Declarations
4-- Copyright : (c) Phil Freeman 2013
7-- Maintainer : Phil Freeman <paf31@cantab.net>
8-- Stability : experimental
13-----------------------------------------------------------------------------
15{-# LANGUAGE DeriveDataTypeable #-}
17module Language.PureScript.Declarations where
19import Language.PureScript.Values
20import Language.PureScript.Types
21import Language.PureScript.Names
22import Language.PureScript.Kinds
23import Language.PureScript.CodeGen.JS.AST
25import qualified Data.Data as D
27type Precedence = Integer
29data Associativity = Infixl | Infixr deriving (Show, D.Data, D.Typeable)
31data Fixity = Fixity Associativity Precedence deriving (Show, D.Data, D.Typeable)
33data Module = Module ProperName [Declaration] deriving (Show, D.Data, D.Typeable)
36 = DataDeclaration ProperName [String] [(ProperName, Maybe Type)]
37 | DataBindingGroupDeclaration [(ProperName, [String], [(ProperName, Maybe Type)])]
38 | TypeSynonymDeclaration ProperName [String] Type
39 | TypeDeclaration Ident Type
40 | ValueDeclaration Ident [[Binder]] (Maybe Guard) Value
41 | BindingGroupDeclaration [(Ident, Value)]
42 | ExternDeclaration Ident (Maybe JS) Type
43 | ExternDataDeclaration ProperName Kind
44 | FixityDeclaration Fixity String
45 | ImportDeclaration ModuleName (Maybe [Either Ident ProperName])
46 deriving (Show, D.Data, D.Typeable)
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