1
1
mirror of https://github.com/github/semantic.git synced 2024-12-22 22:31:36 +03:00

Add slice literal summary statements

This commit is contained in:
Rick Winfrey 2017-01-12 12:00:09 -08:00
parent 2563a26a8a
commit 0880b41fc6

View File

@ -217,6 +217,9 @@ toTermName source term = case unwrap term of
(S.FunctionCall{}, S.FunctionCall{}) -> toTermName' base <> "()." <> toTermName' element <> "()" (S.FunctionCall{}, S.FunctionCall{}) -> toTermName' base <> "()." <> toTermName' element <> "()"
(S.FunctionCall{}, _) -> toTermName' base <> "()." <> toTermName' element (S.FunctionCall{}, _) -> toTermName' base <> "()." <> toTermName' element
(_, S.FunctionCall{}) -> toTermName' base <> "[" <> toTermName' element <> "()" <> "]" (_, S.FunctionCall{}) -> toTermName' base <> "[" <> toTermName' element <> "()" <> "]"
(S.Indexed _, _) -> case category . extract $ base of
SliceTy -> termNameFromSource base <> toTermName' element
_ -> toTermName' base <> "[" <> toTermName' element <> "]"
(_, _) -> toTermName' base <> "[" <> toTermName' element <> "]" (_, _) -> toTermName' base <> "[" <> toTermName' element <> "]"
S.VarAssignment varId _ -> toTermName' varId S.VarAssignment varId _ -> toTermName' varId
S.VarDecl decl -> toTermName' decl S.VarDecl decl -> toTermName' decl
@ -422,7 +425,7 @@ instance HasCategory Category where
C.Negate -> "negate" C.Negate -> "negate"
C.Select -> "select statement" C.Select -> "select statement"
C.Go -> "go statement" C.Go -> "go statement"
C.Slice -> "slice expression" C.Slice -> "slice literal"
C.Defer -> "defer statement" C.Defer -> "defer statement"
C.TypeAssertion -> "type assertion statement" C.TypeAssertion -> "type assertion statement"
C.TypeConversion -> "type conversion expression" C.TypeConversion -> "type conversion expression"
@ -452,6 +455,9 @@ instance HasCategory Category where
C.TypeDecl -> "type declaration" C.TypeDecl -> "type declaration"
C.PointerTy -> "pointer type" C.PointerTy -> "pointer type"
C.FieldDecl -> "field declaration" C.FieldDecl -> "field declaration"
C.SliceTy -> "slice type"
C.Element -> "element"
C.Literal -> "literal"
instance HasField fields Category => HasCategory (SyntaxTerm leaf fields) where instance HasField fields Category => HasCategory (SyntaxTerm leaf fields) where
toCategoryName = toCategoryName . category . extract toCategoryName = toCategoryName . category . extract