mirror of https://github.com/zachjs/sv2v.git
support implied port directions
This commit is contained in:
parent
4b3b09d2db
commit
fc9999aeea
|
|
@ -105,10 +105,22 @@ parseDTsAsPortDecls pieces =
|
|||
length pieces == length commaIdxs + length identIdxs
|
||||
|
||||
simpleIdents = map extractIdent $ filter isIdent pieces
|
||||
declarations = parseDTsAsDecls pieces
|
||||
declarations = propagateDirections Input $ parseDTsAsDecls pieces
|
||||
|
||||
extractIdent = \(DTIdent _ x) -> x
|
||||
|
||||
propagateDirections :: Direction -> [Decl] -> [Decl]
|
||||
propagateDirections dir (decl @ (Variable _ InterfaceT{} _ _ _) : decls) =
|
||||
decl : propagateDirections dir decls
|
||||
propagateDirections lastDir (Variable currDir t x a me : decls) =
|
||||
decl : propagateDirections dir decls
|
||||
where
|
||||
decl = Variable dir t x a me
|
||||
dir = if currDir == Local then lastDir else currDir
|
||||
propagateDirections dir (decl : decls) =
|
||||
decl : propagateDirections dir decls
|
||||
propagateDirections _ [] = []
|
||||
|
||||
portNames :: [Decl] -> [Identifier]
|
||||
portNames items = mapMaybe portName items
|
||||
portName :: Decl -> Maybe Identifier
|
||||
|
|
|
|||
Loading…
Reference in New Issue