diff options
Diffstat (limited to 'src/GF/GFCC/Macros.hs')
| -rw-r--r-- | src/GF/GFCC/Macros.hs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/GF/GFCC/Macros.hs b/src/GF/GFCC/Macros.hs index 383b77d34..d38ccb2e5 100644 --- a/src/GF/GFCC/Macros.hs +++ b/src/GF/GFCC/Macros.hs @@ -69,10 +69,18 @@ catSkeleton :: Type -> ([CId],CId) catSkeleton ty = case ty of DTyp hyps val _ -> ([valCat ty | Hyp _ ty <- hyps],val) +typeSkeleton :: Type -> ([(Int,CId)],CId) +typeSkeleton ty = case ty of + DTyp hyps val _ -> ([(contextLength ty, valCat ty) | Hyp _ ty <- hyps],val) + valCat :: Type -> CId valCat ty = case ty of DTyp _ val _ -> val +contextLength :: Type -> Int +contextLength ty = case ty of + DTyp hyps _ _ -> length hyps + cid :: String -> CId cid = CId |
