1{-# OPTIONS_GHC -Wall #-}
3 ( Expr, Expr_(..), VarType(..)
5 , Pattern, Pattern_(..)
23import Data.Name (Name)
24import qualified Data.Utf8 as Utf8
26import qualified AST.Utils.Binop as Binop
27import qualified AST.Utils.Shader as Shader
28import qualified Reporting.Annotation as A
35type Expr = A.Located Expr_
42 | Float (Utf8.Under256 Float)
44 | VarQual VarType Name Name
48 | Binops [(Expr, A.Located Name)] Expr
49 | Lambda [Pattern] Expr
51 | If [(Expr, Expr)] Expr
52 | Let [A.Located Def] Expr
53 | Case Expr [(Pattern, Expr)]
55 | Access Expr (A.Located Name)
56 | Update (A.Located Name) [(A.Located Name, Expr)]
57 | Record [(A.Located Name, Expr)]
59 | Tuple Expr Expr [Expr]
60 | Shader Shader.Source Shader.Types
63data VarType = LowVar | CapVar
71 = Define (A.Located Name) [Pattern] Expr (Maybe Type)
72 | Destruct Pattern Expr
79type Pattern = A.Located Pattern_
85 | PRecord [A.Located Name]
86 | PAlias Pattern (A.Located Name)
88 | PTuple Pattern Pattern [Pattern]
89 | PCtor A.Region Name [Pattern]
90 | PCtorQual A.Region Name Name [Pattern]
92 | PCons Pattern Pattern
109 | TType A.Region Name [Type]
110 | TTypeQual A.Region Name Name [Type]
111 | TRecord [(A.Located Name, Type)] (Maybe (A.Located Name))
113 | TTuple Type Type [Type]
123 , _exports :: A.Located Exposing
124 , _imports :: [Import]
125 , _values :: [A.Located Value]
126 , _unions :: [A.Located Union]
127 , _aliases :: [A.Located Alias]
128 , _binops :: [A.Located Binop]
129 , _effects :: Effects
135 { _import :: A.Located Name
136 , _alias :: Maybe Name
137 , _exposing :: Exposing
141data Value = Value (A.Located Name) [Pattern] Expr (Maybe Type)
142data Union = Union (A.Located Name) [A.Located Name] [(A.Located Name, [Type])]
143data Alias = Alias (A.Located Name) [A.Located Name] Type
144data Binop = Binop Name Binop.Associativity Binop.Precedence Name
145data Port = Port (A.Located Name) Type
151 | Manager A.Region Manager
155 = Cmd (A.Located Name)
156 | Sub (A.Located Name)
157 | Fx (A.Located Name) (A.Located Name)
166 | Explicit [A.Located Exposed]
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