1{-# OPTIONS_GHC -Wall #-}
2{-# LANGUAGE OverloadedStrings #-}
3module AST.Expression.Source
19import qualified Data.ByteString as B
20import Data.Text (Text)
22import qualified AST.Binop as Binop
23import qualified AST.Literal as Literal
24import qualified AST.Pattern as Ptrn
25import qualified AST.Type as Type
26import qualified Elm.Name as N
27import qualified Reporting.Annotation as A
28import qualified Reporting.Region as R
35type Expr = A.Located Expr_
39 = Literal Literal.Literal
40 | Var (Maybe N.Name) N.Name
44 | Binops [(Expr, A.Located N.Name)] Expr
45 | Lambda Ptrn.Raw Expr
47 | If [(Expr, Expr)] Expr
48 | Let [A.Located Def] Expr
49 | Case Expr [(Ptrn.Raw, Expr)]
52 | Update (A.Located N.Name) [(A.Located N.Name, Expr)]
53 | Record [(A.Located N.Name, Expr)]
55 | Tuple Expr Expr [Expr]
56 | GLShader Text Text Literal.Shader
64 = Annotate Text Type.Raw
65 | Define Text [Ptrn.Raw] Expr
66 | Destruct Ptrn.Raw Expr
73type Decl = A.Located Decl_
77 = Union (A.Located N.Name) [A.Located N.Name] [(A.Located Text, [Type.Raw])]
78 | Alias (A.Located N.Name) [A.Located N.Name] Type.Raw
79 | Binop (A.Located N.Name) Binop.Associativity Binop.Precedence N.Name
80 | Port (A.Located N.Name) Type.Raw
82 | Annotation (A.Located N.Name) Type.Raw
83 | Definition (A.Located N.Name) [Ptrn.Raw] Expr
94 , _docs :: A.Located (Maybe B.ByteString)
95 , _exports :: Exposing
96 , _imports :: [Import]
103 { _import :: A.Located N.Name
104 , _alias :: Maybe N.Name
105 , _exposing :: Exposing
112 | Effects R.Region Manager
116 = Cmd (A.Located N.Name)
117 | Sub (A.Located N.Name)
118 | Fx (A.Located N.Name) (A.Located N.Name)
121defaultModule :: [Import] -> decls -> Module decls
122defaultModule imports decls =
123 let zero = R.Position 1 1 in
126 , _effects = NoEffects
127 , _docs = A.at zero zero Nothing
140 | Explicit ![A.Located Exposed]
145 | Upper !Text !Privacy
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