Created
June 2, 2018 11:11
-
-
Save wz1000/f7879f1004c6b9a4bf9e1d52c4ed330b to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class C a where | |
f :: a -> Int | |
f = const 3 | |
main :: IO () | |
main = print $ fib 41 where | |
fib :: Int -> Int | |
fib 0 = 0 | |
fib 1 = 1 | |
fib n = fib (n-1) + fib (n-2) | |
Node SrcSpanPoint "" 1 1 NodeInfo {nodeAnnotations = [], nodeType = Nothing} | |
Node SrcSpanMultiLine 1 1 3 14 NodeInfo {nodeAnnotations = [("ClassDecl","TyClDecl")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 1 1 6, htkInfo = Just TkKeyword, htkDetails = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 1 7 8, htkInfo = Just TkIdentifier, htkDetails = Just (RtkVar $main$Main$C)} | |
Node SrcSpanOneLine 1 9 10 NodeInfo {nodeAnnotations = [("UserTyVar","HsTyVarBndr")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 1 9 10, htkInfo = Just TkIdentifier, htkDetails = Just (RtkBind $_in$a)} | |
HieToken {htkSpan = SrcSpanOneLine 1 11 16, htkInfo = Just TkKeyword, htkDetails = Nothing} | |
Node SrcSpanOneLine 2 3 16 NodeInfo {nodeAnnotations = [("ClassOpSig","Sig")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 2 3 4, htkInfo = Just TkIdentifier, htkDetails = Just (RtkVar $main$Main$f)} | |
HieToken {htkSpan = SrcSpanOneLine 2 5 7, htkInfo = Just TkGlyph, htkDetails = Nothing} | |
Node SrcSpanOneLine 2 8 16 NodeInfo {nodeAnnotations = [("HsFunTy","HsType")], nodeType = Nothing} | |
Node SrcSpanOneLine 2 8 9 NodeInfo {nodeAnnotations = [("HsTyVar","HsType")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 2 8 9, htkInfo = Just TkIdentifier, htkDetails = Just (RtkVar $_in$a)} | |
HieToken {htkSpan = SrcSpanOneLine 2 10 12, htkInfo = Just TkGlyph, htkDetails = Nothing} | |
Node SrcSpanOneLine 2 13 16 NodeInfo {nodeAnnotations = [("HsTyVar","HsType")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 2 13 16, htkInfo = Just TkIdentifier, htkDetails = Just (RtkVar $ghc-prim$GHC.Types$Int)} | |
Node SrcSpanOneLine 3 3 14 NodeInfo {nodeAnnotations = [("AbsBinds","HsBindLR"),("AbsBinds","HsBindLR"),("FunBind","HsBindLR"),("Match","Match"),("FunBind","HsBindLR"),("Match","Match")], nodeType = Just a -> Int} | |
HieToken {htkSpan = SrcSpanOneLine 3 3 4, htkInfo = Just TkIdentifier, htkDetails = Just (RtkVar $main$Main$f)} | |
Node SrcSpanOneLine 3 5 14 NodeInfo {nodeAnnotations = [("GRHS","GRHS"),("GRHS","GRHS")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 3 5 6, htkInfo = Just TkGlyph, htkDetails = Nothing} | |
Node SrcSpanOneLine 3 7 14 NodeInfo {nodeAnnotations = [("HsApp","HsExpr"),("HsApp","HsExpr")], nodeType = Just a -> Int} | |
Node SrcSpanOneLine 3 7 12 NodeInfo {nodeAnnotations = [("HsWrap","HsExpr"),("HsVar","HsExpr")], nodeType = Just Int -> a -> Int} | |
HieToken {htkSpan = SrcSpanOneLine 3 7 12, htkInfo = Just TkIdentifier, htkDetails = Just (RtkVar $base$GHC.Base$const)} | |
Node SrcSpanOneLine 3 13 14 NodeInfo {nodeAnnotations = [("HsOverLit","HsExpr"),("HsOverLit","HsExpr")], nodeType = Just Int} | |
HieToken {htkSpan = SrcSpanOneLine 3 13 14, htkInfo = Just TkNumber, htkDetails = Nothing} | |
Node SrcSpanOneLine 5 1 14 NodeInfo {nodeAnnotations = [("TypeSig","Sig")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 5 1 5, htkInfo = Just TkIdentifier, htkDetails = Just (RtkVar $main$Main$main)} | |
HieToken {htkSpan = SrcSpanOneLine 5 6 8, htkInfo = Just TkGlyph, htkDetails = Nothing} | |
Node SrcSpanOneLine 5 9 14 NodeInfo {nodeAnnotations = [("HsAppTy","HsType")], nodeType = Nothing} | |
Node SrcSpanOneLine 5 9 11 NodeInfo {nodeAnnotations = [("HsTyVar","HsType")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 5 9 11, htkInfo = Just TkIdentifier, htkDetails = Just (RtkVar $ghc-prim$GHC.Types$IO)} | |
Node SrcSpanOneLine 5 12 14 NodeInfo {nodeAnnotations = [("HsTupleTy","HsType")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 5 12 13, htkInfo = Just TkSpecial, htkDetails = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 5 13 14, htkInfo = Just TkSpecial, htkDetails = Nothing} | |
Node SrcSpanMultiLine 6 1 10 33 NodeInfo {nodeAnnotations = [("AbsBinds","HsBindLR"),("FunBind","HsBindLR"),("Match","Match"),("FunBind","HsBindLR"),("Match","Match")], nodeType = Just IO ()} | |
HieToken {htkSpan = SrcSpanOneLine 6 1 5, htkInfo = Just TkIdentifier, htkDetails = Just (RtkDecl $main$Main$main)} | |
Node SrcSpanMultiLine 6 6 10 33 NodeInfo {nodeAnnotations = [("GRHS","GRHS"),("GRHS","GRHS")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 6 6 7, htkInfo = Just TkGlyph, htkDetails = Nothing} | |
Node SrcSpanOneLine 6 8 22 NodeInfo {nodeAnnotations = [("OpApp","HsExpr"),("OpApp","HsExpr")], nodeType = Just IO ()} | |
Node SrcSpanOneLine 6 8 13 NodeInfo {nodeAnnotations = [("HsWrap","HsExpr"),("HsVar","HsExpr")], nodeType = Just Int -> IO ()} | |
HieToken {htkSpan = SrcSpanOneLine 6 8 13, htkInfo = Just TkIdentifier, htkDetails = Just (RtkVar $base$System.IO$print)} | |
Node SrcSpanOneLine 6 14 15 NodeInfo {nodeAnnotations = [("HsWrap","HsExpr"),("HsVar","HsExpr")], nodeType = Just (Int -> IO ()) -> Int -> IO ()} | |
HieToken {htkSpan = SrcSpanOneLine 6 14 15, htkInfo = Just TkOperator, htkDetails = Just (RtkVar $base$GHC.Base$$)} | |
Node SrcSpanOneLine 6 16 22 NodeInfo {nodeAnnotations = [("HsApp","HsExpr"),("HsApp","HsExpr")], nodeType = Just Int} | |
Node SrcSpanOneLine 6 16 19 NodeInfo {nodeAnnotations = [("HsVar","HsExpr"),("HsVar","HsExpr")], nodeType = Just Int -> Int} | |
HieToken {htkSpan = SrcSpanOneLine 6 16 19, htkInfo = Just TkIdentifier, htkDetails = Just (RtkVar $_in$fib)} | |
Node SrcSpanOneLine 6 20 22 NodeInfo {nodeAnnotations = [("HsOverLit","HsExpr"),("HsOverLit","HsExpr")], nodeType = Just Int} | |
HieToken {htkSpan = SrcSpanOneLine 6 20 22, htkInfo = Just TkNumber, htkDetails = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 6 23 28, htkInfo = Just TkKeyword, htkDetails = Nothing} | |
Node SrcSpanMultiLine 7 3 10 33 NodeInfo {nodeAnnotations = [("HsValBinds","HsLocalBindsLR"),("HsValBinds","HsLocalBindsLR")], nodeType = Nothing} | |
Node SrcSpanOneLine 7 3 20 NodeInfo {nodeAnnotations = [("TypeSig","Sig"),("TypeSig","Sig")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 7 3 6, htkInfo = Just TkIdentifier, htkDetails = Just (RtkVar $_in$fib)} | |
HieToken {htkSpan = SrcSpanOneLine 7 7 9, htkInfo = Just TkGlyph, htkDetails = Nothing} | |
Node SrcSpanOneLine 7 10 20 NodeInfo {nodeAnnotations = [("HsFunTy","HsType"),("HsFunTy","HsType")], nodeType = Nothing} | |
Node SrcSpanOneLine 7 10 13 NodeInfo {nodeAnnotations = [("HsTyVar","HsType"),("HsTyVar","HsType")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 7 10 13, htkInfo = Just TkIdentifier, htkDetails = Just (RtkVar $ghc-prim$GHC.Types$Int)} | |
HieToken {htkSpan = SrcSpanOneLine 7 14 16, htkInfo = Just TkGlyph, htkDetails = Nothing} | |
Node SrcSpanOneLine 7 17 20 NodeInfo {nodeAnnotations = [("HsTyVar","HsType"),("HsTyVar","HsType")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 7 17 20, htkInfo = Just TkIdentifier, htkDetails = Just (RtkVar $ghc-prim$GHC.Types$Int)} | |
Node SrcSpanMultiLine 8 3 10 33 NodeInfo {nodeAnnotations = [("FunBind","HsBindLR"),("AbsBinds","HsBindLR"),("FunBind","HsBindLR")], nodeType = Just Int -> Int} | |
Node SrcSpanOneLine 8 3 12 NodeInfo {nodeAnnotations = [("Match","Match"),("Match","Match")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 8 3 6, htkInfo = Just TkIdentifier, htkDetails = Just (RtkBind $_in$fib)} | |
Node SrcSpanOneLine 8 7 8 NodeInfo {nodeAnnotations = [("NPat","Pat"),("NPat","Pat")], nodeType = Just Int} | |
HieToken {htkSpan = SrcSpanOneLine 8 7 8, htkInfo = Just TkNumber, htkDetails = Nothing} | |
Node SrcSpanOneLine 8 9 12 NodeInfo {nodeAnnotations = [("GRHS","GRHS"),("GRHS","GRHS")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 8 9 10, htkInfo = Just TkGlyph, htkDetails = Nothing} | |
Node SrcSpanOneLine 8 11 12 NodeInfo {nodeAnnotations = [("HsOverLit","HsExpr"),("HsOverLit","HsExpr")], nodeType = Just Int} | |
HieToken {htkSpan = SrcSpanOneLine 8 11 12, htkInfo = Just TkNumber, htkDetails = Nothing} | |
Node SrcSpanOneLine 9 3 12 NodeInfo {nodeAnnotations = [("Match","Match"),("Match","Match")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 9 3 6, htkInfo = Just TkIdentifier, htkDetails = Nothing} | |
Node SrcSpanOneLine 9 7 8 NodeInfo {nodeAnnotations = [("NPat","Pat"),("NPat","Pat")], nodeType = Just Int} | |
HieToken {htkSpan = SrcSpanOneLine 9 7 8, htkInfo = Just TkNumber, htkDetails = Nothing} | |
Node SrcSpanOneLine 9 9 12 NodeInfo {nodeAnnotations = [("GRHS","GRHS"),("GRHS","GRHS")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 9 9 10, htkInfo = Just TkGlyph, htkDetails = Nothing} | |
Node SrcSpanOneLine 9 11 12 NodeInfo {nodeAnnotations = [("HsOverLit","HsExpr"),("HsOverLit","HsExpr")], nodeType = Just Int} | |
HieToken {htkSpan = SrcSpanOneLine 9 11 12, htkInfo = Just TkNumber, htkDetails = Nothing} | |
Node SrcSpanOneLine 10 3 33 NodeInfo {nodeAnnotations = [("Match","Match"),("Match","Match")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 10 3 6, htkInfo = Just TkIdentifier, htkDetails = Nothing} | |
Node SrcSpanOneLine 10 7 8 NodeInfo {nodeAnnotations = [("VarPat","Pat"),("VarPat","Pat")], nodeType = Just Int} | |
HieToken {htkSpan = SrcSpanOneLine 10 7 8, htkInfo = Just TkIdentifier, htkDetails = Just (RtkBind $_in$n)} | |
Node SrcSpanOneLine 10 9 33 NodeInfo {nodeAnnotations = [("GRHS","GRHS"),("GRHS","GRHS")], nodeType = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 10 9 10, htkInfo = Just TkGlyph, htkDetails = Nothing} | |
Node SrcSpanOneLine 10 11 33 NodeInfo {nodeAnnotations = [("OpApp","HsExpr"),("OpApp","HsExpr")], nodeType = Just Int} | |
Node SrcSpanOneLine 10 11 20 NodeInfo {nodeAnnotations = [("HsApp","HsExpr"),("HsApp","HsExpr")], nodeType = Just Int} | |
Node SrcSpanOneLine 10 11 14 NodeInfo {nodeAnnotations = [("HsVar","HsExpr"),("HsVar","HsExpr")], nodeType = Just Int -> Int} | |
HieToken {htkSpan = SrcSpanOneLine 10 11 14, htkInfo = Just TkIdentifier, htkDetails = Just (RtkVar $_in$fib)} | |
Node SrcSpanOneLine 10 15 20 NodeInfo {nodeAnnotations = [("HsPar","HsExpr"),("HsPar","HsExpr")], nodeType = Just Int} | |
HieToken {htkSpan = SrcSpanOneLine 10 15 16, htkInfo = Just TkSpecial, htkDetails = Nothing} | |
Node SrcSpanOneLine 10 16 19 NodeInfo {nodeAnnotations = [("OpApp","HsExpr"),("OpApp","HsExpr")], nodeType = Just Int} | |
Node SrcSpanOneLine 10 16 17 NodeInfo {nodeAnnotations = [("HsVar","HsExpr"),("HsVar","HsExpr")], nodeType = Just Int} | |
HieToken {htkSpan = SrcSpanOneLine 10 16 17, htkInfo = Just TkIdentifier, htkDetails = Just (RtkVar $_in$n)} | |
Node SrcSpanOneLine 10 17 18 NodeInfo {nodeAnnotations = [("HsWrap","HsExpr"),("HsVar","HsExpr")], nodeType = Just Int -> Int -> Int} | |
HieToken {htkSpan = SrcSpanOneLine 10 17 18, htkInfo = Just TkGlyph, htkDetails = Just (RtkVar $base$GHC.Num$-)} | |
Node SrcSpanOneLine 10 18 19 NodeInfo {nodeAnnotations = [("HsOverLit","HsExpr"),("HsOverLit","HsExpr")], nodeType = Just Int} | |
HieToken {htkSpan = SrcSpanOneLine 10 18 19, htkInfo = Just TkNumber, htkDetails = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 10 19 20, htkInfo = Just TkSpecial, htkDetails = Nothing} | |
Node SrcSpanOneLine 10 21 22 NodeInfo {nodeAnnotations = [("HsWrap","HsExpr"),("HsVar","HsExpr")], nodeType = Just Int -> Int -> Int} | |
HieToken {htkSpan = SrcSpanOneLine 10 21 22, htkInfo = Just TkOperator, htkDetails = Just (RtkVar $base$GHC.Num$+)} | |
Node SrcSpanOneLine 10 24 33 NodeInfo {nodeAnnotations = [("HsApp","HsExpr"),("HsApp","HsExpr")], nodeType = Just Int} | |
Node SrcSpanOneLine 10 24 27 NodeInfo {nodeAnnotations = [("HsVar","HsExpr"),("HsVar","HsExpr")], nodeType = Just Int -> Int} | |
HieToken {htkSpan = SrcSpanOneLine 10 24 27, htkInfo = Just TkIdentifier, htkDetails = Just (RtkVar $_in$fib)} | |
Node SrcSpanOneLine 10 28 33 NodeInfo {nodeAnnotations = [("HsPar","HsExpr"),("HsPar","HsExpr")], nodeType = Just Int} | |
HieToken {htkSpan = SrcSpanOneLine 10 28 29, htkInfo = Just TkSpecial, htkDetails = Nothing} | |
Node SrcSpanOneLine 10 29 32 NodeInfo {nodeAnnotations = [("OpApp","HsExpr"),("OpApp","HsExpr")], nodeType = Just Int} | |
Node SrcSpanOneLine 10 29 30 NodeInfo {nodeAnnotations = [("HsVar","HsExpr"),("HsVar","HsExpr")], nodeType = Just Int} | |
HieToken {htkSpan = SrcSpanOneLine 10 29 30, htkInfo = Just TkIdentifier, htkDetails = Just (RtkVar $_in$n)} | |
Node SrcSpanOneLine 10 30 31 NodeInfo {nodeAnnotations = [("HsVar","HsExpr"),("HsWrap","HsExpr")], nodeType = Just Int -> Int -> Int} | |
HieToken {htkSpan = SrcSpanOneLine 10 30 31, htkInfo = Just TkGlyph, htkDetails = Just (RtkVar $base$GHC.Num$-)} | |
Node SrcSpanOneLine 10 31 32 NodeInfo {nodeAnnotations = [("HsOverLit","HsExpr"),("HsOverLit","HsExpr")], nodeType = Just Int} | |
HieToken {htkSpan = SrcSpanOneLine 10 31 32, htkInfo = Just TkNumber, htkDetails = Nothing} | |
HieToken {htkSpan = SrcSpanOneLine 10 32 33, htkInfo = Just TkSpecial, htkDetails = Nothing} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment