From: Matthijs Kooijman Date: Fri, 13 Feb 2009 13:49:30 +0000 (+0100) Subject: Use less general names as labels some fields. X-Git-Url: https://git.stderr.nl/gitweb?p=matthijs%2Fmaster-project%2Fc%CE%BBash.git;a=commitdiff_plain;h=b6830a33af7012bdacbb81010a9c0531ca0b037c Use less general names as labels some fields. --- diff --git a/FlattenTypes.hs b/FlattenTypes.hs index 4e2640a..e77a8aa 100644 --- a/FlattenTypes.hs +++ b/FlattenTypes.hs @@ -83,11 +83,11 @@ data SignalInfo = SignalInfo { -- | A flattened function data FlatFunction' sigid = FlatFunction { - args :: [SignalMap sigid], - res :: SignalMap sigid, - apps :: [FApp sigid], - conds :: [CondDef sigid], - sigs :: [(sigid, SignalInfo)] + flat_args :: [SignalMap sigid], + flat_res :: SignalMap sigid, + flat_apps :: [FApp sigid], + flat_conds :: [CondDef sigid], + flat_sigs :: [(sigid, SignalInfo)] } -- | A flat function that does not have its signals named diff --git a/Translator.hs b/Translator.hs index 7e66b18..88f321e 100644 --- a/Translator.hs +++ b/Translator.hs @@ -116,7 +116,7 @@ flattenBind hsfunc bind@(NonRec var expr) = do let flatfunc = flattenFunction hsfunc bind addFunc hsfunc setFlatFunc hsfunc flatfunc - let used_hsfuncs = map appFunc (apps flatfunc) + let used_hsfuncs = map appFunc (flat_apps flatfunc) State.mapM resolvFunc used_hsfuncs return () @@ -186,9 +186,9 @@ nameFlatFunction hsfunc fdata = Nothing -> fdata -- Name the signals in all other functions Just flatfunc -> - let s = sigs flatfunc in + let s = flat_sigs flatfunc in let s' = map (\(id, (SignalInfo Nothing ty)) -> (id, SignalInfo (Just $ "sig_" ++ (show id)) ty)) s in - let flatfunc' = flatfunc { sigs = s' } in + let flatfunc' = flatfunc { flat_sigs = s' } in fdata { flatFunc = Just flatfunc' } -- | Splits a tuple type into a list of element types, or Nothing if the type diff --git a/TranslatorTypes.hs b/TranslatorTypes.hs index da1407a..604ab20 100644 --- a/TranslatorTypes.hs +++ b/TranslatorTypes.hs @@ -22,9 +22,9 @@ type FuncMap = Map.Map HsFunction FuncData -- | Some stuff we collect about a function along the way. data FuncData = FuncData { - flatFunc :: Maybe FlatFunction, - entity :: Maybe Entity, - funcArch :: Maybe AST.ArchBody + flatFunc :: Maybe FlatFunction, + funcEntity :: Maybe Entity, + funcArch :: Maybe AST.ArchBody } data VHDLSession = VHDLSession { diff --git a/VHDL.hs b/VHDL.hs index 9cea6fe..8c2fe03 100644 --- a/VHDL.hs +++ b/VHDL.hs @@ -33,15 +33,15 @@ createEntity hsfunc fdata = Just flatfunc -> let - s = sigs flatfunc - a = args flatfunc - r = res flatfunc - args' = map (fmap (mkMap s)) a - res' = fmap (mkMap s) r + sigs = flat_sigs flatfunc + args = flat_args flatfunc + res = flat_res flatfunc + args' = map (fmap (mkMap sigs)) args + res' = fmap (mkMap sigs) res ent_decl' = createEntityAST hsfunc args' res' entity' = Entity args' res' (Just ent_decl') in - fdata { entity = Just entity' } + fdata { funcEntity = Just entity' } where mkMap :: Eq id => [(id, SignalInfo)] -> id -> (AST.VHDLId, AST.TypeMark) mkMap sigmap id = @@ -99,13 +99,15 @@ createArchitecture hsfunc fdata = -- Create an architecture for all other functions Just flatfunc -> let - s = sigs flatfunc - a = args flatfunc - r = res flatfunc + sigs = flat_sigs flatfunc + args = flat_args flatfunc + res = flat_res flatfunc entity_id = Maybe.fromMaybe (error $ "Building architecture without an entity? This should not happen!") (getEntityId fdata) - sig_decs = [mkSigDec info | (id, info) <- s, (all (id `Foldable.notElem`) (r:a)) ] + -- Create signal declarations for all signals that are not in args and + -- res + sig_decs = [mkSigDec info | (id, info) <- sigs, (all (id `Foldable.notElem`) (res:args)) ] arch = AST.ArchBody (mkVHDLId "structural") (AST.NSimple entity_id) (map AST.BDISD sig_decs) [] in fdata { funcArch = Just arch } @@ -122,7 +124,7 @@ mkSigDec info = -- | Extracts the generated entity id from the given funcdata getEntityId :: FuncData -> Maybe AST.VHDLId getEntityId fdata = - case entity fdata of + case funcEntity fdata of Nothing -> Nothing Just e -> case ent_decl e of Nothing -> Nothing @@ -133,7 +135,7 @@ getLibraryUnits :: -> [AST.LibraryUnit] -- | The library units it generates getLibraryUnits (hsfunc, fdata) = - case entity fdata of + case funcEntity fdata of Nothing -> [] Just ent -> case ent_decl ent of Nothing -> []