-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathHsLit.hs
39 lines (34 loc) · 1.03 KB
/
HsLit.hs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
{-# OPTIONS_GHC -Wall #-}
{-# LANGUAGE TypeFamilies #-}
module HsLit where
import HsExtension
import Data.ByteString (ByteString)
import Dependencies
data HsLit x
= HsChar (XHsChar x) Char
| HsCharPrim (XHsCharPrim x) Char
| HsString (XHsString x) FastString
| HsStringPrim (XHsStringPrim x) ByteString
{- TTG-TODO
| HsInt (XHsInt x) IntegralLit
-}
| HsIntPrim (XHsIntPrim x) Integer
| HsWordPrim (XHsWordPrim x) Integer
| HsInt64Prim (XHsInt64Prim x) Integer
| HsWord64Prim (XHsWord64Prim x) Integer
{- TTG-TODO
| HsInteger (XHsInteger x) Integer Type
| HsRat (XHsRat x) FractionalLit Type
-}
| HsFloatPrim (XHsFloatPrim x) FractionalLit
| HsDoublePrim (XHsDoublePrim x) FractionalLit
| XLit (XXLit x)
data HsOverLit x
= OverLit (XOverLit x) OverLitVal
{- TTG-TODO (HsExpr p) -}
| XOverLit (XXOverLit x)
data OverLitVal
= HsIntegral !IntegralLit
| HsFractional !FractionalLit
| HsIsString {- TTG-TODO !SourceText -}
!FastString