[BUGFIX in partitioning, remove trivial partitions
martin.hofmann@uni-bamberg.de**20100818145751] hunk ./src/Igor2/RuleDevelopment/Partition.hs 42
-    parts <- fuseParts $
-               (if gsplt then (((:[]) .) . fullPartitioning)
-                  else singlePartitioning) cruls pivotpos
+    parts <- fuseParts . noTrivial $ doPart gsplt cruls pivotpos
+--               (if gsplt then (((:[]) .) . fullPartitioning)
+--                  else singlePartitioning) cruls pivotpos
hunk ./src/Igor2/RuleDevelopment/Partition.hs 55
+    where
+      noTrivial = filter (\l -> case l of [_] -> False; _owise -> True)
+      doPart _ [a] _ = [] 
+      -- partitioning a single rule results in no partitions
+      doPart gsplt cruls pivotpos
+          | gsplt = [fullPartitioning  cruls pivotpos]
+          | otherwise = singlePartitioning cruls pivotpos
+             
hunk ./src/Igor2/RuleDevelopment/Partition.hs 78
-fullPartitioning =  foldr ((=<<) . mkPartitionAt) . return
+-- fullPartitioning =  foldr ((=<<) . mkPartitionAt) . return
+fullPartitioning crs pos = foldl partAll [crs] pos
+    where 
+      partAll cs p = concatMap (mkPartitionAt p) cs
+-- partitioning helper, partitioning given CovrRule list w.r.t. the given RulePos
hunk ./src/Igor2/RuleDevelopment/Partition.hs 84
--- partitioning helper, partitioin given CovrRule list w.r.t. the given RulePos
hunk ./src/Igor2/RuleDevelopment/Partition.hs 85
-mkPartitionAt p crs = 
-    case foldl' bin [] crs of    
-     [_p]       -> [] -- partitioning a single rule results in no partitions
-     (x1:x2:xs) -> (x1:x2:xs)   
+mkPartitionAt p crs =  foldl' bin [] crs
hunk ./src/Igor2/RuleDevelopment/Partition.hs 90
-           | cmpAtPos e x     =  (e:x:xs):done
-           | otherwise        =  (x:xs):(bin done e)  
+           | cmpAtPos e x  =  (e:x:xs):done
+           | otherwise     =  (x:xs):(bin done e)  