sourcephile
/
git
/
haskell
/
symantic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
728bff1
)
Update to lastest symantic-document
master
author
Julien Moutinho
<julm+symantic@autogeree.net>
Fri, 12 Jul 2019 21:17:08 +0000
(21:17 +0000)
committer
Julien Moutinho
<julm+symantic@autogeree.net>
Fri, 12 Jul 2019 21:25:18 +0000
(21:25 +0000)
symantic-lib/test/HUnit/Foldable.hs
patch
|
blob
|
history
symantic/Language/Symantic/Typing/Document.hs
patch
|
blob
|
history
symantic/Language/Symantic/Typing/Show.hs
patch
|
blob
|
history
symantic/symantic.cabal
patch
|
blob
|
history
diff --git
a/symantic-lib/test/HUnit/Foldable.hs
b/symantic-lib/test/HUnit/Foldable.hs
index b9de41a92dde59425456eb222ea605d07fa33ccf..2c97213f3c827325c212133af88bb329498e1666 100644
(file)
--- a/
symantic-lib/test/HUnit/Foldable.hs
+++ b/
symantic-lib/test/HUnit/Foldable.hs
@@
-2,7
+2,6
@@
module HUnit.Foldable where
import Test.Tasty
module HUnit.Foldable where
import Test.Tasty
-import Control.Applicative (Applicative)
import Data.Either (Either(..))
import Data.Foldable (Foldable)
import Data.Int (Int)
import Data.Either (Either(..))
import Data.Foldable (Foldable)
import Data.Int (Int)
diff --git
a/symantic/Language/Symantic/Typing/Document.hs
b/symantic/Language/Symantic/Typing/Document.hs
index 468a1fe5df6866a9191c9f5f643b44237f570009..76ab450dd09208402c62e9c446f4c0f2d4531d79 100644
(file)
--- a/
symantic/Language/Symantic/Typing/Document.hs
+++ b/
symantic/Language/Symantic/Typing/Document.hs
@@
-11,7
+11,6
@@
import Data.Semigroup (Semigroup(..))
import Data.Set (Set)
import Data.Text (Text)
import Data.Typeable
import Data.Set (Set)
import Data.Text (Text)
import Data.Typeable
-import Symantic.Document (DocFrom(..))
import qualified Data.List as L
import qualified Data.Map.Strict as Map
import qualified Data.Set as Set
import qualified Data.List as L
import qualified Data.Map.Strict as Map
import qualified Data.Set as Set
@@
-48,8
+47,8
@@
config_Doc_Type =
docType ::
forall src vs t d.
Semigroup d =>
docType ::
forall src vs t d.
Semigroup d =>
- DocFrom (Doc.Word Char) d =>
- DocFrom (Doc.Word Text) d =>
+ Doc
.
From (Doc.Word Char) d =>
+ Doc
.
From (Doc.Word Text) d =>
Doc.Spaceable d =>
Doc.Colorable16 d =>
Config_Doc_Type ->
Doc.Spaceable d =>
Doc.Colorable16 d =>
Config_Doc_Type ->
@@
-69,7
+68,7
@@
docType conf@Config_Doc_Type{config_Doc_Type_imports=imps} pr ty =
let iv = indexVar v in
case Map.lookup iv v2n of
Nothing -> error "[BUG] docType: variable name missing"
let iv = indexVar v in
case Map.lookup iv v2n of
Nothing -> error "[BUG] docType: variable name missing"
- Just n ->
docF
rom (Doc.Word n)
+ Just n ->
Doc.f
rom (Doc.Word n)
-- Const
go _v2n _po (TyConst _src _vs c@Const{}) =
(if isNameTyOp c then docParen else id) $
-- Const
go _v2n _po (TyConst _src _vs c@Const{}) =
(if isNameTyOp c then docParen else id) $
@@
-77,7
+76,7
@@
docType conf@Config_Doc_Type{config_Doc_Type_imports=imps} pr ty =
-- [] Const
go v2n _po (TyApp _ (TyConst _ _ f@Const{}) a)
| Just HRefl <- proj_ConstKi @(K []) @[] f =
-- [] Const
go v2n _po (TyApp _ (TyConst _ _ f@Const{}) a)
| Just HRefl <- proj_ConstKi @(K []) @[] f =
- Doc.between (
docFrom (Doc.Word '[')) (docF
rom (Doc.Word ']')) $
+ Doc.between (
Doc.from (Doc.Word '[')) (Doc.f
rom (Doc.Word ']')) $
go v2n (infixB SideL 0, SideL) a
-- Infix Const
go v2n po (TyApp _ (TyApp _ (TyConst _ _ f@Const{}) a) b)
go v2n (infixB SideL 0, SideL) a
-- Infix Const
go v2n po (TyApp _ (TyApp _ (TyConst _ _ f@Const{}) a) b)
@@
-92,7
+91,7
@@
docType conf@Config_Doc_Type{config_Doc_Type_imports=imps} pr ty =
go v2n (op, SideR) b
where
d_op :: Text -> d
go v2n (op, SideR) b
where
d_op :: Text -> d
- d_op = Doc.yellower .
docF
rom . Doc.Word
+ d_op = Doc.yellower .
Doc.f
rom . Doc.Word
prettyConst :: forall k c. Const src (c::k) -> d
prettyConst c | Just HRefl <- proj_ConstKi @(K (#>)) @(#>) c = Doc.space <> d_op "=>" <> Doc.space
prettyConst c | Just HRefl <- proj_ConstKi @(K (#)) @(#) c = d_op "," <> Doc.space
prettyConst :: forall k c. Const src (c::k) -> d
prettyConst c | Just HRefl <- proj_ConstKi @(K (#>)) @(#>) c = Doc.space <> d_op "=>" <> Doc.space
prettyConst c | Just HRefl <- proj_ConstKi @(K (#)) @(#) c = d_op "," <> Doc.space
@@
-176,21
+175,21
@@
poolNames =
docTypes ::
forall src vs ts d.
Semigroup d =>
docTypes ::
forall src vs ts d.
Semigroup d =>
- DocFrom (Doc.Word Char) d =>
- DocFrom (Doc.Word Text) d =>
+ Doc
.
From (Doc.Word Char) d =>
+ Doc
.
From (Doc.Word Text) d =>
Doc.Spaceable d =>
Doc.Colorable16 d =>
Config_Doc_Type ->
Types src vs ts -> d
docTypes conf tys =
Doc.Spaceable d =>
Doc.Colorable16 d =>
Config_Doc_Type ->
Types src vs ts -> d
docTypes conf tys =
- d_op (
docFrom (Doc.Word '[')) <> go tys <> d_op (docF
rom (Doc.Word ']'))
+ d_op (
Doc.from (Doc.Word '[')) <> go tys <> d_op (Doc.f
rom (Doc.Word ']'))
where
d_op = Doc.yellower
go :: forall xs. Types src vs xs -> d
go TypesZ = mempty
go (TypesS t0 (TypesS t1 ts)) =
docType conf 10 t0 <>
where
d_op = Doc.yellower
go :: forall xs. Types src vs xs -> d
go TypesZ = mempty
go (TypesS t0 (TypesS t1 ts)) =
docType conf 10 t0 <>
- d_op (
docF
rom (Doc.Word ',')) <> Doc.space <>
+ d_op (
Doc.f
rom (Doc.Word ',')) <> Doc.space <>
docType conf 10 t1 <>
go ts
go (TypesS t ts) = docType conf 10 t <> go ts
docType conf 10 t1 <>
go ts
go (TypesS t ts) = docType conf 10 t <> go ts
@@
-198,8
+197,8
@@
docTypes conf tys =
-- * Document 'Const'
docConst ::
Monoid d =>
-- * Document 'Const'
docConst ::
Monoid d =>
- DocFrom (Doc.Word Char) d =>
- DocFrom (Doc.Word Text) d =>
+ Doc
.
From (Doc.Word Char) d =>
+ Doc
.
From (Doc.Word Text) d =>
Imports NameTy -> Const src c -> d
docConst imps c@Const{} =
docMod docNameTy $
Imports NameTy -> Const src c -> d
docConst imps c@Const{} =
docMod docNameTy $
@@
-210,31
+209,31
@@
docConst imps c@Const{} =
mn@(m `Mod` n) = nameTyOf c
-- * Document 'NameTy'
mn@(m `Mod` n) = nameTyOf c
-- * Document 'NameTy'
-docNameTy :: DocFrom (Doc.Word Text) d => NameTy -> d
-docNameTy (NameTy t) =
docF
rom (Doc.Word t)
+docNameTy :: Doc
.
From (Doc.Word Text) d => NameTy -> d
+docNameTy (NameTy t) =
Doc.f
rom (Doc.Word t)
-- * Document 'Mod'
docMod ::
Monoid d =>
-- * Document 'Mod'
docMod ::
Monoid d =>
- DocFrom (Doc.Word Char) d =>
- DocFrom (Doc.Word Text) d =>
+ Doc
.
From (Doc.Word Char) d =>
+ Doc
.
From (Doc.Word Text) d =>
(a -> d) -> Mod a -> d
docMod a2d ([] `Mod` a) = a2d a
(a -> d) -> Mod a -> d
docMod a2d ([] `Mod` a) = a2d a
-docMod a2d (m `Mod` a) = docPathMod m <> (
docF
rom (Doc.Word '.')) <> a2d a
+docMod a2d (m `Mod` a) = docPathMod m <> (
Doc.f
rom (Doc.Word '.')) <> a2d a
-- * Document 'PathMod'
docPathMod ::
Monoid d =>
-- * Document 'PathMod'
docPathMod ::
Monoid d =>
- DocFrom (Doc.Word Char) d =>
- DocFrom (Doc.Word Text) d =>
+ Doc
.
From (Doc.Word Char) d =>
+ Doc
.
From (Doc.Word Text) d =>
PathMod -> d
docPathMod (p::PathMod) =
mconcat $
PathMod -> d
docPathMod (p::PathMod) =
mconcat $
- L.intersperse (
docF
rom (Doc.Word '.')) $
- (\(NameMod n) ->
docF
rom (Doc.Word n)) <$> p
+ L.intersperse (
Doc.f
rom (Doc.Word '.')) $
+ (\(NameMod n) ->
Doc.f
rom (Doc.Word n)) <$> p
-docParen :: Doc.Spaceable d => DocFrom (Doc.Word Char) d => d -> d
-docParen = Doc.between (
docFrom (Doc.Word '(')) (docF
rom (Doc.Word ')'))
+docParen :: Doc.Spaceable d => Doc
.
From (Doc.Word Char) d => d -> d
+docParen = Doc.between (
Doc.from (Doc.Word '(')) (Doc.f
rom (Doc.Word ')'))
{-
docModules ::
{-
docModules ::
diff --git
a/symantic/Language/Symantic/Typing/Show.hs
b/symantic/Language/Symantic/Typing/Show.hs
index 0d6021603b4576045a021d701ad906a809556b69..d59a1523e35955c648ff31a76edc21e615b69c22 100644
(file)
--- a/
symantic/Language/Symantic/Typing/Show.hs
+++ b/
symantic/Language/Symantic/Typing/Show.hs
@@
-11,12
+11,11
@@
import Language.Symantic.Typing.Type
import Language.Symantic.Typing.Module
import Language.Symantic.Typing.Document
import Language.Symantic.Typing.Module
import Language.Symantic.Typing.Document
-stringDocTerm :: Doc.Plain
Text (Doc.Plain TLB.Builder)
-> String
+stringDocTerm :: Doc.Plain
TLB.Builder
-> String
stringDocTerm =
TL.unpack .
TLB.toLazyText .
stringDocTerm =
TL.unpack .
TLB.toLazyText .
- Doc.runPlain .
- Doc.runPlainText
+ Doc.runPlain
showType :: Config_Doc_Type -> Type src vs t -> String
showType conf ty = stringDocTerm $ docType conf 0 ty
showType :: Config_Doc_Type -> Type src vs t -> String
showType conf ty = stringDocTerm $ docType conf 0 ty
diff --git
a/symantic/symantic.cabal
b/symantic/symantic.cabal
index efc4198fa6651e5c6317a99ce7c93a3c48b773fc..7b7a71632d5a5ccd6363d9eb486c4ad04eb4021c 100644
(file)
--- a/
symantic/symantic.cabal
+++ b/
symantic/symantic.cabal
@@
-2,7
+2,7
@@
name: symantic
-- PVP: +-+------- breaking API changes
-- | | +----- non-breaking API additions
-- | | | +--- code changes with no API change
-- PVP: +-+------- breaking API changes
-- | | +----- non-breaking API additions
-- | | | +--- code changes with no API change
-version: 6.3.
3.20190614
+version: 6.3.
4.20190712
synopsis: Library for Typed Tagless-Final Higher-Order Composable DSL
description: This is an experimental library for composing, parsing,
typing, compiling, transforming and interpreting
synopsis: Library for Typed Tagless-Final Higher-Order Composable DSL
description: This is an experimental library for composing, parsing,
typing, compiling, transforming and interpreting
@@
-82,7
+82,7
@@
Library
-fhide-source-paths
build-depends:
symantic-grammar
-fhide-source-paths
build-depends:
symantic-grammar
- , symantic-document >= 1.
0
+ , symantic-document >= 1.
5
, base >= 4.6 && < 5
, containers >= 0.5
, mono-traversable >= 1.0
, base >= 4.6 && < 5
, containers >= 0.5
, mono-traversable >= 1.0