Emit port declarations
This commit is contained in:
parent
3106fe0ed6
commit
1fb01d4d98
|
|
@ -27,16 +27,19 @@
|
|||
template <class T>
|
||||
void emit_children(std::ofstream &of,
|
||||
const std::list<T*> &children,
|
||||
int level)
|
||||
int level, const char *delim="")
|
||||
{
|
||||
// Don't indent if there are no children
|
||||
if (children.size() == 0)
|
||||
newline(of, level);
|
||||
else {
|
||||
typename std::list<T*>::const_iterator it;
|
||||
int sz = children.size();
|
||||
for (it = children.begin(); it != children.end(); ++it) {
|
||||
newline(of, indent(level));
|
||||
(*it)->emit(of, indent(level));
|
||||
if (--sz > 0)
|
||||
of << delim;
|
||||
}
|
||||
newline(of, level);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -85,8 +85,14 @@ void vhdl_entity::emit(std::ofstream &of, int level) const
|
|||
|
||||
emit_comment(of, level);
|
||||
of << "entity " << name_ << " is";
|
||||
// ...ports...
|
||||
// newline(indent(level));
|
||||
|
||||
if (ports_.size() > 0) {
|
||||
newline(of, indent(level));
|
||||
of << "port (";
|
||||
emit_children<vhdl_decl>(of, ports_, indent(level), ";");
|
||||
of << ");";
|
||||
}
|
||||
|
||||
newline(of, level);
|
||||
of << "end entity; ";
|
||||
blank_line(of, level); // Extra blank line after entities
|
||||
|
|
@ -332,8 +338,6 @@ void vhdl_port_decl::emit(std::ofstream &of, int level) const
|
|||
}
|
||||
|
||||
type_->emit(of, level);
|
||||
of << ";";
|
||||
emit_comment(of, level, true);
|
||||
}
|
||||
|
||||
void vhdl_var_decl::emit(std::ofstream &of, int level) const
|
||||
|
|
|
|||
Loading…
Reference in New Issue