Skip to content

Commit

Permalink
improvement in ast-gen API
Browse files Browse the repository at this point in the history
  • Loading branch information
nboldi committed Nov 1, 2016
1 parent 4668cdb commit dd9c578
Show file tree
Hide file tree
Showing 3 changed files with 56 additions and 46 deletions.
26 changes: 26 additions & 0 deletions src/ast-gen/Language/Haskell/Tools/AST/Gen.hs
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
-- | Public interface for the modules that can be used to generate parts the AST.
module Language.Haskell.Tools.AST.Gen
( module Language.Haskell.Tools.AST.Gen.Modules
, module Language.Haskell.Tools.AST.Gen.Decls
, module Language.Haskell.Tools.AST.Gen.Binds
, module Language.Haskell.Tools.AST.Gen.Types
, module Language.Haskell.Tools.AST.Gen.Kinds
, module Language.Haskell.Tools.AST.Gen.Exprs
, module Language.Haskell.Tools.AST.Gen.Stmts
, module Language.Haskell.Tools.AST.Gen.Literals
, module Language.Haskell.Tools.AST.Gen.Patterns
, module Language.Haskell.Tools.AST.Gen.Names
, module Language.Haskell.Tools.AST.Gen.TH
) where

import Language.Haskell.Tools.AST.Gen.Modules
import Language.Haskell.Tools.AST.Gen.Decls
import Language.Haskell.Tools.AST.Gen.Binds
import Language.Haskell.Tools.AST.Gen.Types
import Language.Haskell.Tools.AST.Gen.Kinds
import Language.Haskell.Tools.AST.Gen.Exprs
import Language.Haskell.Tools.AST.Gen.Stmts
import Language.Haskell.Tools.AST.Gen.Literals
import Language.Haskell.Tools.AST.Gen.Patterns
import Language.Haskell.Tools.AST.Gen.Names
import Language.Haskell.Tools.AST.Gen.TH
26 changes: 26 additions & 0 deletions src/ast-gen/Language/Haskell/Tools/AST/Match.hs
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
-- | Public interface for the modules that can be used to pattern match on the AST.
module Language.Haskell.Tools.AST.Match
( module Language.Haskell.Tools.AST.Match.Modules
, module Language.Haskell.Tools.AST.Match.Decls
, module Language.Haskell.Tools.AST.Match.Binds
, module Language.Haskell.Tools.AST.Match.Types
, module Language.Haskell.Tools.AST.Match.Kinds
, module Language.Haskell.Tools.AST.Match.Exprs
, module Language.Haskell.Tools.AST.Match.Stmts
, module Language.Haskell.Tools.AST.Match.Literals
, module Language.Haskell.Tools.AST.Match.Patterns
, module Language.Haskell.Tools.AST.Match.Names
, module Language.Haskell.Tools.AST.Match.TH
) where

import Language.Haskell.Tools.AST.Match.Modules
import Language.Haskell.Tools.AST.Match.Decls
import Language.Haskell.Tools.AST.Match.Binds
import Language.Haskell.Tools.AST.Match.Types
import Language.Haskell.Tools.AST.Match.Kinds
import Language.Haskell.Tools.AST.Match.Exprs
import Language.Haskell.Tools.AST.Match.Stmts
import Language.Haskell.Tools.AST.Match.Literals
import Language.Haskell.Tools.AST.Match.Patterns
import Language.Haskell.Tools.AST.Match.Names
import Language.Haskell.Tools.AST.Match.TH
50 changes: 4 additions & 46 deletions src/ast-gen/Language/Haskell/Tools/AST/Rewrite.hs
Original file line number Diff line number Diff line change
Expand Up @@ -2,53 +2,11 @@
-- Contains modules for constructing parts of the AST and modules
-- for pattern matching (deconstructing) parts of the AST.
module Language.Haskell.Tools.AST.Rewrite
( module Language.Haskell.Tools.AST.Gen.Modules
, module Language.Haskell.Tools.AST.Gen.Decls
, module Language.Haskell.Tools.AST.Gen.Binds
, module Language.Haskell.Tools.AST.Gen.Types
, module Language.Haskell.Tools.AST.Gen.Kinds
, module Language.Haskell.Tools.AST.Gen.Exprs
, module Language.Haskell.Tools.AST.Gen.Stmts
, module Language.Haskell.Tools.AST.Gen.Literals
, module Language.Haskell.Tools.AST.Gen.Patterns
, module Language.Haskell.Tools.AST.Gen.Names
, module Language.Haskell.Tools.AST.Gen.TH
, module Language.Haskell.Tools.AST.Match.Modules
, module Language.Haskell.Tools.AST.Match.Decls
, module Language.Haskell.Tools.AST.Match.Binds
, module Language.Haskell.Tools.AST.Match.Types
, module Language.Haskell.Tools.AST.Match.Kinds
, module Language.Haskell.Tools.AST.Match.Exprs
, module Language.Haskell.Tools.AST.Match.Stmts
, module Language.Haskell.Tools.AST.Match.Literals
, module Language.Haskell.Tools.AST.Match.Patterns
, module Language.Haskell.Tools.AST.Match.Names
, module Language.Haskell.Tools.AST.Match.TH
( module Language.Haskell.Tools.AST.Gen
, module Language.Haskell.Tools.AST.Match
, module Language.Haskell.Tools.AST.ElementTypes
) where

import Language.Haskell.Tools.AST.Gen.Modules
import Language.Haskell.Tools.AST.Gen.Decls
import Language.Haskell.Tools.AST.Gen.Binds
import Language.Haskell.Tools.AST.Gen.Types
import Language.Haskell.Tools.AST.Gen.Kinds
import Language.Haskell.Tools.AST.Gen.Exprs
import Language.Haskell.Tools.AST.Gen.Stmts
import Language.Haskell.Tools.AST.Gen.Literals
import Language.Haskell.Tools.AST.Gen.Patterns
import Language.Haskell.Tools.AST.Gen.Names
import Language.Haskell.Tools.AST.Gen.TH

import Language.Haskell.Tools.AST.Match.Modules
import Language.Haskell.Tools.AST.Match.Decls
import Language.Haskell.Tools.AST.Match.Binds
import Language.Haskell.Tools.AST.Match.Types
import Language.Haskell.Tools.AST.Match.Kinds
import Language.Haskell.Tools.AST.Match.Exprs
import Language.Haskell.Tools.AST.Match.Stmts
import Language.Haskell.Tools.AST.Match.Literals
import Language.Haskell.Tools.AST.Match.Patterns
import Language.Haskell.Tools.AST.Match.Names
import Language.Haskell.Tools.AST.Match.TH

import Language.Haskell.Tools.AST.Gen
import Language.Haskell.Tools.AST.Match
import Language.Haskell.Tools.AST.ElementTypes

0 comments on commit dd9c578

Please sign in to comment.