diff options
| author | aarne <aarne@cs.chalmers.se> | 2007-03-14 12:11:18 +0000 |
|---|---|---|
| committer | aarne <aarne@cs.chalmers.se> | 2007-03-14 12:11:18 +0000 |
| commit | f7ce8940fa0d53718eb30bfc7d0ef9320bafc673 (patch) | |
| tree | a018f006c071e2782baa2e4e86fc28dc57901d49 /src/GF/UseGrammar/Linear.hs | |
| parent | 98fcad148e61d5a284d0fe1b095f90eab368d28f (diff) | |
ma -status; sep lines for l -all
Diffstat (limited to 'src/GF/UseGrammar/Linear.hs')
| -rw-r--r-- | src/GF/UseGrammar/Linear.hs | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/GF/UseGrammar/Linear.hs b/src/GF/UseGrammar/Linear.hs index 85bae5b0d..ac6c3b703 100644 --- a/src/GF/UseGrammar/Linear.hs +++ b/src/GF/UseGrammar/Linear.hs @@ -213,14 +213,16 @@ allLinsAsRec gr c t = linearizeNoMark gr c t >>= expandLinTables gr >>= allLinVa -- | the value is a list of structures arranged as records of tables of strings -- only taking into account string fields -allLinTables :: CanonGrammar ->Ident ->A.Tree ->Err [[(Label,[([Patt],[String])])]] -allLinTables gr c t = do +-- True: sep. by /, False: sep by \n +allLinTables :: + Bool -> CanonGrammar ->Ident ->A.Tree ->Err [[(Label,[([Patt],[String])])]] +allLinTables slash gr c t = do r' <- allLinsAsRec gr c t mapM (mapM getS) r' where getS (lab,pss) = liftM (curry id lab) $ mapM gets pss gets (ps,t) = liftM (curry id ps . cc . map str2strings) $ strsFromTerm t - cc = concat . intersperse ["/"] + cc = concat . intersperse [if slash then "/" else "\n"] -- | the value is a list of strings gathered from all fields |
