17
17
18
18
#include < iostream>
19
19
20
- #define forall_nodes (it ) \
21
- for (nodest::const_iterator it = nodes.begin(); it != nodes.end(); it++)
22
-
23
20
void mini_bdd_nodet::remove_reference ()
24
21
{
25
22
PRECONDITION_WITH_DIAGNOSTICS (
@@ -65,9 +62,11 @@ void mini_bdd_mgrt::DumpDot(std::ostream &out, bool suppress_zero) const
65
62
" { node [shape=plaintext,fontname=\" Times Italic\" ,fontsize=24] \" "
66
63
<< var_table[v].label << " \" }; " ;
67
64
68
- forall_nodes (u)
69
- if (u->var == (v + 1 ) && u->reference_counter != 0 )
70
- out << ' "' << u->node_number << " \" ; " ;
65
+ for (const auto &u : nodes)
66
+ {
67
+ if (u.var == (v + 1 ) && u.reference_counter != 0 )
68
+ out << ' "' << u.node_number << " \" ; " ;
69
+ }
71
70
72
71
out << " }\n " ;
73
72
}
@@ -83,22 +82,21 @@ void mini_bdd_mgrt::DumpDot(std::ostream &out, bool suppress_zero) const
83
82
84
83
out << ' \n ' ;
85
84
86
- forall_nodes (u )
85
+ for ( const auto &u : nodes )
87
86
{
88
- if (u-> reference_counter == 0 )
87
+ if (u. reference_counter == 0 )
89
88
continue ;
90
- if (u-> node_number <= 1 )
89
+ if (u. node_number <= 1 )
91
90
continue ;
92
91
93
- if (!suppress_zero || u-> high .node_number () != 0 )
94
- out << ' "' << u-> node_number << ' "' << " -> " << ' "'
95
- << u-> high .node_number () << ' "'
92
+ if (!suppress_zero || u. high .node_number () != 0 )
93
+ out << ' "' << u. node_number << ' "' << " -> " << ' "'
94
+ << u. high .node_number () << ' "'
96
95
<< " [style=solid,arrowsize=\" .75\" ];\n " ;
97
96
98
- if (!suppress_zero || u->low .node_number () != 0 )
99
- out << ' "' << u->node_number << ' "' << " -> " << ' "'
100
- << u->low .node_number () << ' "'
101
- << " [style=dashed,arrowsize=\" .75\" ];\n " ;
97
+ if (!suppress_zero || u.low .node_number () != 0 )
98
+ out << ' "' << u.node_number << ' "' << " -> " << ' "' << u.low .node_number ()
99
+ << ' "' << " [style=dashed,arrowsize=\" .75\" ];\n " ;
102
100
103
101
out << ' \n ' ;
104
102
}
@@ -128,9 +126,9 @@ void mini_bdd_mgrt::DumpTikZ(
128
126
129
127
unsigned previous = 0 ;
130
128
131
- forall_nodes (u )
129
+ for ( const auto &u : nodes )
132
130
{
133
- if (u-> var == (v + 1 ) && u-> reference_counter != 0 )
131
+ if (u. var == (v + 1 ) && u. reference_counter != 0 )
134
132
{
135
133
out << " \\ node[xshift=0cm, BDDnode, " ;
136
134
@@ -139,11 +137,11 @@ void mini_bdd_mgrt::DumpTikZ(
139
137
else
140
138
out << " right of=n" << previous;
141
139
142
- out << " ] (n" << u-> node_number << " ) {" ;
140
+ out << " ] (n" << u. node_number << " ) {" ;
143
141
if (node_numbers)
144
- out << " \\ small $" << u-> node_number << " $" ;
142
+ out << " \\ small $" << u. node_number << " $" ;
145
143
out << " };\n " ;
146
- previous = u-> node_number ;
144
+ previous = u. node_number ;
147
145
}
148
146
}
149
147
@@ -164,17 +162,17 @@ void mini_bdd_mgrt::DumpTikZ(
164
162
out << " % edges\n " ;
165
163
out << ' \n ' ;
166
164
167
- forall_nodes (u )
165
+ for ( const auto &u : nodes )
168
166
{
169
- if (u-> reference_counter != 0 && u-> node_number >= 2 )
167
+ if (u. reference_counter != 0 && u. node_number >= 2 )
170
168
{
171
- if (!suppress_zero || u-> low .node_number () != 0 )
172
- out << " \\ draw[->,dashed] (n" << u-> node_number << " ) -> (n"
173
- << u-> low .node_number () << " );\n " ;
169
+ if (!suppress_zero || u. low .node_number () != 0 )
170
+ out << " \\ draw[->,dashed] (n" << u. node_number << " ) -> (n"
171
+ << u. low .node_number () << " );\n " ;
174
172
175
- if (!suppress_zero || u-> high .node_number () != 0 )
176
- out << " \\ draw[->] (n" << u-> node_number << " ) -> (n"
177
- << u-> high .node_number () << " );\n " ;
173
+ if (!suppress_zero || u. high .node_number () != 0 )
174
+ out << " \\ draw[->] (n" << u. node_number << " ) -> (n"
175
+ << u. high .node_number () << " );\n " ;
178
176
}
179
177
}
180
178
@@ -490,23 +488,22 @@ void mini_bdd_mgrt::DumpTable(std::ostream &out) const
490
488
out << " \\ # & \\ mathit{var} & \\ mathit{low} &"
491
489
" \\ mathit{high} \\\\\\ hline\n " ;
492
490
493
- forall_nodes (it )
491
+ for ( const auto &n : nodes )
494
492
{
495
- out << it-> node_number << " & " ;
493
+ out << n. node_number << " & " ;
496
494
497
- if (it-> node_number == 0 || it-> node_number == 1 )
498
- out << it-> var << " & & \\\\ " ;
499
- else if (it-> reference_counter == 0 )
495
+ if (n. node_number == 0 || n. node_number == 1 )
496
+ out << n. var << " & & \\\\ " ;
497
+ else if (n. reference_counter == 0 )
500
498
out << " - & - & - \\\\ " ;
501
499
else
502
- out << it->var << " \\ ," << var_table[it->var - 1 ].label << " & "
503
- << it->low .node_number () << " & " << it->high .node_number ()
504
- << " \\\\ " ;
500
+ out << n.var << " \\ ," << var_table[n.var - 1 ].label << " & "
501
+ << n.low .node_number () << " & " << n.high .node_number () << " \\\\ " ;
505
502
506
- if (it-> node_number == 1 )
503
+ if (n. node_number == 1 )
507
504
out << " \\ hline" ;
508
505
509
- out << " % " << it-> reference_counter << ' \n ' ;
506
+ out << " % " << n. reference_counter << ' \n ' ;
510
507
}
511
508
}
512
509
0 commit comments