lojbanParser 0.1.6 → 0.1.7
raw patch · 5 files changed
+58/−33 lines, 5 filesdep +lojbanParser
Dependencies added: lojbanParser
Files
- bin/testParser.hs +8/−0
- lojbanParser.cabal +7/−4
- src/Language/Lojban/Parser.hs +22/−1
- src/TestPappy.hs +21/−20
- src/testParser.hs +0/−8
+ bin/testParser.hs view
@@ -0,0 +1,8 @@+module Main where++import Language.Lojban.Parser+import System.Environment++main = do+ [str] <- getArgs+ print $ parse str
lojbanParser.cabal view
@@ -1,8 +1,8 @@ build-type: Simple-cabal-version: >= 1.6+cabal-version: >= 1.8 name: lojbanParser-version: 0.1.6+version: 0.1.7 stability: experimental author: .iocikun.juj. <PAF01143@nifty.ne.jp> maintainer: .iocikun.juj. <PAF01143@nifty.ne.jp>@@ -21,10 +21,13 @@ library hs-source-dirs: src+ extensions: DeriveDataTypeable exposed-modules: Language.Lojban.Parser other-modules: Preprocess LexerPappy Pos Parse TestPappy+ build-depends: base > 3 && < 5 executable testParser- hs-source-dirs: src+ hs-source-dirs: bin+ extensions: DeriveDataTypeable main-is: testParser.hs- build-depends: base > 3 && < 5+ build-depends: base > 3 && < 5, lojbanParser
src/Language/Lojban/Parser.hs view
@@ -22,7 +22,28 @@ IntervalProperty(..), Tag(..), SpaceInterval(..),- SpaceOffset(..)+ SpaceOffset(..),++ Indicators(..),+ Term(..),+ Gik(..),+ Gihek(..),+ Statement(..),+ Ek(..),+ Quantifier(..),+ Paragraph(..),+ Paragraphs(..),+ Pre(..),+ LerfuString(..),+ RelativeClauses(..),+ Mex(..),+ JoikEk(..),+ NumberLerfuString(..),+ Guhek(..),+ JoikJekSelbri5(..),+ Joik(..),+ Number(..),+ Tense(..) ) where import TestPappy
src/TestPappy.hs view
@@ -7,6 +7,7 @@ import System.Environment import Data.Maybe+import Data.Data import Preprocess ml = maybeToList@@ -59,7 +60,7 @@ | HeadNIhO [Clause] [Free] (Maybe Paragraphs) | TopText [Clause] (Either [Clause] (Maybe [([String], String)])) [Free] (Maybe (JoikJek, [Free])) (Maybe Text) (Maybe Pre)- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) data Sumti = TermsPEhETerms Term [(Clause, [Free], JoikJek, [Free], Term)]@@ -91,12 +92,12 @@ | JoikEkKESumti Sumti JoikEk [Free] (Maybe Tag) Clause [Free] Sumti (Maybe Clause) [Free] | VUhO Sumti Clause [Free] RelativeClauses- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) data TermsGikTerms = TGT Term TermsGikTerms Term | Gik Gik- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) data SumtiTail = SumtiSumtiTail Sumti (Maybe RelativeClauses) SumtiTail@@ -104,7 +105,7 @@ | SelbriRelativeClauses Selbri (Maybe RelativeClauses) | STQuantifierSelbri Quantifier Selbri (Maybe RelativeClauses) | QuantifierSumti Quantifier Sumti- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) data Selbri = Brivla Clause [Free]@@ -129,7 +130,7 @@ | NU Clause (Maybe Clause) [Free] [(JoikJek, [Free], Clause, Maybe Clause, [Free])] Sentence (Maybe Clause) [Free]- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) type RelativeClauses = RelativeClause @@ -137,17 +138,17 @@ = GOI Clause [Free] Term (Maybe Clause) [Free] | NOI Clause [Free] Sentence (Maybe Clause) [Free] | RelativeClauseZIhE RelativeClause [(Clause, [Free], RelativeClause)]- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) type JoikJekSelbri5 = Either (JoikJek, [Free], Selbri) (Joik, (Maybe Tag), Clause, [Free], Selbri, Maybe Clause, [Free]) data Linkargs = BE Clause [Free] Term (Maybe Links) (Maybe Clause) [Free]- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) data Links = BEI Clause [Free] Term (Maybe Links)- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) type Quantifier = Operand type Mex = Operand@@ -164,7 +165,7 @@ [Either (JoikJek, [Free], MexOperator) (Joik, Maybe Tag, Clause, [Free], MexOperator, Maybe Clause, [Free])]- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) data Operand = OLerfuString LerfuString (Maybe Clause) [Free]@@ -183,14 +184,14 @@ | JOhI Clause [Free] [Mex] (Maybe Clause) [Free] | GekOperand Gek Operand Gik Operand | LAhE_NAhEOperand Clause (Maybe Clause) [Free] Operand (Maybe Clause) [Free]- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) data RPExpression = RPExpression Operand (Maybe RPExpressionTail)- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) data RPExpressionTail = RPExpressionTail RPExpression MexOperator (Maybe RPExpressionTail)- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) type NumberLerfuString = [Clause] type Number = [Clause]@@ -208,7 +209,7 @@ (Maybe RelativeClauses) (Maybe Clause) | VocativeCmene [Clause] (Maybe RelativeClauses) [Clause] [Free] (Maybe RelativeClauses) (Maybe Clause)- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) type Clause = ([String], String, Indicators) type Pre = ([String], String)@@ -226,12 +227,12 @@ | Gihek (Maybe Clause) (Maybe Clause) Clause (Maybe Clause) | BIhI (Maybe Clause) Clause (Maybe Clause) | GAhO Clause JoikJek Clause- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) data Gek = GA (Maybe Clause) Clause (Maybe Clause) [Free] | JoikGI Joik Clause [Free] | STagGik Tag Gik- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) -- type Guhek = ([Clause], [Free]) -- type Gik = ([Clause], [Free]) type Guhek = (Maybe Clause, Clause, Maybe Clause, [Free])@@ -242,7 +243,7 @@ = ROI Number Clause (Maybe Clause) | TAhE Clause (Maybe Clause) | ZAhO Clause (Maybe Clause)- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) data Tag = BAI (Maybe Clause) (Maybe Clause) Clause (Maybe Clause) (Maybe Clause)@@ -261,7 +262,7 @@ | FIhO Clause [Free] Selbri (Maybe Clause) [Free] | JoikJekTag Tag [(JoikJek, [Free], Tag)] | JekJoikSTag Tag [(JoikJek, Tag)]- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) data SpaceInterval = FEhE [(Clause, IntervalProperty)]@@ -269,11 +270,11 @@ | VEhAVIhAFAhA (Maybe Clause) (Maybe Clause) Clause (Maybe Clause) | VEhAVIhAFEhE (Maybe Clause) (Maybe Clause) SpaceInterval | VEhAVIhAFAhAFEhE (Maybe Clause) (Maybe Clause) Clause (Maybe Clause) SpaceInterval- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) data SpaceOffset = FAhA Clause (Maybe Clause) (Maybe Clause)- deriving (Eq, Show)+ deriving (Eq, Show, Data, Typeable) {- main = do@@ -288,7 +289,7 @@ uncurry3 f (x, y, z) = f x y z isSimpleText ::- [Clause] -> (Either [Clause] (Maybe [([String], String)]), [Free]) -> + [Clause] -> (Either [Clause] (Maybe [([String], String)]), [Free]) -> Maybe (JoikJek, [Free]) -> Maybe Text -> Maybe Pre -> Bool isSimpleText n tp2 jj t f = null n && isNothing (fromRight $ fst tp2) && null (snd tp2) &&
− src/testParser.hs
@@ -1,8 +0,0 @@-module Main where--import Language.Lojban.Parser-import System.Environment--main = do- [str] <- getArgs- print $ parse str