syntactic 3.6.1 → 3.6.2
raw patch · 4 files changed
+12/−6 lines, 4 filesdep ~tree-view
Dependency ranges changed: tree-view
Files
- src/Language/Syntactic/Decoration.hs +4/−3
- src/Language/Syntactic/Functional.hs +3/−0
- src/Language/Syntactic/Interpretation.hs +3/−1
- syntactic.cabal +2/−2
src/Language/Syntactic/Decoration.hs view
@@ -131,11 +131,12 @@ writeHtmlDecorWith :: forall info sym a. (StringTree sym) => (forall b. info b -> String) -> FilePath -> ASTF (sym :&: info) a -> IO ()-writeHtmlDecorWith showInfo file a = writeHtmlTree file $ mkTree [] a+writeHtmlDecorWith showInfo file a = writeHtmlTree Nothing file $ mkTree [] a where mkTree :: [Tree NodeInfo] -> AST (sym :&: info) sig -> Tree NodeInfo- mkTree args (f :$ a) = mkTree (mkTree [] a : args) f- mkTree args (Sym (expr :&: info)) = Node (NodeInfo (renderSym expr) (showInfo info)) args+ mkTree args (f :$ a) = mkTree (mkTree [] a : args) f+ mkTree args (Sym (expr :&: info)) =+ Node (NodeInfo InitiallyExpanded (renderSym expr) (showInfo info)) args -- | Make a smart constructor of a symbol. 'smartSymDecor' has any type of the -- form:
src/Language/Syntactic/Functional.hs view
@@ -478,6 +478,9 @@ -- bake in `Typeable` here. A more flexible solution would be to parameterize -- `Remon` on the constraint. + -- Note that `Remon` can be seen as a variant of the codensity monad:+ -- <https://hackage.haskell.org/package/kan-extensions/docs/Control-Monad-Codensity.html>+ instance Applicative (Remon sym m) where pure a = Remon $ pure a
src/Language/Syntactic/Interpretation.hs view
@@ -191,7 +191,9 @@ -- | Write a syntax tree to an HTML file with foldable nodes writeHtmlAST :: StringTree sym => FilePath -> ASTF sym a -> IO ()-writeHtmlAST file = writeHtmlTree file . fmap (\n -> NodeInfo n "") . stringTree+writeHtmlAST file+ = writeHtmlTree Nothing file+ . fmap (\n -> NodeInfo InitiallyExpanded n "") . stringTree
syntactic.cabal view
@@ -1,5 +1,5 @@ Name: syntactic-Version: 3.6.1+Version: 3.6.2 Synopsis: Generic representation and manipulation of abstract syntax Description: The library provides a generic representation of type-indexed abstract syntax trees (or indexed data types in general). It also permits the definition of open syntax@@ -84,7 +84,7 @@ deepseq, mtl >= 2 && < 3, syb,- tree-view+ tree-view >= 0.5 if impl(ghc < 7.10) build-depends: base-orphans