Lines Matching refs:T2

158 template <class T1, class T2>
160 const sc_bitref_r<T1> &a, const sc_bitref_r<T2> &b);
164 template <class T1, class T2>
166 const sc_bitref_r<T1> &a, const sc_bitref_r<T2> &b);
169 template <class T1, class T2>
171 const sc_bitref_r<T1> &a, const sc_bitref_r<T2> &b);
174 template <class T1, class T2>
175 inline bool operator == (const sc_bitref_r<T1> &a, const sc_bitref_r<T2> &b);
177 template <class T1, class T2>
178 inline bool operator != (const sc_bitref_r<T1> &a, const sc_bitref_r<T2> &b);
181 template <class T1, class T2>
182 inline sc_concref_r<sc_bitref_r<T1>, sc_bitref_r<T2> > operator , (
183 sc_bitref_r<T1>, sc_bitref_r<T2>);
185 template <class T1, class T2>
186 inline sc_concref_r<sc_bitref_r<T1>, sc_subref_r<T2> > operator , (
187 sc_bitref_r<T1>, sc_subref_r<T2>);
189 template <class T1, class T2, class T3>
190 inline sc_concref_r<sc_bitref_r<T1>, sc_concref_r<T2,T3> > operator , (
191 sc_bitref_r<T1>, sc_concref_r<T2,T3>);
193 template <class T1, class T2>
194 inline sc_concref_r<sc_bitref_r<T1>, T2> operator , (
195 sc_bitref_r<T1>, const sc_proxy<T2> &);
222 template <class T1, class T2>
223 inline sc_concref_r<sc_bitref_r<T1>, sc_bitref_r<T2> > concat(
224 sc_bitref_r<T1>, sc_bitref_r<T2>);
226 template <class T1, class T2>
227 inline sc_concref_r<sc_bitref_r<T1>, sc_subref_r<T2> > concat(
228 sc_bitref_r<T1>, sc_subref_r<T2>);
230 template <class T1, class T2, class T3>
231 inline sc_concref_r<sc_bitref_r<T1>, sc_concref_r<T2,T3> > concat(
232 sc_bitref_r<T1>, sc_concref_r<T2, T3>);
234 template <class T1, class T2>
235 inline sc_concref_r<sc_bitref_r<T1>, T2> concat(
236 sc_bitref_r<T1>, const sc_proxy<T2> &);
263 template <class T1, class T2>
264 inline sc_concref_r<sc_bitref_r<T1>, sc_bitref_r<T2> > operator , (
265 sc_bitref_r<T1>, sc_bitref<T2>);
267 template <class T1, class T2>
268 inline sc_concref_r<sc_bitref_r<T1>, sc_bitref_r<T2> > operator , (
269 sc_bitref<T1>, sc_bitref_r<T2>);
271 template <class T1, class T2>
272 inline sc_concref_r<sc_bitref_r<T1>, sc_subref_r<T2> > operator , (
273 sc_bitref_r<T1>, sc_subref<T2>);
275 template <class T1, class T2>
276 inline sc_concref_r<sc_bitref_r<T1>, sc_subref_r<T2> > operator , (
277 sc_bitref<T1>, sc_subref_r<T2>);
279 template <class T1, class T2, class T3>
280 inline sc_concref_r<sc_bitref_r<T1>, sc_concref_r<T2, T3> > operator , (
281 sc_bitref_r<T1>, sc_concref<T2, T3>);
283 template <class T1, class T2, class T3>
284 inline sc_concref_r<sc_bitref_r<T1>, sc_concref_r<T2,T3> > operator , (
285 sc_bitref<T1>, sc_concref_r<T2, T3>);
287 template <class T1, class T2>
288 inline sc_concref_r<sc_bitref_r<T1>, T2> operator , (
289 sc_bitref<T1>, const sc_proxy<T2> &);
291 template <class T1, class T2>
292 inline sc_concref_r<sc_bitref_r<T1>, T2> operator , (
293 sc_bitref_r<T1>, sc_proxy<T2> &);
320 template <class T1, class T2>
321 inline sc_concref_r<sc_bitref_r<T1>, sc_bitref_r<T2> > concat(
322 sc_bitref_r<T1>, sc_bitref<T2>);
324 template <class T1, class T2>
325 inline sc_concref_r<sc_bitref_r<T1>, sc_bitref_r<T2> > concat(
326 sc_bitref<T1>, sc_bitref_r<T2>);
328 template <class T1, class T2>
329 inline sc_concref_r<sc_bitref_r<T1>, sc_subref_r<T2> > concat(
330 sc_bitref_r<T1>, sc_subref<T2>);
332 template <class T1, class T2>
333 inline sc_concref_r<sc_bitref_r<T1>, sc_subref_r<T2> > concat(
334 sc_bitref<T1>, sc_subref_r<T2>);
336 template <class T1, class T2, class T3>
337 inline sc_concref_r<sc_bitref_r<T1>, sc_concref_r<T2, T3> > concat(
338 sc_bitref_r<T1>, sc_concref<T2, T3>);
340 template <class T1, class T2, class T3>
341 inline sc_concref_r<sc_bitref_r<T1>, sc_concref_r<T2, T3> > concat(
342 sc_bitref<T1>, sc_concref_r<T2, T3>);
344 template <class T1, class T2>
345 inline sc_concref_r<sc_bitref_r<T1>, T2> concat(
346 sc_bitref<T1>, const sc_proxy<T2> &);
348 template <class T1, class T2>
349 inline sc_concref_r<sc_bitref_r<T1>, T2> concat(
350 sc_bitref_r<T1>, sc_proxy<T2> &);
563 template <class T1, class T2>
564 inline sc_concref<sc_bitref<T1>, sc_bitref<T2> > operator , (
565 sc_bitref<T1>, sc_bitref<T2>);
567 template <class T1, class T2>
568 inline sc_concref<sc_bitref<T1>, sc_subref<T2> > operator , (
569 sc_bitref<T1>, sc_subref<T2>);
571 template <class T1, class T2, class T3>
572 inline sc_concref<sc_bitref<T1>, sc_concref<T2, T3> > operator , (
573 sc_bitref<T1>, sc_concref<T2, T3>);
575 template <class T1, class T2>
576 inline sc_concref<sc_bitref<T1>, T2> operator , (
577 sc_bitref<T1>, sc_proxy<T2> &);
580 template <class T1, class T2>
581 inline sc_concref<sc_bitref<T1>, sc_bitref<T2> > concat(
582 sc_bitref<T1>, sc_bitref<T2>);
584 template <class T1, class T2>
585 inline sc_concref<sc_bitref<T1>, sc_subref<T2> > concat(
586 sc_bitref<T1>, sc_subref<T2>);
588 template <class T1, class T2, class T3>
589 inline sc_concref<sc_bitref<T1>, sc_concref<T2,T3> > concat(
590 sc_bitref<T1>, sc_concref<T2, T3>);
592 template <class T1, class T2>
593 inline sc_concref<sc_bitref<T1>, T2> concat(sc_bitref<T1>, sc_proxy<T2> &);
662 template <class T1, class T2>
663 inline sc_concref_r<sc_subref_r<T1>, sc_bitref_r<T2> > operator , (
664 sc_subref_r<T1>, sc_bitref_r<T2>);
666 template <class T1, class T2>
667 inline sc_concref_r<sc_subref_r<T1>, sc_subref_r<T2> > operator , (
668 sc_subref_r<T1>, sc_subref_r<T2>);
670 template <class T1, class T2, class T3>
671 inline sc_concref_r<sc_subref_r<T1>, sc_concref_r<T2,T3> > operator , (
672 sc_subref_r<T1>, sc_concref_r<T2, T3>);
674 template <class T1, class T2>
675 inline sc_concref_r<sc_subref_r<T1>, T2> operator , (
676 sc_subref_r<T1>, const sc_proxy<T2> &);
703 template <class T1, class T2>
704 inline sc_concref_r<sc_subref_r<T1>, sc_bitref_r<T2> > concat(
705 sc_subref_r<T1>, sc_bitref_r<T2>);
707 template <class T1, class T2>
708 inline sc_concref_r<sc_subref_r<T1>, sc_subref_r<T2> > concat(
709 sc_subref_r<T1>, sc_subref_r<T2>);
711 template <class T1, class T2, class T3>
712 inline sc_concref_r<sc_subref_r<T1>, sc_concref_r<T2, T3> > concat(
713 sc_subref_r<T1>, sc_concref_r<T2, T3>);
715 template <class T1, class T2>
716 inline sc_concref_r<sc_subref_r<T1>, T2> concat(
717 sc_subref_r<T1>, const sc_proxy<T2> &);
742 template <class T1, class T2>
743 inline sc_concref_r<sc_subref_r<T1>, sc_bitref_r<T2> > operator , (
744 sc_subref_r<T1>, sc_bitref<T2>);
746 template <class T1, class T2>
747 inline sc_concref_r<sc_subref_r<T1>, sc_bitref_r<T2> > operator , (
748 sc_subref<T1>, sc_bitref_r<T2>);
750 template <class T1, class T2>
751 inline sc_concref_r<sc_subref_r<T1>, sc_subref_r<T2> > operator , (
752 sc_subref_r<T1>, sc_subref<T2>);
754 template <class T1, class T2>
755 inline sc_concref_r<sc_subref_r<T1>, sc_subref_r<T2> > operator , (
756 sc_subref<T1>, sc_subref_r<T2>);
758 template <class T1, class T2, class T3>
759 inline sc_concref_r<sc_subref_r<T1>, sc_concref_r<T2, T3> > operator , (
760 sc_subref_r<T1>, sc_concref<T2, T3>);
762 template <class T1, class T2, class T3>
763 inline sc_concref_r<sc_subref_r<T1>, sc_concref_r<T2, T3> > operator , (
764 sc_subref<T1>, sc_concref_r<T2, T3>);
766 template <class T1, class T2>
767 inline sc_concref_r<sc_subref_r<T1>, T2> operator , (
768 sc_subref<T1>, const sc_proxy<T2> &);
770 template <class T1, class T2>
771 inline sc_concref_r<sc_subref_r<T1>, T2> operator , (
772 sc_subref_r<T1>, sc_proxy<T2> &);
799 template <class T1, class T2>
800 inline sc_concref_r<sc_subref_r<T1>, sc_bitref_r<T2> > concat(
801 sc_subref_r<T1>, sc_bitref<T2>);
803 template <class T1, class T2>
804 inline sc_concref_r<sc_subref_r<T1>, sc_bitref_r<T2> > concat(
805 sc_subref<T1>, sc_bitref_r<T2>);
807 template <class T1, class T2>
808 inline sc_concref_r<sc_subref_r<T1>, sc_subref_r<T2> > concat(
809 sc_subref_r<T1>, sc_subref<T2>);
811 template <class T1, class T2>
812 inline sc_concref_r<sc_subref_r<T1>, sc_subref_r<T2> > concat(
813 sc_subref<T1>, sc_subref_r<T2>);
815 template <class T1, class T2, class T3>
816 inline sc_concref_r<sc_subref_r<T1>, sc_concref_r<T2, T3> > concat(
817 sc_subref_r<T1>, sc_concref<T2, T3>);
819 template <class T1, class T2, class T3>
820 inline sc_concref_r<sc_subref_r<T1>, sc_concref_r<T2, T3> > concat(
821 sc_subref<T1>, sc_concref_r<T2, T3>);
823 template <class T1, class T2>
824 inline sc_concref_r<sc_subref_r<T1>, T2> concat(
825 sc_subref<T1>, const sc_proxy<T2> &);
827 template <class T1, class T2>
828 inline sc_concref_r<sc_subref_r<T1>, T2> concat(
829 sc_subref_r<T1>, sc_proxy<T2> &);
990 template <class T1, class T2>
991 inline sc_concref<sc_subref<T1>, sc_bitref<T2> > operator , (
992 sc_subref<T1>, sc_bitref<T2>);
994 template <class T1, class T2>
995 inline sc_concref<sc_subref<T1>, sc_subref<T2> > operator , (
996 sc_subref<T1>, sc_subref<T2>);
998 template <class T1, class T2, class T3>
999 inline sc_concref<sc_subref<T1>, sc_concref<T2, T3> > operator , (
1000 sc_subref<T1>, sc_concref<T2, T3>);
1002 template <class T1, class T2>
1003 inline sc_concref<sc_subref<T1>, T2> operator , (
1004 sc_subref<T1>, sc_proxy<T2> &);
1007 template <class T1, class T2>
1008 inline sc_concref<sc_subref<T1>, sc_bitref<T2> > concat(
1009 sc_subref<T1>, sc_bitref<T2>);
1011 template <class T1, class T2>
1012 inline sc_concref<sc_subref<T1>, sc_subref<T2> > concat(
1013 sc_subref<T1>, sc_subref<T2>);
1015 template <class T1, class T2, class T3>
1016 inline sc_concref<sc_subref<T1>, sc_concref<T2, T3> > concat(
1017 sc_subref<T1>, sc_concref<T2, T3>);
1019 template <class T1, class T2>
1020 inline sc_concref<sc_subref<T1>, T2> concat(sc_subref<T1>, sc_proxy<T2> &);
1091 template <class T1, class T2, class T3>
1092 inline sc_concref_r<sc_concref_r<T1, T2>,sc_bitref_r<T3> > operator , (
1093 sc_concref_r<T1, T2>, sc_bitref_r<T3>);
1095 template <class T1, class T2, class T3>
1096 inline sc_concref_r<sc_concref_r<T1, T2>, sc_subref_r<T3> > operator , (
1097 sc_concref_r<T1, T2>, sc_subref_r<T3>);
1099 template <class T1, class T2, class T3, class T4>
1100 inline sc_concref_r<sc_concref_r<T1, T2>, sc_concref_r<T3, T4> > operator , (
1101 sc_concref_r<T1, T2>, sc_concref_r<T3, T4>);
1103 template <class T1, class T2, class T3>
1104 inline sc_concref_r<sc_concref_r<T1, T2>, T3> operator , (
1105 sc_concref_r<T1, T2>, const sc_proxy<T3> &);
1107 template <class T1, class T2>
1108 inline sc_concref_r<sc_concref_r<T1, T2>, sc_lv_base> operator , (
1109 sc_concref_r<T1, T2>, const char *);
1111 template <class T1, class T2>
1112 inline sc_concref_r<sc_lv_base, sc_concref_r<T1, T2> > operator , (
1113 const char *, sc_concref_r<T1, T2>);
1115 template <class T1, class T2>
1116 inline sc_concref_r<sc_concref_r<T1, T2>, sc_lv_base> operator , (
1117 sc_concref_r<T1, T2>, const sc_logic &);
1119 template <class T1, class T2>
1120 inline sc_concref_r<sc_lv_base, sc_concref_r<T1, T2> > operator , (
1121 const sc_logic &, sc_concref_r<T1, T2>);
1123 template <class T1, class T2>
1124 inline sc_concref_r<sc_concref_r<T1, T2>, sc_bv_base> operator , (
1125 sc_concref_r<T1, T2>, bool);
1127 template <class T1, class T2>
1128 inline sc_concref_r<sc_bv_base, sc_concref_r<T1, T2> > operator , (
1129 bool, sc_concref_r<T1, T2>);
1132 template <class T1, class T2, class T3>
1133 inline sc_concref_r<sc_concref_r<T1, T2>, sc_bitref_r<T3> > concat(
1134 sc_concref_r<T1, T2>, sc_bitref_r<T3>);
1136 template <class T1, class T2, class T3>
1137 inline sc_concref_r<sc_concref_r<T1, T2>, sc_subref_r<T3> > concat(
1138 sc_concref_r<T1, T2>, sc_subref_r<T3>);
1140 template <class T1, class T2, class T3, class T4>
1141 inline sc_concref_r<sc_concref_r<T1, T2>, sc_concref_r<T3, T4> > concat(
1142 sc_concref_r<T1, T2>, sc_concref_r<T3, T4>);
1144 template <class T1, class T2, class T3>
1145 inline sc_concref_r<sc_concref_r<T1, T2>, T3> concat(
1146 sc_concref_r<T1, T2>, const sc_proxy<T3> &);
1148 template <class T1, class T2>
1149 inline sc_concref_r<sc_concref_r<T1, T2>, sc_lv_base> concat(
1150 sc_concref_r<T1, T2>, const char *);
1152 template <class T1, class T2>
1153 inline sc_concref_r<sc_lv_base, sc_concref_r<T1, T2> > concat(
1154 const char *, sc_concref_r<T1, T2>);
1156 template <class T1, class T2>
1157 inline sc_concref_r<sc_concref_r<T1, T2>, sc_lv_base> concat(
1158 sc_concref_r<T1, T2>, const sc_logic &);
1160 template <class T1, class T2>
1161 inline sc_concref_r<sc_lv_base, sc_concref_r<T1, T2> > concat(
1162 const sc_logic &, sc_concref_r<T1, T2>);
1164 template <class T1, class T2>
1165 inline sc_concref_r<sc_concref_r<T1, T2>, sc_bv_base> concat(
1166 sc_concref_r<T1, T2>, bool);
1168 template <class T1, class T2>
1169 inline sc_concref_r<sc_bv_base, sc_concref_r<T1, T2> > concat(
1170 bool, sc_concref_r<T1, T2>);
1173 template <class T1, class T2, class T3>
1174 inline sc_concref_r<sc_concref_r<T1, T2>, sc_bitref_r<T3> > operator , (
1175 sc_concref_r<T1, T2>, sc_bitref<T3>);
1177 template <class T1, class T2, class T3>
1178 inline sc_concref_r<sc_concref_r<T1, T2>, sc_bitref_r<T3> > operator , (
1179 sc_concref<T1, T2>, sc_bitref_r<T3>);
1181 template <class T1, class T2, class T3>
1182 inline sc_concref_r<sc_concref_r<T1, T2>, sc_subref_r<T3> > operator , (
1183 sc_concref_r<T1, T2>, sc_subref<T3>);
1185 template <class T1, class T2, class T3>
1186 inline sc_concref_r<sc_concref_r<T1, T2>, sc_subref_r<T3> > operator , (
1187 sc_concref<T1, T2>, sc_subref_r<T3>);
1189 template <class T1, class T2, class T3, class T4>
1190 inline sc_concref_r<sc_concref_r<T1, T2>, sc_concref_r<T3, T4> > operator , (
1191 sc_concref_r<T1, T2>, sc_concref<T3, T4>);
1193 template <class T1, class T2, class T3, class T4>
1194 inline sc_concref_r<sc_concref_r<T1, T2>, sc_concref_r<T3, T4> > operator , (
1195 sc_concref<T1, T2>, sc_concref_r<T3, T4>);
1197 template <class T1, class T2, class T3>
1198 inline sc_concref_r<sc_concref_r<T1, T2>, T3> operator , (
1199 sc_concref<T1, T2>, const sc_proxy<T3> &);
1201 template <class T1, class T2, class T3>
1202 inline sc_concref_r<sc_concref_r<T1, T2>, T3> operator , (
1203 sc_concref_r<T1, T2>, sc_proxy<T3> &);
1205 template <class T1, class T2>
1206 inline sc_concref_r<sc_concref_r<T1, T2>, sc_lv_base> operator , (
1207 sc_concref<T1, T2>, const char *);
1209 template <class T1, class T2>
1210 inline sc_concref_r<sc_lv_base, sc_concref_r<T1, T2> > operator , (
1211 const char *, sc_concref<T1, T2>);
1213 template <class T1, class T2>
1214 inline sc_concref_r<sc_concref_r<T1, T2>, sc_lv_base> operator , (
1215 sc_concref<T1, T2>, const sc_logic &);
1217 template <class T1, class T2>
1218 inline sc_concref_r<sc_lv_base, sc_concref_r<T1, T2> > operator , (
1219 const sc_logic &, sc_concref<T1, T2>);
1221 template <class T1, class T2>
1222 inline sc_concref_r<sc_concref_r<T1, T2>, sc_bv_base> operator , (
1223 sc_concref<T1, T2>, bool);
1225 template <class T1, class T2>
1226 inline sc_concref_r<sc_bv_base, sc_concref_r<T1, T2> > operator , (
1227 bool, sc_concref<T1, T2>);
1230 template <class T1, class T2, class T3>
1231 inline sc_concref_r<sc_concref_r<T1, T2>, sc_bitref_r<T3> > concat(
1232 sc_concref_r<T1, T2>, sc_bitref<T3>);
1234 template <class T1, class T2, class T3>
1235 inline sc_concref_r<sc_concref_r<T1, T2>, sc_bitref_r<T3> > concat(
1236 sc_concref<T1, T2>, sc_bitref_r<T3>);
1238 template <class T1, class T2, class T3>
1239 inline sc_concref_r<sc_concref_r<T1, T2>, sc_subref_r<T3> > concat(
1240 sc_concref_r<T1, T2>, sc_subref<T3>);
1242 template <class T1, class T2, class T3>
1243 inline sc_concref_r<sc_concref_r<T1, T2>, sc_subref_r<T3> > concat(
1244 sc_concref<T1, T2>, sc_subref_r<T3>);
1246 template <class T1, class T2, class T3, class T4>
1247 inline sc_concref_r<sc_concref_r<T1, T2>, sc_concref_r<T3, T4> > concat(
1248 sc_concref_r<T1, T2>, sc_concref<T3, T4>);
1250 template <class T1, class T2, class T3, class T4>
1251 inline sc_concref_r<sc_concref_r<T1, T2>, sc_concref_r<T3, T4> > concat(
1252 sc_concref<T1, T2>, sc_concref_r<T3, T4> );
1254 template <class T1, class T2, class T3>
1255 inline sc_concref_r<sc_concref_r<T1, T2>, T3> concat(
1256 sc_concref<T1, T2>, const sc_proxy<T3> &);
1258 template <class T1, class T2, class T3>
1259 inline sc_concref_r<sc_concref_r<T1, T2>, T3> concat(
1260 sc_concref_r<T1, T2>, sc_proxy<T3> &);
1262 template <class T1, class T2>
1263 inline sc_concref_r<sc_concref_r<T1, T2>, sc_lv_base> concat(
1264 sc_concref<T1, T2>, const char *);
1266 template <class T1, class T2>
1267 inline sc_concref_r<sc_lv_base, sc_concref_r<T1, T2> > concat(
1268 const char *, sc_concref<T1, T2>);
1270 template <class T1, class T2>
1271 inline sc_concref_r<sc_concref_r<T1, T2>, sc_lv_base> concat(
1272 sc_concref<T1, T2>, const sc_logic &);
1274 template <class T1, class T2>
1275 inline sc_concref_r<sc_lv_base, sc_concref_r<T1, T2> > concat(
1276 const sc_logic &, sc_concref<T1, T2>);
1278 template <class T1, class T2>
1279 inline sc_concref_r<sc_concref_r<T1, T2>, sc_bv_base> concat(
1280 sc_concref<T1, T2>, bool);
1282 template <class T1, class T2>
1283 inline sc_concref_r<sc_bv_base, sc_concref_r<T1, T2> > concat(
1284 bool, sc_concref<T1, T2>);
1429 template <class T1, class T2, class T3>
1430 inline sc_concref<sc_concref<T1, T2>, sc_bitref<T3> > operator , (
1431 sc_concref<T1, T2>, sc_bitref<T3>);
1433 template <class T1, class T2, class T3>
1434 inline sc_concref<sc_concref<T1, T2>, sc_subref<T3> > operator , (
1435 sc_concref<T1, T2>, sc_subref<T3>);
1437 template <class T1, class T2, class T3, class T4>
1438 inline sc_concref<sc_concref<T1, T2>, sc_concref<T3, T4> > operator , (
1439 sc_concref<T1, T2>, sc_concref<T3, T4>);
1441 template <class T1, class T2, class T3>
1442 inline sc_concref<sc_concref<T1, T2>, T3> operator , (
1443 sc_concref<T1, T2>, sc_proxy<T3> &);
1446 template <class T1, class T2, class T3>
1447 inline sc_concref<sc_concref<T1, T2>, sc_bitref<T3> > concat(
1448 sc_concref<T1, T2>, sc_bitref<T3>);
1450 template <class T1, class T2, class T3>
1451 inline sc_concref<sc_concref<T1, T2>, sc_subref<T3> > concat(
1452 sc_concref<T1, T2>, sc_subref<T3>);
1454 template <class T1, class T2, class T3, class T4>
1455 inline sc_concref<sc_concref<T1, T2>, sc_concref<T3, T4> > concat(
1456 sc_concref<T1, T2>, sc_concref<T3, T4>);
1458 template <class T1, class T2, class T3>
1459 inline sc_concref<sc_concref<T1, T2>, T3> concat(
1460 sc_concref<T1, T2>, sc_proxy<T3> &);
1463 template <class T1, class T2>
1464 inline ::std::istream &operator >> (::std::istream &, sc_concref<T1, T2>);
1476 template <class T1, class T2>
1477 inline sc_concref_r<T1, sc_bitref_r<T2> > operator , (
1478 const sc_proxy<T1> &, sc_bitref_r<T2>);
1480 template <class T1, class T2>
1481 inline sc_concref_r<T1, sc_subref_r<T2> > operator , (
1482 const sc_proxy<T1> &, sc_subref_r<T2>);
1484 template <class T1, class T2, class T3>
1485 inline sc_concref_r<T1, sc_concref_r<T2, T3> > operator , (
1486 const sc_proxy<T1> &, sc_concref_r<T2, T3>);
1488 template <class T1, class T2>
1489 inline sc_concref_r<T1, T2> operator , (
1490 const sc_proxy<T1> &, const sc_proxy<T2> &);
1515 template <class T1, class T2>
1516 inline sc_concref_r<T1, sc_bitref_r<T2> > concat(
1517 const sc_proxy<T1> &, sc_bitref_r<T2>);
1519 template <class T1, class T2>
1520 inline sc_concref_r<T1, sc_subref_r<T2> > concat(
1521 const sc_proxy<T1> &, sc_subref_r<T2>);
1523 template <class T1, class T2, class T3>
1524 inline sc_concref_r<T1, sc_concref_r<T2, T3> > concat(
1525 const sc_proxy<T1> &, sc_concref_r<T2, T3>);
1527 template <class T1, class T2>
1528 inline sc_concref_r<T1, T2> concat(const sc_proxy<T1> &, const sc_proxy<T2> &);
1551 template <class T1, class T2>
1552 inline sc_concref_r<T1, sc_bitref_r<T2> > operator , (
1553 const sc_proxy<T1> &, sc_bitref<T2>);
1555 template <class T1, class T2>
1556 inline sc_concref_r<T1, sc_bitref_r<T2> > operator , (
1557 sc_proxy<T1> &, sc_bitref_r<T2>);
1559 template <class T1, class T2>
1560 inline sc_concref_r<T1, sc_subref_r<T2> > operator , (
1561 const sc_proxy<T1> &, sc_subref<T2>);
1563 template <class T1, class T2>
1564 inline sc_concref_r<T1, sc_subref_r<T2> > operator , (
1565 sc_proxy<T1> &, sc_subref_r<T2>);
1567 template <class T1, class T2, class T3>
1568 inline sc_concref_r<T1, sc_concref_r<T2, T3> > operator , (
1569 const sc_proxy<T1> &, sc_concref<T2, T3>);
1571 template <class T1, class T2, class T3>
1572 inline sc_concref_r<T1, sc_concref_r<T2, T3> > operator , (
1573 sc_proxy<T1> &, sc_concref_r<T2, T3>);
1575 template <class T1, class T2>
1576 inline sc_concref_r<T1, T2> operator , (const sc_proxy<T1> &, sc_proxy<T2> &);
1578 template <class T1, class T2>
1579 inline sc_concref_r<T1, T2> operator , (sc_proxy<T1> &, const sc_proxy<T2> &);
1602 template <class T1, class T2>
1603 inline sc_concref_r<T1, sc_bitref_r<T2> > concat(
1604 const sc_proxy<T1> &, sc_bitref<T2>);
1606 template <class T1, class T2>
1607 inline sc_concref_r<T1, sc_bitref_r<T2> > concat(
1608 sc_proxy<T1> &, sc_bitref_r<T2>);
1610 template <class T1, class T2>
1611 inline sc_concref_r<T1, sc_subref_r<T2> > concat(
1612 const sc_proxy<T1> &, sc_subref<T2>);
1614 template <class T1, class T2>
1615 inline sc_concref_r<T1, sc_subref_r<T2> > concat(
1616 sc_proxy<T1> &, sc_subref_r<T2>);
1618 template <class T1, class T2, class T3>
1619 inline sc_concref_r<T1, sc_concref_r<T2, T3> > concat(
1620 const sc_proxy<T1> &, sc_concref<T2, T3>);
1622 template <class T1, class T2, class T3>
1623 inline sc_concref_r<T1, sc_concref_r<T2, T3> > concat(
1624 sc_proxy<T1> &, sc_concref_r<T2, T3>);
1626 template <class T1, class T2>
1627 inline sc_concref_r<T1, T2> concat(const sc_proxy<T1> &, sc_proxy<T2> &);
1629 template <class T1, class T2>
1630 inline sc_concref_r<T1, T2> concat(sc_proxy<T1> &, const sc_proxy<T2> &);
1652 template <class T1, class T2>
1653 inline sc_concref<T1,sc_bitref<T2> > operator , (
1654 sc_proxy<T1> &, sc_bitref<T2>);
1656 template <class T1, class T2>
1657 inline sc_concref<T1, sc_subref<T2> > operator , (
1658 sc_proxy<T1> &, sc_subref<T2>);
1660 template <class T1, class T2, class T3>
1661 inline sc_concref<T1, sc_concref<T2, T3> > operator , (
1662 sc_proxy<T1> &, sc_concref<T2, T3>);
1664 template <class T1, class T2>
1665 inline sc_concref<T1, T2> operator , (sc_proxy<T1> &, sc_proxy<T2> &);
1668 template <class T1, class T2>
1669 inline sc_concref<T1, sc_bitref<T2> > concat(sc_proxy<T1> &, sc_bitref<T2>);
1671 template <class T1, class T2>
1672 inline sc_concref<T1, sc_subref<T2> > concat(sc_proxy<T1> &, sc_subref<T2>);
1674 template <class T1, class T2, class T3>
1675 inline sc_concref<T1, sc_concref<T2, T3> > concat(
1676 sc_proxy<T1> &, sc_concref<T2, T3>);
1678 template <class T1, class T2>
1679 inline sc_concref<T1, T2> concat(sc_proxy<T1> &, sc_proxy<T2> &);
1693 template <class T1, class T2>
1695 operator & (const sc_bitref_r<T1> &a, const sc_bitref_r<T2> &b)
1701 template <class T1, class T2>
1703 operator | (const sc_bitref_r<T1> &a, const sc_bitref_r<T2> &b)
1709 template <class T1, class T2>
1711 operator ^ (const sc_bitref_r<T1> &a, const sc_bitref_r<T2> &b)
1717 template <class T1, class T2>
1719 operator == (const sc_bitref_r<T1> &a, const sc_bitref_r<T2> &b)
1724 template <class T1, class T2>
1726 operator != (const sc_bitref_r<T1> &a, const sc_bitref_r<T2> &b)
1769 template <class T1, class T2>
1770 inline sc_concref_r<sc_bitref_r<T1>, sc_bitref_r<T2> >
1771 operator , (sc_bitref_r<T1> a, sc_bitref_r<T2> b)
1773 return sc_concref_r<sc_bitref_r<T1>, sc_bitref_r<T2> >(
1777 template <class T1, class T2>
1778 inline sc_concref_r<sc_bitref_r<T1>, sc_subref_r<T2> >
1779 operator , (sc_bitref_r<T1> a, sc_subref_r<T2> b)
1781 return sc_concref_r<sc_bitref_r<T1>, sc_subref_r<T2> >(
1785 template <class T1, class T2, class T3>
1786 inline sc_concref_r<sc_bitref_r<T1>, sc_concref_r<T2, T3> >
1787 operator , (sc_bitref_r<T1> a, sc_concref_r<T2, T3> b)
1789 return sc_concref_r<sc_bitref_r<T1>, sc_concref_r<T2, T3> >(
1793 template <class T1, class T2>
1794 inline sc_concref_r<sc_bitref_r<T1>, T2>
1795 operator , (sc_bitref_r<T1> a, const sc_proxy<T2> &b)
1797 return sc_concref_r<sc_bitref_r<T1>, T2>(
1802 template <class T1, class T2>
1804 sc_concref_r<sc_bitref_r<T1>, sc_bitref_r<T2> >
1805 concat(sc_bitref_r<T1> a, sc_bitref_r<T2> b)
1807 return sc_concref_r<sc_bitref_r<T1>, sc_bitref_r<T2> >(
1811 template <class T1, class T2>
1812 inline sc_concref_r<sc_bitref_r<T1>, sc_subref_r<T2> >
1813 concat(sc_bitref_r<T1> a, sc_subref_r<T2> b)
1815 return sc_concref_r<sc_bitref_r<T1>, sc_subref_r<T2> >(
1819 template <class T1, class T2, class T3>
1820 inline sc_concref_r<sc_bitref_r<T1>, sc_concref_r<T2, T3> >
1821 concat(sc_bitref_r<T1> a, sc_concref_r<T2, T3> b)
1823 return sc_concref_r<sc_bitref_r<T1>, sc_concref_r<T2, T3> >(
1827 template <class T1, class T2>
1828 inline sc_concref_r<sc_bitref_r<T1>, T2>
1829 concat(sc_bitref_r<T1> a, const sc_proxy<T2> &b)
1831 return sc_concref_r<sc_bitref_r<T1>, T2>(
1836 template <class T1, class T2>
1837 inline sc_concref_r<sc_bitref_r<T1>, sc_bitref_r<T2> >
1838 operator , (sc_bitref_r<T1> a, sc_bitref<T2> b)
1840 return sc_concref_r<sc_bitref_r<T1>, sc_bitref_r<T2> >(
1844 template <class T1, class T2>
1845 inline sc_concref_r<sc_bitref_r<T1>, sc_bitref_r<T2> >
1846 operator , (sc_bitref<T1> a, sc_bitref_r<T2> b)
1848 return sc_concref_r<sc_bitref_r<T1>, sc_bitref_r<T2> >(
1852 template <class T1, class T2>
1853 inline sc_concref_r<sc_bitref_r<T1>, sc_subref_r<T2> >
1854 operator , (sc_bitref_r<T1> a, sc_subref<T2> b)
1856 return sc_concref_r<sc_bitref_r<T1>, sc_subref_r<T2> >(
1860 template <class T1, class T2>
1861 inline sc_concref_r<sc_bitref_r<T1>, sc_subref_r<T2> >
1862 operator , (sc_bitref<T1> a, sc_subref_r<T2> b)
1864 return sc_concref_r<sc_bitref_r<T1>, sc_subref_r<T2> >(
1868 template <class T1, class T2, class T3>
1869 inline sc_concref_r<sc_bitref_r<T1>, sc_concref_r<T2, T3> >
1870 operator , (sc_bitref_r<T1> a, sc_concref<T2, T3> b)
1872 return sc_concref_r<sc_bitref_r<T1>, sc_concref_r<T2, T3> >(
1876 template <class T1, class T2, class T3>
1877 inline sc_concref_r<sc_bitref_r<T1>, sc_concref_r<T2, T3> >
1878 operator , (sc_bitref<T1> a, sc_concref_r<T2, T3> b)
1880 return sc_concref_r<sc_bitref_r<T1>, sc_concref_r<T2, T3> >(
1884 template <class T1, class T2>
1885 inline sc_concref_r<sc_bitref_r<T1>, T2>
1886 operator , (sc_bitref<T1> a, const sc_proxy<T2> &b)
1888 return sc_concref_r<sc_bitref_r<T1>, T2>(
1892 template <class T1, class T2>
1893 inline sc_concref_r<sc_bitref_r<T1>, T2>
1894 operator , (sc_bitref_r<T1> a, sc_proxy<T2> &b)
1896 return sc_concref_r<sc_bitref_r<T1>, T2>(
1901 template <class T1, class T2>
1902 inline sc_concref_r<sc_bitref_r<T1>, sc_bitref_r<T2> >
1903 concat(sc_bitref_r<T1> a, sc_bitref<T2> b)
1905 return sc_concref_r<sc_bitref_r<T1>, sc_bitref_r<T2> >(
1909 template <class T1, class T2>
1910 inline sc_concref_r<sc_bitref_r<T1>, sc_bitref_r<T2> >
1911 concat(sc_bitref<T1> a, sc_bitref_r<T2> b)
1913 return sc_concref_r<sc_bitref_r<T1>, sc_bitref_r<T2> >(
1917 template <class T1, class T2>
1918 inline sc_concref_r<sc_bitref_r<T1>, sc_subref_r<T2> >
1919 concat(sc_bitref_r<T1> a, sc_subref<T2> b)
1921 return sc_concref_r<sc_bitref_r<T1>, sc_subref_r<T2> >(
1925 template <class T1, class T2>
1926 inline sc_concref_r<sc_bitref_r<T1>, sc_subref_r<T2> >
1927 concat(sc_bitref<T1> a, sc_subref_r<T2> b)
1929 return sc_concref_r<sc_bitref_r<T1>, sc_subref_r<T2> >(
1933 template <class T1, class T2, class T3>
1934 inline sc_concref_r<sc_bitref_r<T1>, sc_concref_r<T2, T3> >
1935 concat(sc_bitref_r<T1> a, sc_concref<T2, T3> b)
1937 return sc_concref_r<sc_bitref_r<T1>, sc_concref_r<T2,T3> >(
1941 template <class T1, class T2, class T3>
1942 inline sc_concref_r<sc_bitref_r<T1>, sc_concref_r<T2, T3> >
1943 concat(sc_bitref<T1> a, sc_concref_r<T2, T3> b)
1945 return sc_concref_r<sc_bitref_r<T1>, sc_concref_r<T2,T3> >(
1949 template <class T1, class T2>
1950 inline sc_concref_r<sc_bitref_r<T1>, T2>
1951 concat(sc_bitref<T1> a, const sc_proxy<T2> &b)
1953 return sc_concref_r<sc_bitref_r<T1>, T2>(*a.clone(), b.back_cast(), 1);
1956 template <class T1, class T2>
1957 inline sc_concref_r<sc_bitref_r<T1>, T2>
1958 concat(sc_bitref_r<T1> a, sc_proxy<T2> &b)
1960 return sc_concref_r<sc_bitref_r<T1>, T2>(*a.clone(), b.back_cast(), 1);
2119 template <class T1, class T2>
2120 inline sc_concref<sc_bitref<T1>, sc_bitref<T2> >
2121 operator , (sc_bitref<T1> a, sc_bitref<T2> b)
2123 return sc_concref<sc_bitref<T1>, sc_bitref<T2> >(
2127 template <class T1, class T2>
2128 inline sc_concref<sc_bitref<T1>, sc_subref<T2> >
2129 operator , (sc_bitref<T1> a, sc_subref<T2> b)
2131 return sc_concref<sc_bitref<T1>, sc_subref<T2> >(
2135 template <class T1, class T2, class T3>
2136 inline sc_concref<sc_bitref<T1>, sc_concref<T2, T3> >
2137 operator , (sc_bitref<T1> a, sc_concref<T2, T3> b)
2139 return sc_concref<sc_bitref<T1>, sc_concref<T2, T3> >(
2143 template <class T1, class T2>
2144 inline sc_concref<sc_bitref<T1>, T2>
2145 operator , (sc_bitref<T1> a, sc_proxy<T2> &b)
2147 return sc_concref<sc_bitref<T1>, T2>(*a.clone(), b.back_cast(), 1);
2151 template <class T1, class T2>
2152 inline sc_concref<sc_bitref<T1>, sc_bitref<T2> >
2153 concat(sc_bitref<T1> a, sc_bitref<T2> b)
2155 return sc_concref<sc_bitref<T1>, sc_bitref<T2> >(
2159 template <class T1, class T2>
2160 inline sc_concref<sc_bitref<T1>, sc_subref<T2> >
2161 concat(sc_bitref<T1> a, sc_subref<T2> b)
2163 return sc_concref<sc_bitref<T1>, sc_subref<T2> >(
2167 template <class T1, class T2, class T3>
2168 inline sc_concref<sc_bitref<T1>, sc_concref<T2, T3> >
2169 concat(sc_bitref<T1> a, sc_concref<T2, T3> b)
2171 return sc_concref<sc_bitref<T1>, sc_concref<T2,T3> >(
2175 template <class T1, class T2>
2176 inline sc_concref<sc_bitref<T1>, T2>
2177 concat(sc_bitref<T1> a, sc_proxy<T2> &b)
2179 return sc_concref<sc_bitref<T1>, T2>(*a.clone(), b.back_cast(), 1);
2352 template <class T1, class T2>
2353 inline sc_concref_r<sc_subref_r<T1>, sc_bitref_r<T2> >
2354 operator , (sc_subref_r<T1> a, sc_bitref_r<T2> b)
2356 return sc_concref_r<sc_subref_r<T1>, sc_bitref_r<T2> >(
2360 template <class T1, class T2>
2361 inline sc_concref_r<sc_subref_r<T1>, sc_subref_r<T2> >
2362 operator , (sc_subref_r<T1> a, sc_subref_r<T2> b)
2364 return sc_concref_r<sc_subref_r<T1>, sc_subref_r<T2> >(
2368 template <class T1, class T2, class T3>
2369 inline sc_concref_r<sc_subref_r<T1>, sc_concref_r<T2, T3> >
2370 operator , (sc_subref_r<T1> a, sc_concref_r<T2, T3> b)
2372 return sc_concref_r<sc_subref_r<T1>, sc_concref_r<T2, T3> >(
2376 template <class T1, class T2>
2377 inline sc_concref_r<sc_subref_r<T1>, T2>
2378 operator , (sc_subref_r<T1> a, const sc_proxy<T2> &b)
2380 return sc_concref_r<sc_subref_r<T1>, T2>(
2385 template <class T1, class T2>
2386 inline sc_concref_r<sc_subref_r<T1>, sc_bitref_r<T2> >
2387 concat(sc_subref_r<T1> a, sc_bitref_r<T2> b)
2389 return sc_concref_r<sc_subref_r<T1>, sc_bitref_r<T2> >(
2393 template <class T1, class T2>
2394 inline sc_concref_r<sc_subref_r<T1>, sc_subref_r<T2> >
2395 concat(sc_subref_r<T1> a, sc_subref_r<T2> b)
2397 return sc_concref_r<sc_subref_r<T1>, sc_subref_r<T2> >(
2401 template <class T1, class T2, class T3>
2402 inline sc_concref_r<sc_subref_r<T1>, sc_concref_r<T2, T3> >
2403 concat(sc_subref_r<T1> a, sc_concref_r<T2, T3> b)
2405 return sc_concref_r<sc_subref_r<T1>, sc_concref_r<T2, T3> >(
2409 template <class T1, class T2>
2410 inline sc_concref_r<sc_subref_r<T1>, T2>
2411 concat(sc_subref_r<T1> a, const sc_proxy<T2> &b)
2413 return sc_concref_r<sc_subref_r<T1>, T2>(*a.clone(), b.back_cast(), 1);
2417 template <class T1, class T2>
2418 inline sc_concref_r<sc_subref_r<T1>, sc_bitref_r<T2> >
2419 operator , (sc_subref_r<T1> a, sc_bitref<T2> b)
2421 return sc_concref_r<sc_subref_r<T1>, sc_bitref_r<T2> >(
2425 template <class T1, class T2>
2426 inline sc_concref_r<sc_subref_r<T1>, sc_bitref_r<T2> >
2427 operator , (sc_subref<T1> a, sc_bitref_r<T2> b)
2429 return sc_concref_r<sc_subref_r<T1>, sc_bitref_r<T2> >(
2433 template <class T1, class T2>
2434 inline sc_concref_r<sc_subref_r<T1>, sc_subref_r<T2> >
2435 operator , (sc_subref_r<T1> a, sc_subref<T2> b)
2437 return sc_concref_r<sc_subref_r<T1>, sc_subref_r<T2> >(
2441 template <class T1, class T2>
2442 inline sc_concref_r<sc_subref_r<T1>, sc_subref_r<T2> >
2443 operator , (sc_subref<T1> a, sc_subref_r<T2> b)
2445 return sc_concref_r<sc_subref_r<T1>, sc_subref_r<T2> >(
2449 template <class T1, class T2, class T3>
2451 sc_concref_r<sc_subref_r<T1>, sc_concref_r<T2, T3> >
2452 operator , (sc_subref_r<T1> a, sc_concref<T2, T3> b)
2454 return sc_concref_r<sc_subref_r<T1>, sc_concref_r<T2, T3> >(
2458 template <class T1, class T2, class T3>
2459 inline sc_concref_r<sc_subref_r<T1>, sc_concref_r<T2, T3> >
2460 operator , (sc_subref<T1> a, sc_concref_r<T2, T3> b)
2462 return sc_concref_r<sc_subref_r<T1>, sc_concref_r<T2, T3> >(
2466 template <class T1, class T2>
2467 inline sc_concref_r<sc_subref_r<T1>, T2>
2468 operator , (sc_subref<T1> a, const sc_proxy<T2> &b)
2470 return sc_concref_r<sc_subref_r<T1>, T2>(*a.clone(), b.back_cast(), 1);
2473 template <class T1, class T2>
2474 inline sc_concref_r<sc_subref_r<T1>, T2>
2475 operator , (sc_subref_r<T1> a, sc_proxy<T2> &b)
2477 return sc_concref_r<sc_subref_r<T1>, T2>(*a.clone(), b.back_cast(), 1);
2481 template <class T1, class T2>
2482 inline sc_concref_r<sc_subref_r<T1>, sc_bitref_r<T2> >
2483 concat(sc_subref_r<T1> a, sc_bitref<T2> b)
2485 return sc_concref_r<sc_subref_r<T1>, sc_bitref_r<T2> >(
2489 template <class T1, class T2>
2490 inline sc_concref_r<sc_subref_r<T1>, sc_bitref_r<T2> >
2491 concat(sc_subref<T1> a, sc_bitref_r<T2> b)
2493 return sc_concref_r<sc_subref_r<T1>, sc_bitref_r<T2> >(
2497 template <class T1, class T2>
2498 inline sc_concref_r<sc_subref_r<T1>, sc_subref_r<T2> >
2499 concat(sc_subref_r<T1> a, sc_subref<T2> b)
2501 return sc_concref_r<sc_subref_r<T1>, sc_subref_r<T2> >(
2505 template <class T1, class T2>
2506 inline sc_concref_r<sc_subref_r<T1>, sc_subref_r<T2> >
2507 concat(sc_subref<T1> a, sc_subref_r<T2> b)
2509 return sc_concref_r<sc_subref_r<T1>, sc_subref_r<T2> >(
2513 template <class T1, class T2, class T3>
2514 inline sc_concref_r<sc_subref_r<T1>, sc_concref_r<T2, T3> >
2515 concat(sc_subref_r<T1> a, sc_concref<T2, T3> b)
2517 return sc_concref_r<sc_subref_r<T1>, sc_concref_r<T2, T3> >(
2521 template <class T1, class T2, class T3>
2522 inline sc_concref_r<sc_subref_r<T1>, sc_concref_r<T2, T3> >
2523 concat(sc_subref<T1> a, sc_concref_r<T2, T3> b)
2525 return sc_concref_r<sc_subref_r<T1>, sc_concref_r<T2, T3> >(
2529 template <class T1, class T2>
2530 inline sc_concref_r<sc_subref_r<T1>, T2>
2531 concat(sc_subref<T1> a, const sc_proxy<T2> &b)
2533 return sc_concref_r<sc_subref_r<T1>, T2>(*a.clone(), b.back_cast(), 1);
2536 template <class T1, class T2>
2537 inline sc_concref_r<sc_subref_r<T1>, T2>
2538 concat(sc_subref_r<T1> a, sc_proxy<T2> &b)
2540 return sc_concref_r<sc_subref_r<T1>, T2>(*a.clone(), b.back_cast(), 1);
2565 template <class T1, class T2>
2567 sc_concref<sc_subref<T1>, sc_bitref<T2> >
2568 operator , (sc_subref<T1> a, sc_bitref<T2> b)
2570 return sc_concref<sc_subref<T1>, sc_bitref<T2> >(
2574 template <class T1, class T2>
2575 inline sc_concref<sc_subref<T1>, sc_subref<T2> >
2576 operator , (sc_subref<T1> a, sc_subref<T2> b)
2578 return sc_concref<sc_subref<T1>, sc_subref<T2> >(
2582 template <class T1, class T2, class T3>
2583 inline sc_concref<sc_subref<T1>, sc_concref<T2,T3> >
2584 operator , (sc_subref<T1> a, sc_concref<T2, T3> b)
2586 return sc_concref<sc_subref<T1>, sc_concref<T2, T3> >(
2590 template <class T1, class T2>
2591 inline sc_concref<sc_subref<T1>, T2>
2592 operator , (sc_subref<T1> a, sc_proxy<T2> &b)
2594 return sc_concref<sc_subref<T1>, T2>(*a.clone(), b.back_cast(), 1);
2598 template <class T1, class T2>
2599 inline sc_concref<sc_subref<T1>, sc_bitref<T2> >
2600 concat(sc_subref<T1> a, sc_bitref<T2> b)
2602 return sc_concref<sc_subref<T1>, sc_bitref<T2> >(
2606 template <class T1, class T2>
2607 inline sc_concref<sc_subref<T1>, sc_subref<T2> >
2608 concat(sc_subref<T1> a, sc_subref<T2> b)
2610 return sc_concref<sc_subref<T1>, sc_subref<T2> >(
2614 template <class T1, class T2, class T3>
2615 inline sc_concref<sc_subref<T1>, sc_concref<T2, T3> >
2616 concat(sc_subref<T1> a, sc_concref<T2, T3> b)
2618 return sc_concref<sc_subref<T1>, sc_concref<T2, T3> >(
2622 template <class T1, class T2>
2623 inline sc_concref<sc_subref<T1>, T2>
2624 concat(sc_subref<T1> a, sc_proxy<T2> &b)
2626 return sc_concref<sc_subref<T1>, T2>(*a.clone(), b.back_cast(), 1);
2838 template <class T1, class T2, class T3>
2839 inline sc_concref_r<sc_concref_r<T1, T2>,sc_bitref_r<T3> >
2840 operator , (sc_concref_r<T1, T2> a, sc_bitref_r<T3> b)
2842 return sc_concref_r<sc_concref_r<T1, T2>,sc_bitref_r<T3> >(
2846 template <class T1, class T2, class T3>
2847 inline sc_concref_r<sc_concref_r<T1, T2>, sc_subref_r<T3> >
2848 operator , (sc_concref_r<T1, T2> a, sc_subref_r<T3> b)
2850 return sc_concref_r<sc_concref_r<T1, T2>, sc_subref_r<T3> >(
2854 template <class T1, class T2, class T3, class T4>
2855 inline sc_concref_r<sc_concref_r<T1, T2>, sc_concref_r<T3, T4> >
2856 operator , (sc_concref_r<T1, T2> a, sc_concref_r<T3, T4> b)
2858 return sc_concref_r<sc_concref_r<T1, T2>,sc_concref_r<T3, T4> >(
2862 template <class T1, class T2, class T3>
2863 inline sc_concref_r<sc_concref_r<T1, T2>, T3>
2864 operator , (sc_concref_r<T1, T2> a, const sc_proxy<T3> &b)
2866 return sc_concref_r<sc_concref_r<T1, T2>, T3>(
2871 template <class T1, class T2, class T3>
2872 inline sc_concref_r<sc_concref_r<T1, T2>, sc_bitref_r<T3> >
2873 concat(sc_concref_r<T1, T2> a, sc_bitref_r<T3> b)
2875 return sc_concref_r<sc_concref_r<T1, T2>, sc_bitref_r<T3> >(
2879 template <class T1, class T2, class T3>
2880 inline sc_concref_r<sc_concref_r<T1, T2>, sc_subref_r<T3> >
2881 concat(sc_concref_r<T1, T2> a, sc_subref_r<T3> b)
2883 return sc_concref_r<sc_concref_r<T1, T2>, sc_subref_r<T3> >(
2887 template <class T1, class T2, class T3, class T4>
2888 inline sc_concref_r<sc_concref_r<T1, T2>, sc_concref_r<T3, T4> >
2889 concat(sc_concref_r<T1, T2> a, sc_concref_r<T3, T4> b)
2891 return sc_concref_r<sc_concref_r<T1, T2>, sc_concref_r<T3, T4> >(
2895 template <class T1, class T2, class T3>
2896 inline sc_concref_r<sc_concref_r<T1, T2>, T3>
2897 concat(sc_concref_r<T1, T2> a, const sc_proxy<T3> &b)
2899 return sc_concref_r<sc_concref_r<T1, T2>, T3>(
2904 template <class T1, class T2, class T3>
2905 inline sc_concref_r<sc_concref_r<T1, T2>, sc_bitref_r<T3> >
2906 operator , (sc_concref_r<T1, T2> a, sc_bitref<T3> b)
2908 return sc_concref_r<sc_concref_r<T1, T2>, sc_bitref_r<T3> >(
2912 template <class T1, class T2, class T3>
2913 inline sc_concref_r<sc_concref_r<T1, T2>, sc_bitref_r<T3> >
2914 operator , (sc_concref<T1, T2> a, sc_bitref_r<T3> b)
2916 return sc_concref_r<sc_concref_r<T1, T2>, sc_bitref_r<T3> >(
2920 template <class T1, class T2, class T3>
2922 sc_concref_r<sc_concref_r<T1, T2>, sc_subref_r<T3> >
2923 operator , (sc_concref_r<T1, T2> a, sc_subref<T3> b)
2925 return sc_concref_r<sc_concref_r<T1, T2>, sc_subref_r<T3> >(
2929 template <class T1, class T2, class T3>
2930 inline sc_concref_r<sc_concref_r<T1, T2>, sc_subref_r<T3> >
2931 operator , (sc_concref<T1, T2> a, sc_subref_r<T3> b)
2933 return sc_concref_r<sc_concref_r<T1, T2>, sc_subref_r<T3> >(
2937 template <class T1, class T2, class T3, class T4>
2938 inline sc_concref_r<sc_concref_r<T1, T2>, sc_concref_r<T3, T4> >
2939 operator , (sc_concref_r<T1, T2> a, sc_concref<T3, T4> b)
2941 return sc_concref_r<sc_concref_r<T1, T2>, sc_concref_r<T3, T4> >(
2945 template <class T1, class T2, class T3, class T4>
2946 inline sc_concref_r<sc_concref_r<T1, T2>, sc_concref_r<T3, T4> >
2947 operator , (sc_concref<T1, T2> a, sc_concref_r<T3, T4> b)
2949 return sc_concref_r<sc_concref_r<T1, T2>, sc_concref_r<T3, T4> >(
2953 template <class T1, class T2, class T3>
2954 inline sc_concref_r<sc_concref_r<T1, T2>, T3>
2955 operator , (sc_concref<T1, T2> a, const sc_proxy<T3> &b)
2957 return sc_concref_r<sc_concref_r<T1, T2>, T3>(
2961 template <class T1, class T2, class T3>
2962 inline sc_concref_r<sc_concref_r<T1, T2>, T3>
2963 operator , (sc_concref_r<T1, T2> a, sc_proxy<T3> &b)
2965 return sc_concref_r<sc_concref_r<T1, T2>, T3>(
2970 template <class T1, class T2, class T3>
2971 inline sc_concref_r<sc_concref_r<T1, T2>, sc_bitref_r<T3> >
2972 concat(sc_concref_r<T1, T2> a, sc_bitref<T3> b)
2974 return sc_concref_r<sc_concref_r<T1, T2>, sc_bitref_r<T3> >(
2978 template <class T1, class T2, class T3>
2979 inline sc_concref_r<sc_concref_r<T1, T2>, sc_bitref_r<T3> >
2980 concat(sc_concref<T1, T2> a, sc_bitref_r<T3> b)
2982 return sc_concref_r<sc_concref_r<T1, T2>, sc_bitref_r<T3> >(
2986 template <class T1, class T2, class T3>
2987 inline sc_concref_r<sc_concref_r<T1, T2>, sc_subref_r<T3> >
2988 concat(sc_concref_r<T1, T2> a, sc_subref<T3> b)
2990 return sc_concref_r<sc_concref_r<T1, T2>, sc_subref_r<T3> >(
2994 template <class T1, class T2, class T3>
2995 inline sc_concref_r<sc_concref_r<T1, T2>, sc_subref_r<T3> >
2996 concat(sc_concref<T1, T2> a, sc_subref_r<T3> b)
2998 return sc_concref_r<sc_concref_r<T1, T2>, sc_subref_r<T3> >(
3002 template <class T1, class T2, class T3, class T4>
3003 inline sc_concref_r<sc_concref_r<T1, T2>, sc_concref_r<T3, T4> >
3004 concat(sc_concref_r<T1, T2> a, sc_concref<T3, T4> b)
3006 return sc_concref_r<sc_concref_r<T1, T2>, sc_concref_r<T3, T4> >(
3010 template <class T1, class T2, class T3, class T4>
3011 inline sc_concref_r<sc_concref_r<T1, T2>, sc_concref_r<T3, T4> >
3012 concat(sc_concref<T1, T2> a, sc_concref_r<T3, T4> b)
3014 return sc_concref_r<sc_concref_r<T1, T2>, sc_concref_r<T3, T4> >(
3018 template <class T1, class T2, class T3>
3019 inline sc_concref_r<sc_concref_r<T1, T2>, T3>
3020 concat(sc_concref<T1, T2> a, const sc_proxy<T3> &b)
3022 return sc_concref_r<sc_concref_r<T1, T2>, T3>(
3026 template <class T1, class T2, class T3>
3027 inline sc_concref_r<sc_concref_r<T1, T2>, T3>
3028 concat(sc_concref_r<T1, T2> a, sc_proxy<T3> &b)
3030 return sc_concref_r<sc_concref_r<T1, T2>, T3>(
3042 template <class T1, class T2>
3044 sc_concref<T1, T2>::scan(::std::istream &is)
3052 template <class T1, class T2, class T3>
3053 inline sc_concref<sc_concref<T1, T2>, sc_bitref<T3> >
3054 operator , (sc_concref<T1, T2> a, sc_bitref<T3> b)
3056 return sc_concref<sc_concref<T1, T2>, sc_bitref<T3> >(
3060 template <class T1, class T2, class T3>
3061 inline sc_concref<sc_concref<T1, T2>, sc_subref<T3> >
3062 operator , (sc_concref<T1, T2> a, sc_subref<T3>b)
3064 return sc_concref<sc_concref<T1, T2>, sc_subref<T3> >(
3068 template <class T1, class T2, class T3, class T4>
3069 inline sc_concref<sc_concref<T1, T2>, sc_concref<T3, T4> >
3070 operator , (sc_concref<T1, T2> a, sc_concref<T3, T4> b)
3072 return sc_concref<sc_concref<T1, T2>, sc_concref<T3, T4> >(
3076 template <class T1, class T2, class T3>
3077 inline sc_concref<sc_concref<T1, T2>, T3>
3078 operator , (sc_concref<T1, T2> a, sc_proxy<T3> &b)
3080 return sc_concref<sc_concref<T1, T2>, T3>(
3085 template <class T1, class T2, class T3>
3086 inline sc_concref<sc_concref<T1, T2>, sc_bitref<T3> >
3087 concat(sc_concref<T1, T2> a, sc_bitref<T3> b)
3089 return sc_concref<sc_concref<T1, T2>, sc_bitref<T3> >(
3093 template <class T1, class T2, class T3>
3094 inline sc_concref<sc_concref<T1, T2>, sc_subref<T3> >
3095 concat(sc_concref<T1, T2> a, sc_subref<T3> b)
3097 return sc_concref<sc_concref<T1, T2>, sc_subref<T3> >(
3101 template <class T1, class T2, class T3, class T4>
3102 inline sc_concref<sc_concref<T1, T2>, sc_concref<T3, T4> >
3103 concat(sc_concref<T1, T2> a, sc_concref<T3, T4> b)
3105 return sc_concref<sc_concref<T1, T2>, sc_concref<T3, T4> >(
3109 template <class T1, class T2, class T3>
3110 inline sc_concref<sc_concref<T1, T2>, T3>
3111 concat(sc_concref<T1, T2> a, sc_proxy<T3> &b)
3113 return sc_concref<sc_concref<T1, T2>, T3>(
3135 template <class T1, class T2>
3136 inline sc_concref_r<T1, sc_bitref_r<T2> >
3137 operator , (const sc_proxy<T1> &a, sc_bitref_r<T2> b)
3139 return sc_concref_r<T1, sc_bitref_r<T2> >(
3143 template <class T1, class T2>
3144 inline sc_concref_r<T1, sc_subref_r<T2> >
3145 operator , (const sc_proxy<T1> &a, sc_subref_r<T2> b)
3147 return sc_concref_r<T1, sc_subref_r<T2> >(
3151 template <class T1, class T2, class T3>
3152 inline sc_concref_r<T1, sc_concref_r<T2, T3> >
3153 operator , (const sc_proxy<T1> &a, sc_concref_r<T2, T3> b)
3155 return sc_concref_r<T1, sc_concref_r<T2, T3> >(
3159 template <class T1, class T2>
3160 inline sc_concref_r<T1, T2>
3161 operator , (const sc_proxy<T1> &a, const sc_proxy<T2> &b)
3163 return sc_concref_r<T1, T2>(a.back_cast(), b.back_cast());
3167 template <class T1, class T2>
3168 inline sc_concref_r<T1, sc_bitref_r<T2> >
3169 concat(const sc_proxy<T1> &a, sc_bitref_r<T2> b)
3171 return sc_concref_r<T1, sc_bitref_r<T2> >(a.back_cast(), *b.clone(), 2);
3174 template <class T1, class T2>
3175 inline sc_concref_r<T1, sc_subref_r<T2> >
3176 concat(const sc_proxy<T1> &a, sc_subref_r<T2> b)
3178 return sc_concref_r<T1, sc_subref_r<T2> >(a.back_cast(), *b.clone(), 2);
3181 template <class T1, class T2, class T3>
3182 inline sc_concref_r<T1, sc_concref_r<T2, T3> >
3183 concat(const sc_proxy<T1> &a, sc_concref_r<T2, T3> b )
3185 return sc_concref_r<T1, sc_concref_r<T2, T3> >(
3189 template <class T1, class T2>
3190 inline sc_concref_r<T1, T2>
3191 concat(const sc_proxy<T1> &a, const sc_proxy<T2> &b)
3193 return sc_concref_r<T1, T2>(a.back_cast(), b.back_cast());
3197 template <class T1, class T2>
3198 inline sc_concref_r<T1, sc_bitref_r<T2> >
3199 operator , (const sc_proxy<T1> &a, sc_bitref<T2> b)
3201 return sc_concref_r<T1, sc_bitref_r<T2> >(a.back_cast(), *b.clone(), 2);
3204 template <class T1, class T2>
3205 inline sc_concref_r<T1, sc_bitref_r<T2> >
3206 operator , (sc_proxy<T1> &a, sc_bitref_r<T2> b)
3208 return sc_concref_r<T1, sc_bitref_r<T2> >(a.back_cast(), *b.clone(), 2);
3211 template <class T1, class T2>
3212 inline sc_concref_r<T1, sc_subref_r<T2> >
3213 operator , (const sc_proxy<T1> &a, sc_subref<T2> b)
3215 return sc_concref_r<T1, sc_subref_r<T2> >(a.back_cast(), *b.clone(), 2);
3218 template <class T1, class T2>
3219 inline sc_concref_r<T1, sc_subref_r<T2> >
3220 operator , (sc_proxy<T1> &a, sc_subref_r<T2> b)
3222 return sc_concref_r<T1, sc_subref_r<T2> >(a.back_cast(), *b.clone(), 2);
3225 template <class T1, class T2, class T3>
3226 inline sc_concref_r<T1, sc_concref_r<T2, T3> >
3227 operator , (const sc_proxy<T1> &a, sc_concref<T2, T3> b)
3229 return sc_concref_r<T1, sc_concref_r<T2, T3> >(
3233 template <class T1, class T2, class T3>
3234 inline sc_concref_r<T1, sc_concref_r<T2, T3> >
3235 operator , (sc_proxy<T1> &a, sc_concref_r<T2, T3> b)
3237 return sc_concref_r<T1, sc_concref_r<T2, T3> >(
3241 template <class T1, class T2>
3242 inline sc_concref_r<T1, T2>
3243 operator , (const sc_proxy<T1> &a, sc_proxy<T2> &b)
3245 return sc_concref_r<T1, T2>(a.back_cast(), b.back_cast());
3248 template <class T1, class T2>
3249 inline sc_concref_r<T1, T2>
3250 operator , (sc_proxy<T1> &a, const sc_proxy<T2> &b)
3252 return sc_concref_r<T1, T2>(a.back_cast(), b.back_cast());
3256 template <class T1, class T2>
3257 inline sc_concref_r<T1, sc_bitref_r<T2> >
3258 concat(const sc_proxy<T1> &a, sc_bitref<T2> b)
3260 return sc_concref_r<T1, sc_bitref_r<T2> >(a.back_cast(), *b.clone(), 2);
3263 template <class T1, class T2>
3264 inline sc_concref_r<T1, sc_bitref_r<T2> >
3265 concat(sc_proxy<T1> &a, sc_bitref_r<T2> b)
3267 return sc_concref_r<T1, sc_bitref_r<T2> >(a.back_cast(), *b.clone(), 2);
3270 template <class T1, class T2>
3271 inline sc_concref_r<T1, sc_subref_r<T2> >
3272 concat(const sc_proxy<T1> &a, sc_subref<T2> b)
3274 return sc_concref_r<T1, sc_subref_r<T2> >(a.back_cast(), *b.clone(), 2);
3277 template <class T1, class T2>
3278 inline sc_concref_r<T1, sc_subref_r<T2> >
3279 concat(sc_proxy<T1> &a, sc_subref_r<T2> b)
3281 return sc_concref_r<T1, sc_subref_r<T2> >(a.back_cast(), *b.clone(), 2);
3284 template <class T1, class T2, class T3>
3285 inline sc_concref_r<T1, sc_concref_r<T2, T3> >
3286 concat(const sc_proxy<T1> &a, sc_concref<T2, T3> b)
3288 return sc_concref_r<T1, sc_concref_r<T2, T3> >(
3292 template <class T1, class T2, class T3>
3293 inline sc_concref_r<T1, sc_concref_r<T2, T3> >
3294 concat(sc_proxy<T1> &a, sc_concref_r<T2, T3> b)
3296 return sc_concref_r<T1, sc_concref_r<T2, T3> >(
3300 template <class T1, class T2>
3301 inline sc_concref_r<T1, T2>
3302 concat(const sc_proxy<T1> &a, sc_proxy<T2> &b)
3304 return sc_concref_r<T1, T2>(a.back_cast(), b.back_cast());
3307 template <class T1, class T2>
3308 inline sc_concref_r<T1, T2>
3309 concat(sc_proxy<T1> &a, const sc_proxy<T2> &b)
3311 return sc_concref_r<T1, T2>(a.back_cast(), b.back_cast());
3317 template <class T1, class T2>
3318 inline sc_concref<T1, sc_bitref<T2> >
3319 operator , (sc_proxy<T1> &a, sc_bitref<T2> b)
3321 return sc_concref<T1, sc_bitref<T2> >(a.back_cast(), *b.clone(), 2);
3324 template <class T1, class T2>
3325 inline sc_concref<T1, sc_subref<T2> >
3326 operator , (sc_proxy<T1> &a, sc_subref<T2> b)
3328 return sc_concref<T1, sc_subref<T2> >(a.back_cast(), *b.clone(), 2);
3331 template <class T1, class T2, class T3>
3332 inline sc_concref<T1, sc_concref<T2, T3> >
3333 operator , (sc_proxy<T1> &a, sc_concref<T2, T3> b)
3335 return sc_concref<T1, sc_concref<T2, T3> >(a.back_cast(), *b.clone(), 2);
3338 template <class T1, class T2>
3339 inline sc_concref<T1, T2>
3340 operator , (sc_proxy<T1> &a, sc_proxy<T2> &b)
3342 return sc_concref<T1, T2>(a.back_cast(), b.back_cast());
3346 template <class T1, class T2>
3347 inline sc_concref<T1, sc_bitref<T2> >
3348 concat(sc_proxy<T1> &a, sc_bitref<T2> b)
3350 return sc_concref<T1, sc_bitref<T2> >(a.back_cast(), *b.clone(), 2);
3353 template <class T1, class T2>
3354 inline sc_concref<T1, sc_subref<T2> >
3355 concat(sc_proxy<T1> &a, sc_subref<T2> b)
3357 return sc_concref<T1, sc_subref<T2> >(a.back_cast(), *b.clone(), 2);
3360 template <class T1, class T2, class T3>
3361 inline sc_concref<T1, sc_concref<T2, T3> >
3362 concat(sc_proxy<T1> &a, sc_concref<T2, T3> b)
3364 return sc_concref<T1, sc_concref<T2, T3> >(a.back_cast(), *b.clone(), 2);
3367 template <class T1, class T2>
3368 inline sc_concref<T1, T2>
3369 concat(sc_proxy<T1> &a, sc_proxy<T2> &b)
3371 return sc_concref<T1, T2>(a.back_cast(), b.back_cast());