packages feed

ace 0.0 → 0.1

raw patch · 4 files changed

+39/−4 lines, 4 filesdep −semigroups

Dependencies removed: semigroups

Files

ace.cabal view
@@ -1,5 +1,5 @@ name:                ace-version:             0.0+version:             0.1 synopsis:            Attempto Controlled English parser and printer description:         Attempto Controlled English is a formally defined unambiguous language which                      is a subset of the English language. This package provides a tokenizer,@@ -21,11 +21,10 @@ library   hs-source-dirs:    src/   ghc-options:       -Wall -O2-  exposed-modules:   ACE, ACE.Types.Syntax, ACE.Parsers, ACE.Tokenizer, ACE.Types.Tokens, ACE.Combinators+  exposed-modules:   ACE, ACE.Types.Syntax, ACE.Parsers, ACE.Tokenizer, ACE.Types.Tokens, ACE.Combinators, ACE.Types.Pretty, ACE.Pretty   build-depends:     attoparsec >= 0.11.1.0,                      parsec >= 3.1.5,                      data-default >= 0.5.3,-                     semigroups >= 0.12.2,                      text >= 0.11.2.0,                      base >= 4 && <5,                      bifunctors
+ src/ACE/Pretty.hs view
@@ -0,0 +1,14 @@+-- |++module ACE.Pretty+  (module ACE.Types.Pretty+  ,human)+  where++import ACE.Types.Pretty++import Data.Default++-- | Human-readable pretty printing settings.+human :: PrettySettings+human = def { prettyShowPrecedence = False }
+ src/ACE/Types/Pretty.hs view
@@ -0,0 +1,22 @@+-- | Pretty printing types and classes.++module ACE.Types.Pretty where++import Data.Default++-- | Pretty print a syntax tree node to a string.+class Pretty p where+  pretty :: PrettySettings -> p -> String++-- | Prints no string if nothing.+instance Pretty a => Pretty (Maybe a) where+  pretty s = maybe "" (pretty s)++-- | Settings used for pretty printing.+data PrettySettings = PrettySettings+  { prettyShowPrecedence :: Bool -- ^ Show precedence?+  }++-- | Precedence showing enabled by default.+instance Default PrettySettings where+  def = PrettySettings { prettyShowPrecedence = True }
src/ACE/Types/Syntax.hs view
@@ -9,7 +9,7 @@  import ACE.Pretty -import Data.Semigroup+import Data.Monoid import Data.Text (Text) import Prelude hiding (String)