mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-17 16:59:34 -06:00
Remove old commented code
This commit is contained in:
@@ -234,56 +234,6 @@ mkCanon2lpgf opts gr am = do
|
||||
_ -> Nothing
|
||||
return (L.Tuple (map fst ts), typ)
|
||||
|
||||
{-
|
||||
C.TableValue lt trvs | isRecordType lt -> go trvs
|
||||
where
|
||||
go :: [C.TableRowValue] -> Either String (L.LinFun, Maybe C.LinType)
|
||||
go [C.TableRow _ lv] = val2lin lv
|
||||
go trvs = do
|
||||
let grps = flip L.groupBy trvs $ \tr1 tr2 ->
|
||||
let
|
||||
C.TableRow (C.RecordPattern (C.RecordRow lid1 (C.ParamPattern (C.Param pid1 _)):_)) _ = tr1
|
||||
C.TableRow (C.RecordPattern (C.RecordRow lid2 (C.ParamPattern (C.Param pid2 _)):_)) _ = tr2
|
||||
in lid1 == lid2 && pid1 == pid2
|
||||
ts <- forM grps $ \grp ->
|
||||
go =<< forM grp (\row ->
|
||||
case row of
|
||||
C.TableRow (C.RecordPattern []) lv -> return row
|
||||
C.TableRow (C.RecordPattern (C.RecordRow _ (C.ParamPattern (C.Param _ [])):rrs)) lv -> return $ C.TableRow (C.RecordPattern rrs) lv
|
||||
C.TableRow (C.RecordPattern rrs) lv -> return $ C.TableRow (C.RecordPattern rrs') lv
|
||||
where
|
||||
C.RecordRow lid (C.ParamPattern (C.Param pid patts)) = head rrs
|
||||
C.ParamPattern (C.Param pid2 patts2) = head patts
|
||||
rrs' = C.RecordRow lid (C.ParamPattern (C.Param pid2 (patts2 ++ tail patts))) : tail rrs
|
||||
_ -> Left $ printf "Unhandled table row: %s" (show row)
|
||||
)
|
||||
let typ = case ts of
|
||||
(_, Just tst):_ -> Just $ C.TableType lt tst
|
||||
_ -> Nothing
|
||||
return (L.Tuple (map fst ts), typ)
|
||||
|
||||
C.TableValue lt trvs | isParamType lt -> go trvs
|
||||
where
|
||||
go :: [C.TableRowValue] -> Either String (L.LinFun, Maybe C.LinType)
|
||||
go [C.TableRow _ lv] = val2lin lv
|
||||
go trvs = do
|
||||
let grps = L.groupBy (\(C.TableRow (C.ParamPattern (C.Param pid1 _)) _) (C.TableRow (C.ParamPattern (C.Param pid2 _)) _) -> pid1 == pid2) trvs
|
||||
ts <- forM grps $ \grp ->
|
||||
go =<< forM grp (\row ->
|
||||
case row of
|
||||
C.TableRow (C.ParamPattern (C.Param _ [])) lv -> return row
|
||||
C.TableRow (C.ParamPattern (C.Param _ patts)) lv -> return $ C.TableRow (C.ParamPattern (C.Param pid' patts')) lv
|
||||
where
|
||||
C.ParamPattern (C.Param pid1 patts1) = head patts
|
||||
pid' = pid1
|
||||
patts' = patts1 ++ tail patts
|
||||
_ -> Left $ printf "Unhandled table row: %s" (show row)
|
||||
)
|
||||
let typ = case ts of
|
||||
(_, Just tst):_ -> Just $ C.TableType lt tst
|
||||
_ -> Nothing
|
||||
return (L.Tuple (map fst ts), typ)
|
||||
-}
|
||||
-- TODO TuplePattern, WildPattern?
|
||||
|
||||
C.TupleValue lvs -> do
|
||||
|
||||
Reference in New Issue
Block a user