diff --git a/src/db/db/dbNetlist.cc b/src/db/db/dbNetlist.cc index 937128f0b..3a51a782a 100644 --- a/src/db/db/dbNetlist.cc +++ b/src/db/db/dbNetlist.cc @@ -486,67 +486,7 @@ static std::string pin2string (const db::Pin &pin) } } -std::string Netlist::to_string_old () const -{ - std::string res; - for (db::Netlist::const_circuit_iterator c = begin_circuits (); c != end_circuits (); ++c) { - - std::string ps; - for (db::Circuit::const_pin_iterator p = c->begin_pins (); p != c->end_pins (); ++p) { - if (! ps.empty ()) { - ps += ","; - } - ps += pin2string (*p) + "=" + net2string (c->net_for_pin (p->id ())); - } - - res += std::string ("Circuit ") + c->name () + " (" + ps + "):\n"; - -#if 0 // for debugging - for (db::Circuit::const_net_iterator n = c->begin_nets (); n != c->end_nets (); ++n) { - res += " N" + net_name (n.operator-> ()) + " pins=" + tl::to_string (n->pin_count ()) + " sc_pins=" + tl::to_string (n->subcircuit_pin_count ()) + " terminals=" + tl::to_string (n->terminal_count ()) + "\n"; - } -#endif - - for (db::Circuit::const_device_iterator d = c->begin_devices (); d != c->end_devices (); ++d) { - std::string ts; - const std::vector &td = d->device_class ()->terminal_definitions (); - for (std::vector::const_iterator t = td.begin (); t != td.end (); ++t) { - if (t != td.begin ()) { - ts += ","; - } - ts += t->name () + "=" + net2string (d->net_for_terminal (t->id ())); - } - std::string ps; - const std::vector &pd = d->device_class ()->parameter_definitions (); - for (std::vector::const_iterator p = pd.begin (); p != pd.end (); ++p) { - if (p != pd.begin ()) { - ps += ","; - } - ps += p->name () + "=" + tl::to_string (d->parameter_value (p->id ())); - } - res += std::string (" D") + d->device_class ()->name () + " " + device2string (*d) + " (" + ts + ") [" + ps + "]\n"; - } - - for (db::Circuit::const_subcircuit_iterator sc = c->begin_subcircuits (); sc != c->end_subcircuits (); ++sc) { - std::string ps; - const db::SubCircuit &subcircuit = *sc; - const db::Circuit *circuit = sc->circuit_ref (); - for (db::Circuit::const_pin_iterator p = circuit->begin_pins (); p != circuit->end_pins (); ++p) { - if (p != circuit->begin_pins ()) { - ps += ","; - } - const db::Pin &pin = *p; - ps += pin2string (pin) + "=" + net2string (subcircuit.net_for_pin (pin.id ())); - } - res += std::string (" X") + circuit->name () + " " + subcircuit2string (*sc) + " (" + ps + ")\n"; - } - - } - - return res; -} - -std::string Netlist::to_parsable_string () const +std::string Netlist::to_string () const { std::string res; for (db::Netlist::const_circuit_iterator c = begin_circuits (); c != end_circuits (); ++c) { diff --git a/src/db/db/dbNetlist.h b/src/db/db/dbNetlist.h index b563aa493..aeae88923 100644 --- a/src/db/db/dbNetlist.h +++ b/src/db/db/dbNetlist.h @@ -87,19 +87,12 @@ public: */ void clear (); - /** - * @brief Returns a string representation of the netlist - * - * This method is basically intended to testing. - */ - std::string to_string_old () const; - /** * @brief Returns a parsable string representation of the netlist * * This method returns a string suitable for being put into from_string. */ - std::string to_parsable_string () const; + std::string to_string () const; /** * @brief Reads a netlist from the string generated by to_parsable_string diff --git a/src/db/db/gsiDeclDbNetlist.cc b/src/db/db/gsiDeclDbNetlist.cc index 9c8e0ac9f..0b5b4d0d8 100644 --- a/src/db/db/gsiDeclDbNetlist.cc +++ b/src/db/db/gsiDeclDbNetlist.cc @@ -972,7 +972,7 @@ Class decl_dbNetlist ("db", "Netlist", gsi::iterator ("each_device_class", (db::Netlist::device_class_iterator (db::Netlist::*) ()) &db::Netlist::begin_device_classes, (db::Netlist::device_class_iterator (db::Netlist::*) ()) &db::Netlist::end_device_classes, "@brief Iterates over the device classes of the netlist" ) + - gsi::method ("to_s", &db::Netlist::to_parsable_string, + gsi::method ("to_s", &db::Netlist::to_string, "@brief Converts the netlist to a string representation.\n" "This method is intended for test purposes mainly." ) + diff --git a/src/db/unit_tests/dbLayoutToNetlistTests.cc b/src/db/unit_tests/dbLayoutToNetlistTests.cc index 54ce41d6a..35915880d 100644 --- a/src/db/unit_tests/dbLayoutToNetlistTests.cc +++ b/src/db/unit_tests/dbLayoutToNetlistTests.cc @@ -337,7 +337,7 @@ TEST(1_BasicExtraction) db::compare_layouts (_this, ly, au); // compare netlist as string - EXPECT_EQ (l2n.netlist ()->to_parsable_string (), + EXPECT_EQ (l2n.netlist ()->to_string (), "circuit RINGO ();\n" " subcircuit INV2 $1 (IN=$I8,$2=FB,OUT=OSC,$4=VSS,$5=VDD);\n" " subcircuit INV2 $2 (IN=FB,$2=$I38,OUT=$I19,$4=VSS,$5=VDD);\n" @@ -495,7 +495,7 @@ TEST(1_BasicExtraction) l2n.netlist ()->purge (); // compare netlist as string - EXPECT_EQ (l2n.netlist ()->to_parsable_string (), + EXPECT_EQ (l2n.netlist ()->to_string (), "circuit RINGO (FB=FB,OSC=OSC,VSS=VSS,VDD=VDD);\n" " subcircuit INV2 $1 (IN=$I8,$2=FB,OUT=OSC,$4=VSS,$5=VDD);\n" " subcircuit INV2 $2 (IN=FB,$2=(null),OUT=$I19,$4=VSS,$5=VDD);\n" @@ -689,7 +689,7 @@ TEST(2_Probing) dump_recursive_nets_to_layout (l2n, ly, dump_map, cm); // compare netlist as string - EXPECT_EQ (l2n.netlist ()->to_parsable_string (), + EXPECT_EQ (l2n.netlist ()->to_string (), "circuit RINGO ();\n" " subcircuit INV2PAIR $1 ($1=FB,$2=VDD,$3=VSS,$4=$I3,$5=OSC);\n" " subcircuit INV2PAIR $2 ($1=$I18,$2=VDD,$3=VSS,$4=FB,$5=$I9);\n" @@ -745,7 +745,7 @@ TEST(2_Probing) l2n.netlist ()->purge (); // compare netlist as string - EXPECT_EQ (l2n.netlist ()->to_parsable_string (), + EXPECT_EQ (l2n.netlist ()->to_string (), "circuit RINGO (FB=FB,OSC=OSC,VSS=VSS,VDD=VDD);\n" " subcircuit INV2PAIR $1 ($1=FB,$2=VDD,$3=VSS,$4=$I3,$5=OSC);\n" " subcircuit INV2PAIR $2 ($1=(null),$2=VDD,$3=VSS,$4=FB,$5=$I9);\n" @@ -968,7 +968,7 @@ TEST(3_GlobalNetConnections) dump_recursive_nets_to_layout (l2n, ly, dump_map, cm); // compare netlist as string - EXPECT_EQ (l2n.netlist ()->to_parsable_string (), + EXPECT_EQ (l2n.netlist ()->to_string (), "circuit RINGO ();\n" " subcircuit INV2PAIR $1 (BULK='BULK,VSS',$2=FB,$3=VDD,$4='BULK,VSS',$5=$I7,$6=OSC,$7=VDD);\n" " subcircuit INV2PAIR $2 (BULK='BULK,VSS',$2=$I22,$3=VDD,$4='BULK,VSS',$5=FB,$6=$I13,$7=VDD);\n" @@ -1024,7 +1024,7 @@ TEST(3_GlobalNetConnections) l2n.netlist ()->purge (); // compare netlist as string - EXPECT_EQ (l2n.netlist ()->to_parsable_string (), + EXPECT_EQ (l2n.netlist ()->to_string (), "circuit RINGO (FB=FB,OSC=OSC,VDD=VDD,'BULK,VSS'='BULK,VSS');\n" " subcircuit INV2PAIR $1 (BULK='BULK,VSS',$2=FB,$3=VDD,$4='BULK,VSS',$5=$I7,$6=OSC,$7=VDD);\n" " subcircuit INV2PAIR $2 (BULK='BULK,VSS',$2=(null),$3=VDD,$4='BULK,VSS',$5=FB,$6=$I13,$7=VDD);\n" @@ -1253,7 +1253,7 @@ TEST(4_GlobalNetDeviceExtraction) dump_recursive_nets_to_layout (l2n, ly, dump_map, cm); // compare netlist as string - EXPECT_EQ (l2n.netlist ()->to_parsable_string (), + EXPECT_EQ (l2n.netlist ()->to_string (), "circuit RINGO ();\n" " subcircuit INV2PAIR $1 (BULK='BULK,VSS',$2=FB,$3=VDD,$4='BULK,VSS',$5=$I7,$6=OSC,$7=VDD);\n" " subcircuit INV2PAIR $2 (BULK='BULK,VSS',$2=$I22,$3=VDD,$4='BULK,VSS',$5=FB,$6=$I13,$7=VDD);\n" @@ -1309,7 +1309,7 @@ TEST(4_GlobalNetDeviceExtraction) l2n.netlist ()->purge (); // compare netlist as string - EXPECT_EQ (l2n.netlist ()->to_parsable_string (), + EXPECT_EQ (l2n.netlist ()->to_string (), "circuit RINGO (FB=FB,OSC=OSC,VDD=VDD,'BULK,VSS'='BULK,VSS');\n" " subcircuit INV2PAIR $1 (BULK='BULK,VSS',$2=FB,$3=VDD,$4='BULK,VSS',$5=$I7,$6=OSC,$7=VDD);\n" " subcircuit INV2PAIR $2 (BULK='BULK,VSS',$2=(null),$3=VDD,$4='BULK,VSS',$5=FB,$6=$I13,$7=VDD);\n" @@ -1538,7 +1538,7 @@ TEST(5_DeviceExtractionWithDeviceCombination) dump_recursive_nets_to_layout (l2n, ly, dump_map, cm); // compare netlist as string - EXPECT_EQ (l2n.netlist ()->to_parsable_string (), + EXPECT_EQ (l2n.netlist ()->to_string (), "circuit RINGO ();\n" " subcircuit INV2PAIR $1 (BULK='BULK,VSS',$2=VDD,$3='BULK,VSS',$4=FB,$5=$I7,$6=OSC,$7=VDD);\n" " subcircuit INV2PAIR $2 (BULK='BULK,VSS',$2=VDD,$3='BULK,VSS',$4=$I22,$5=FB,$6=$I13,$7=VDD);\n" @@ -1591,7 +1591,7 @@ TEST(5_DeviceExtractionWithDeviceCombination) l2n.netlist ()->purge (); // compare netlist as string - EXPECT_EQ (l2n.netlist ()->to_parsable_string (), + EXPECT_EQ (l2n.netlist ()->to_string (), "circuit RINGO (FB=FB,OSC=OSC,VDD=VDD,'BULK,VSS'='BULK,VSS');\n" " subcircuit INV2PAIR $1 (BULK='BULK,VSS',$2=VDD,$3='BULK,VSS',$4=FB,$5=$I7,$6=OSC,$7=VDD);\n" " subcircuit INV2PAIR $2 (BULK='BULK,VSS',$2=VDD,$3='BULK,VSS',$4=(null),$5=FB,$6=$I13,$7=VDD);\n" @@ -1765,7 +1765,7 @@ TEST(6_MoreDeviceTypes) l2n.extract_netlist (); // compare netlist as string - EXPECT_EQ (l2n.netlist ()->to_parsable_string (), + EXPECT_EQ (l2n.netlist ()->to_string (), "circuit TOP ();\n" " device HVPMOS $1 (S=Z,G=$5,D=VDD2,B=$8) (L=1.5,W=4.05,AS=5.4675,AD=2.73375,PS=10.8,PD=5.4);\n" " device HVPMOS $2 (S=VDD2,G=Z,D=$5,B=$8) (L=1.5,W=4.05,AS=2.73375,AD=5.4675,PS=5.4,PD=10.8);\n" @@ -1921,7 +1921,7 @@ TEST(7_MoreByEmptyDeviceTypes) l2n.extract_netlist (); // compare netlist as string - EXPECT_EQ (l2n.netlist ()->to_parsable_string (), + EXPECT_EQ (l2n.netlist ()->to_string (), "circuit TOP ();\n" " device LVPMOS $1 (S=Z,G=$5,D=VDD2,B=$8) (L=1.5,W=4.05,AS=5.4675,AD=2.73375,PS=10.8,PD=5.4);\n" " device LVPMOS $2 (S=VDD2,G=Z,D=$5,B=$8) (L=1.5,W=4.05,AS=2.73375,AD=5.4675,PS=5.4,PD=10.8);\n" @@ -2099,7 +2099,7 @@ TEST(8_FlatExtraction) l2n.extract_netlist (); // compare netlist as string - EXPECT_EQ (l2n.netlist ()->to_parsable_string (), + EXPECT_EQ (l2n.netlist ()->to_string (), "circuit TOP ();\n" " device HVPMOS $1 (S=Z,G=$5,D=VDD2,B=$8) (L=1.5,W=4.05,AS=5.4675,AD=2.73375,PS=10.8,PD=5.4);\n" " device HVPMOS $2 (S=VDD2,G=Z,D=$5,B=$8) (L=1.5,W=4.05,AS=2.73375,AD=5.4675,PS=5.4,PD=10.8);\n" @@ -2282,7 +2282,7 @@ TEST(9_FlatExtractionWithExternalDSS) l2n.extract_netlist (); // compare netlist as string - EXPECT_EQ (l2n.netlist ()->to_parsable_string (), + EXPECT_EQ (l2n.netlist ()->to_string (), "circuit TOP ();\n" " device LVPMOS $1 (S=Z,G=$5,D=VDD2,B=$8) (L=1.5,W=4.05,AS=5.4675,AD=2.73375,PS=10.8,PD=5.4);\n" " device LVPMOS $2 (S=VDD2,G=Z,D=$5,B=$8) (L=1.5,W=4.05,AS=2.73375,AD=5.4675,PS=5.4,PD=10.8);\n" diff --git a/src/db/unit_tests/dbNetlistDeviceClassesTests.cc b/src/db/unit_tests/dbNetlistDeviceClassesTests.cc index a61bd37bb..37661487d 100644 --- a/src/db/unit_tests/dbNetlistDeviceClassesTests.cc +++ b/src/db/unit_tests/dbNetlistDeviceClassesTests.cc @@ -64,7 +64,7 @@ TEST(1_SerialResistors) r2->connect_terminal (db::DeviceClassResistor::terminal_id_B, n3); circuit->connect_pin (pin_b.id (), n3); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n3);\n" " device '' r1 (A=n1,B=n2) (R=1);\n" " device '' r2 (A=n2,B=n3) (R=3);\n" @@ -74,7 +74,7 @@ TEST(1_SerialResistors) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n3);\n" " device '' r1 (A=n1,B=n3) (R=4);\n" "end;\n" @@ -117,7 +117,7 @@ TEST(2_SerialResistors1Swapped) r2->connect_terminal (db::DeviceClassResistor::terminal_id_A, n3); circuit->connect_pin (pin_b.id (), n3); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n3);\n" " device '' r1 (A=n1,B=n2) (R=1);\n" " device '' r2 (A=n3,B=n2) (R=3);\n" @@ -127,7 +127,7 @@ TEST(2_SerialResistors1Swapped) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n3);\n" " device '' r1 (A=n1,B=n3) (R=4);\n" "end;\n" @@ -170,7 +170,7 @@ TEST(3_SerialResistors1OtherSwapped) r2->connect_terminal (db::DeviceClassResistor::terminal_id_B, n3); circuit->connect_pin (pin_b.id (), n3); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n3);\n" " device '' r1 (A=n2,B=n1) (R=1);\n" " device '' r2 (A=n2,B=n3) (R=3);\n" @@ -180,7 +180,7 @@ TEST(3_SerialResistors1OtherSwapped) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n3);\n" " device '' r1 (A=n3,B=n1) (R=4);\n" "end;\n" @@ -223,7 +223,7 @@ TEST(4_SerialResistors2Swapped) r2->connect_terminal (db::DeviceClassResistor::terminal_id_A, n3); circuit->connect_pin (pin_b.id (), n3); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n3);\n" " device '' r1 (A=n2,B=n1) (R=1);\n" " device '' r2 (A=n3,B=n2) (R=3);\n" @@ -233,7 +233,7 @@ TEST(4_SerialResistors2Swapped) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n3);\n" " device '' r1 (A=n3,B=n1) (R=4);\n" "end;\n" @@ -278,7 +278,7 @@ TEST(5_SerialResistorsNoCombination) r2->connect_terminal (db::DeviceClassResistor::terminal_id_B, n3); circuit->connect_pin (pin_b.id (), n3); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n3,C=n2);\n" " device '' r1 (A=n1,B=n2) (R=1);\n" " device '' r2 (A=n2,B=n3) (R=3);\n" @@ -288,7 +288,7 @@ TEST(5_SerialResistorsNoCombination) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n3,C=n2);\n" " device '' r1 (A=n1,B=n2) (R=1);\n" " device '' r2 (A=n2,B=n3) (R=3);\n" @@ -329,7 +329,7 @@ TEST(6_ParallelResistors) r1->connect_terminal (db::DeviceClassResistor::terminal_id_B, n2); r2->connect_terminal (db::DeviceClassResistor::terminal_id_B, n2); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2);\n" " device '' r1 (A=n1,B=n2) (R=2);\n" " device '' r2 (A=n1,B=n2) (R=3);\n" @@ -339,7 +339,7 @@ TEST(6_ParallelResistors) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2);\n" " device '' r1 (A=n1,B=n2) (R=1.2);\n" "end;\n" @@ -379,7 +379,7 @@ TEST(7_ParallelResistors1Swapped) r1->connect_terminal (db::DeviceClassResistor::terminal_id_A, n2); r2->connect_terminal (db::DeviceClassResistor::terminal_id_B, n2); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2);\n" " device '' r1 (A=n2,B=n1) (R=2);\n" " device '' r2 (A=n1,B=n2) (R=3);\n" @@ -389,7 +389,7 @@ TEST(7_ParallelResistors1Swapped) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2);\n" " device '' r1 (A=n2,B=n1) (R=1.2);\n" "end;\n" @@ -429,7 +429,7 @@ TEST(8_ParallelResistors1OtherSwapped) r1->connect_terminal (db::DeviceClassResistor::terminal_id_B, n2); r2->connect_terminal (db::DeviceClassResistor::terminal_id_A, n2); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2);\n" " device '' r1 (A=n1,B=n2) (R=2);\n" " device '' r2 (A=n2,B=n1) (R=3);\n" @@ -439,7 +439,7 @@ TEST(8_ParallelResistors1OtherSwapped) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2);\n" " device '' r1 (A=n1,B=n2) (R=1.2);\n" "end;\n" @@ -479,7 +479,7 @@ TEST(9_ParallelResistors2Swapped) r1->connect_terminal (db::DeviceClassResistor::terminal_id_A, n2); r2->connect_terminal (db::DeviceClassResistor::terminal_id_A, n2); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2);\n" " device '' r1 (A=n2,B=n1) (R=2);\n" " device '' r2 (A=n2,B=n1) (R=3);\n" @@ -489,7 +489,7 @@ TEST(9_ParallelResistors2Swapped) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2);\n" " device '' r1 (A=n2,B=n1) (R=1.2);\n" "end;\n" @@ -554,7 +554,7 @@ TEST(10_ComplexRegistorCombination) circuit->connect_pin (pin_b.id (), n4); r4->connect_terminal (db::DeviceClassResistor::terminal_id_B, n4); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n4);\n" " device '' r1 (A=n1,B=n2) (R=1);\n" " device '' r2 (A=n2,B=n3) (R=1);\n" @@ -566,7 +566,7 @@ TEST(10_ComplexRegistorCombination) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n4);\n" " device '' r4 (A=n1,B=n4) (R=2);\n" "end;\n" @@ -609,7 +609,7 @@ TEST(11_SerialInductors) l2->connect_terminal (db::DeviceClassResistor::terminal_id_B, n3); circuit->connect_pin (pin_b.id (), n3); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n3);\n" " device '' l1 (A=n1,B=n2) (L=1);\n" " device '' l2 (A=n2,B=n3) (L=3);\n" @@ -619,7 +619,7 @@ TEST(11_SerialInductors) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n3);\n" " device '' l1 (A=n1,B=n3) (L=4);\n" "end;\n" @@ -659,7 +659,7 @@ TEST(12_ParallelInductors) l1->connect_terminal (db::DeviceClassInductor::terminal_id_B, n2); l2->connect_terminal (db::DeviceClassInductor::terminal_id_B, n2); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2);\n" " device '' l1 (A=n1,B=n2) (L=2);\n" " device '' l2 (A=n1,B=n2) (L=3);\n" @@ -669,7 +669,7 @@ TEST(12_ParallelInductors) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2);\n" " device '' l1 (A=n1,B=n2) (L=1.2);\n" "end;\n" @@ -712,7 +712,7 @@ TEST(13_SerialCapacitors) c2->connect_terminal (db::DeviceClassCapacitor::terminal_id_B, n3); circuit->connect_pin (pin_b.id (), n3); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n3);\n" " device '' c1 (A=n1,B=n2) (C=2);\n" " device '' c2 (A=n2,B=n3) (C=3);\n" @@ -722,7 +722,7 @@ TEST(13_SerialCapacitors) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n3);\n" " device '' c1 (A=n1,B=n3) (C=1.2);\n" "end;\n" @@ -762,7 +762,7 @@ TEST(14_ParallelCapacitors) c1->connect_terminal (db::DeviceClassCapacitor::terminal_id_B, n2); c2->connect_terminal (db::DeviceClassCapacitor::terminal_id_B, n2); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2);\n" " device '' c1 (A=n1,B=n2) (C=1);\n" " device '' c2 (A=n1,B=n2) (C=3);\n" @@ -772,7 +772,7 @@ TEST(14_ParallelCapacitors) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2);\n" " device '' c1 (A=n1,B=n2) (C=4);\n" "end;\n" @@ -815,7 +815,7 @@ TEST(15_SerialDiodes) d2->connect_terminal (db::DeviceClassDiode::terminal_id_C, n3); circuit->connect_pin (pin_b.id (), n3); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n3);\n" " device '' d1 (A=n1,C=n2) (A=2);\n" " device '' d2 (A=n2,C=n3) (A=3);\n" @@ -827,7 +827,7 @@ TEST(15_SerialDiodes) // serial diodes are not combined! - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n3);\n" " device '' d1 (A=n1,C=n2) (A=2);\n" " device '' d2 (A=n2,C=n3) (A=3);\n" @@ -868,7 +868,7 @@ TEST(16_ParallelDiodes) d1->connect_terminal (db::DeviceClassDiode::terminal_id_C, n2); d2->connect_terminal (db::DeviceClassDiode::terminal_id_C, n2); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2);\n" " device '' d1 (A=n1,C=n2) (A=1);\n" " device '' d2 (A=n1,C=n2) (A=3);\n" @@ -878,7 +878,7 @@ TEST(16_ParallelDiodes) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2);\n" " device '' d1 (A=n1,C=n2) (A=4);\n" "end;\n" @@ -918,7 +918,7 @@ TEST(17_AntiParallelDiodes) d1->connect_terminal (db::DeviceClassDiode::terminal_id_C, n2); d2->connect_terminal (db::DeviceClassDiode::terminal_id_A, n2); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2);\n" " device '' d1 (A=n1,C=n2) (A=1);\n" " device '' d2 (A=n2,C=n1) (A=3);\n" @@ -930,7 +930,7 @@ TEST(17_AntiParallelDiodes) // anti-parallel diodes are not combined - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2);\n" " device '' d1 (A=n1,C=n2) (A=1);\n" " device '' d2 (A=n2,C=n1) (A=3);\n" @@ -988,7 +988,7 @@ TEST(20_ParallelMOS3Transistors) d1->connect_terminal (db::DeviceClassMOS3Transistor::terminal_id_G, n3); d2->connect_terminal (db::DeviceClassMOS3Transistor::terminal_id_G, n3); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2,C=n3);\n" " device '' d1 (S=n1,G=n3,D=n2) (L=0.5,W=1,AS=2,AD=3,PS=12,PD=13);\n" " device '' d2 (S=n1,G=n3,D=n2) (L=0.5,W=2,AS=3,AD=4,PS=13,PD=14);\n" @@ -998,7 +998,7 @@ TEST(20_ParallelMOS3Transistors) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2,C=n3);\n" " device '' d1 (S=n1,G=n3,D=n2) (L=0.5,W=3,AS=5,AD=7,PS=25,PD=27);\n" "end;\n" @@ -1055,7 +1055,7 @@ TEST(21_AntiParallelMOS3Transistors) d1->connect_terminal (db::DeviceClassMOS3Transistor::terminal_id_G, n3); d2->connect_terminal (db::DeviceClassMOS3Transistor::terminal_id_G, n3); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2,C=n3);\n" " device '' d1 (S=n1,G=n3,D=n2) (L=0.5,W=1,AS=2,AD=3,PS=12,PD=13);\n" " device '' d2 (S=n2,G=n3,D=n1) (L=0.5,W=2,AS=3,AD=4,PS=13,PD=14);\n" @@ -1065,7 +1065,7 @@ TEST(21_AntiParallelMOS3Transistors) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2,C=n3);\n" " device '' d1 (S=n1,G=n3,D=n2) (L=0.5,W=3,AS=5,AD=7,PS=25,PD=27);\n" "end;\n" @@ -1127,7 +1127,7 @@ TEST(22_ParallelMOS3TransistorsDisconnectedGates) circuit->connect_pin (pin_c2.id (), n4); d2->connect_terminal (db::DeviceClassMOS3Transistor::terminal_id_G, n4); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2,C1=n3,C2=n4);\n" " device '' d1 (S=n1,G=n3,D=n2) (L=0.5,W=1,AS=2,AD=3,PS=12,PD=13);\n" " device '' d2 (S=n1,G=n4,D=n2) (L=0.5,W=2,AS=3,AD=4,PS=13,PD=14);\n" @@ -1139,7 +1139,7 @@ TEST(22_ParallelMOS3TransistorsDisconnectedGates) // because of the disconnected gates, devices will no be joined: - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2,C1=n3,C2=n4);\n" " device '' d1 (S=n1,G=n3,D=n2) (L=0.5,W=1,AS=2,AD=3,PS=12,PD=13);\n" " device '' d2 (S=n1,G=n4,D=n2) (L=0.5,W=2,AS=3,AD=4,PS=13,PD=14);\n" @@ -1197,7 +1197,7 @@ TEST(23_ParallelMOS3TransistorsDifferentLength) d1->connect_terminal (db::DeviceClassMOS3Transistor::terminal_id_G, n3); d2->connect_terminal (db::DeviceClassMOS3Transistor::terminal_id_G, n3); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2,C=n3);\n" " device '' d1 (S=n1,G=n3,D=n2) (L=0.5,W=1,AS=2,AD=3,PS=12,PD=13);\n" " device '' d2 (S=n1,G=n3,D=n2) (L=0.75,W=2,AS=3,AD=4,PS=13,PD=14);\n" @@ -1209,7 +1209,7 @@ TEST(23_ParallelMOS3TransistorsDifferentLength) // because of different length, the devices will not be combined: - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2,C=n3);\n" " device '' d1 (S=n1,G=n3,D=n2) (L=0.5,W=1,AS=2,AD=3,PS=12,PD=13);\n" " device '' d2 (S=n1,G=n3,D=n2) (L=0.75,W=2,AS=3,AD=4,PS=13,PD=14);\n" @@ -1274,7 +1274,7 @@ TEST(30_ParallelMOS4Transistors) d1->connect_terminal (db::DeviceClassMOS4Transistor::terminal_id_B, n0); d2->connect_terminal (db::DeviceClassMOS4Transistor::terminal_id_B, n0); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2,C=n3,D=n0);\n" " device '' d1 (S=n1,G=n3,D=n2,B=n0) (L=0.5,W=1,AS=2,AD=3,PS=12,PD=13);\n" " device '' d2 (S=n1,G=n3,D=n2,B=n0) (L=0.5,W=2,AS=3,AD=4,PS=13,PD=14);\n" @@ -1284,7 +1284,7 @@ TEST(30_ParallelMOS4Transistors) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2,C=n3,D=n0);\n" " device '' d1 (S=n1,G=n3,D=n2,B=n0) (L=0.5,W=3,AS=5,AD=7,PS=25,PD=27);\n" "end;\n" @@ -1348,7 +1348,7 @@ TEST(31_AntiParallelMOS4Transistors) d1->connect_terminal (db::DeviceClassMOS4Transistor::terminal_id_B, n0); d2->connect_terminal (db::DeviceClassMOS4Transistor::terminal_id_B, n0); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2,C=n3,D=n0);\n" " device '' d1 (S=n1,G=n3,D=n2,B=n0) (L=0.5,W=1,AS=2,AD=3,PS=12,PD=13);\n" " device '' d2 (S=n2,G=n3,D=n1,B=n0) (L=0.5,W=2,AS=3,AD=4,PS=13,PD=14);\n" @@ -1358,7 +1358,7 @@ TEST(31_AntiParallelMOS4Transistors) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2,C=n3,D=n0);\n" " device '' d1 (S=n1,G=n3,D=n2,B=n0) (L=0.5,W=3,AS=5,AD=7,PS=25,PD=27);\n" "end;\n" @@ -1427,7 +1427,7 @@ TEST(32_ParallelMOS4TransistorsDisconnectedGates) d1->connect_terminal (db::DeviceClassMOS4Transistor::terminal_id_B, n0); d2->connect_terminal (db::DeviceClassMOS4Transistor::terminal_id_B, n0); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2,C1=n3a,C2=n3b,D=n0);\n" " device '' d1 (S=n1,G=n3a,D=n2,B=n0) (L=0.5,W=1,AS=2,AD=3,PS=12,PD=13);\n" " device '' d2 (S=n1,G=n3b,D=n2,B=n0) (L=0.5,W=2,AS=3,AD=4,PS=13,PD=14);\n" @@ -1439,7 +1439,7 @@ TEST(32_ParallelMOS4TransistorsDisconnectedGates) // not combined because gate is different: - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2,C1=n3a,C2=n3b,D=n0);\n" " device '' d1 (S=n1,G=n3a,D=n2,B=n0) (L=0.5,W=1,AS=2,AD=3,PS=12,PD=13);\n" " device '' d2 (S=n1,G=n3b,D=n2,B=n0) (L=0.5,W=2,AS=3,AD=4,PS=13,PD=14);\n" @@ -1509,7 +1509,7 @@ TEST(33_ParallelMOS4TransistorsDisconnectedBulk) circuit->connect_pin (pin_d2.id (), n0b); d2->connect_terminal (db::DeviceClassMOS4Transistor::terminal_id_B, n0b); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2,C=n3,D1=n0a,D2=n0b);\n" " device '' d1 (S=n1,G=n3,D=n2,B=n0a) (L=0.5,W=1,AS=2,AD=3,PS=12,PD=13);\n" " device '' d2 (S=n1,G=n3,D=n2,B=n0b) (L=0.5,W=2,AS=3,AD=4,PS=13,PD=14);\n" @@ -1521,7 +1521,7 @@ TEST(33_ParallelMOS4TransistorsDisconnectedBulk) nl.combine_devices (); nl.purge (); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2,C=n3,D1=n0a,D2=n0b);\n" " device '' d1 (S=n1,G=n3,D=n2,B=n0a) (L=0.5,W=1,AS=2,AD=3,PS=12,PD=13);\n" " device '' d2 (S=n1,G=n3,D=n2,B=n0b) (L=0.5,W=2,AS=3,AD=4,PS=13,PD=14);\n" @@ -1586,7 +1586,7 @@ TEST(34_ParallelMOS4TransistorsDifferentLength) d1->connect_terminal (db::DeviceClassMOS4Transistor::terminal_id_B, n0); d2->connect_terminal (db::DeviceClassMOS4Transistor::terminal_id_B, n0); - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2,C=n3,D=n0);\n" " device '' d1 (S=n1,G=n3,D=n2,B=n0) (L=0.5,W=1,AS=2,AD=3,PS=12,PD=13);\n" " device '' d2 (S=n1,G=n3,D=n2,B=n0) (L=0.75,W=2,AS=3,AD=4,PS=13,PD=14);\n" @@ -1598,7 +1598,7 @@ TEST(34_ParallelMOS4TransistorsDifferentLength) // not combined because length is different: - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit '' (A=n1,B=n2,C=n3,D=n0);\n" " device '' d1 (S=n1,G=n3,D=n2,B=n0) (L=0.5,W=1,AS=2,AD=3,PS=12,PD=13);\n" " device '' d2 (S=n1,G=n3,D=n2,B=n0) (L=0.75,W=2,AS=3,AD=4,PS=13,PD=14);\n" diff --git a/src/db/unit_tests/dbNetlistExtractorTests.cc b/src/db/unit_tests/dbNetlistExtractorTests.cc index a1beb5a78..52c2a5961 100644 --- a/src/db/unit_tests/dbNetlistExtractorTests.cc +++ b/src/db/unit_tests/dbNetlistExtractorTests.cc @@ -280,7 +280,7 @@ TEST(1_DeviceAndNetExtraction) dump_nets_to_layout (nl, cl, ly, dump_map, cm); // compare netlist as string - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit RINGO ();\n" " subcircuit INV2 $1 (IN=$I8,$2=FB,OUT=OSC,$4=VSS,$5=VDD);\n" " subcircuit INV2 $2 (IN=FB,$2=$I38,OUT=$I19,$4=VSS,$5=VDD);\n" @@ -312,8 +312,8 @@ TEST(1_DeviceAndNetExtraction) for (db::Netlist::device_class_iterator i = nl.begin_device_classes (); i != nl.end_device_classes (); ++i) { nldup.add_device_class (i->clone ()); } - nldup.from_string (nl.to_parsable_string ()); - EXPECT_EQ (nldup.to_parsable_string (), nl.to_parsable_string ()); + nldup.from_string (nl.to_string ()); + EXPECT_EQ (nldup.to_string (), nl.to_string ()); // doesn't do anything here, but we test that this does not destroy anything: nl.combine_devices (); @@ -323,7 +323,7 @@ TEST(1_DeviceAndNetExtraction) nl.purge (); // compare netlist as string - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit RINGO (FB=FB,OSC=OSC,VSS=VSS,VDD=VDD);\n" " subcircuit INV2 $1 (IN=$I8,$2=FB,OUT=OSC,$4=VSS,$5=VDD);\n" " subcircuit INV2 $2 (IN=FB,$2=(null),OUT=$I19,$4=VSS,$5=VDD);\n" @@ -508,7 +508,7 @@ TEST(2_DeviceAndNetExtractionFlat) // compare netlist as string // NOTE: some of the nets are called IN,OUT but are different ones. They // happen to be the same because they share the same label. - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit RINGO ();\n" " device PMOS $1 (S=$16,G='IN,OUT',D=VDD) (L=0.25,W=0.95,AS=0.49875,AD=0.26125,PS=2.95,PD=1.5);\n" " device PMOS $2 (S=VDD,G=$16,D='IN,OUT') (L=0.25,W=0.95,AS=0.26125,AD=0.49875,PS=1.5,PD=2.95);\n" @@ -742,7 +742,7 @@ TEST(3_DeviceAndNetExtractionWithImplicitConnections) dump_nets_to_layout (nl, cl, ly, dump_map, cm); // compare netlist as string - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit RINGO ();\n" " subcircuit INV2 $1 (IN=$I8,$2=FB,OUT=OSC,$4='VSSZ,VSS',$5='VDDZ,VDD');\n" " subcircuit INV2 $2 (IN=FB,$2=$I38,OUT=$I19,$4='VSSZ,VSS',$5='VDDZ,VDD');\n" @@ -777,7 +777,7 @@ TEST(3_DeviceAndNetExtractionWithImplicitConnections) nl.purge (); // compare netlist as string - EXPECT_EQ (nl.to_parsable_string (), + EXPECT_EQ (nl.to_string (), "circuit RINGO (FB=FB,OSC=OSC,NEXT=NEXT,'VSSZ,VSS'='VSSZ,VSS','VDDZ,VDD'='VDDZ,VDD');\n" " subcircuit INV2 $1 (IN=$I8,$2=FB,OUT=OSC,$4='VSSZ,VSS',$5='VDDZ,VDD');\n" " subcircuit INV2 $2 (IN=FB,$2=(null),OUT=$I19,$4='VSSZ,VSS',$5='VDDZ,VDD');\n" diff --git a/src/db/unit_tests/dbNetlistTests.cc b/src/db/unit_tests/dbNetlistTests.cc index 95bf9844c..8169d05a3 100644 --- a/src/db/unit_tests/dbNetlistTests.cc +++ b/src/db/unit_tests/dbNetlistTests.cc @@ -612,7 +612,7 @@ TEST(4_NetlistSubcircuits) "D:B,+c2p2\n" ); - EXPECT_EQ (nl->to_parsable_string (), + EXPECT_EQ (nl->to_string (), "circuit c1 (c1p1=n1a,c1p2=n1c);\n" " subcircuit c2 sc1 (c2p1=n1a,c2p2=n1b);\n" " subcircuit c2 sc2 (c2p1=n1b,c2p2=n1c);\n" @@ -622,9 +622,9 @@ TEST(4_NetlistSubcircuits) "end;\n" ); - nldup->from_string (nl->to_parsable_string ()); + nldup->from_string (nl->to_string ()); - EXPECT_EQ (nldup->to_parsable_string (), + EXPECT_EQ (nldup->to_string (), "circuit c1 (c1p1=n1a,c1p2=n1c);\n" " subcircuit c2 sc1 (c2p1=n1a,c2p2=n1b);\n" " subcircuit c2 sc2 (c2p1=n1b,c2p2=n1c);\n" diff --git a/testdata/ruby/dbLayoutToNetlist.rb b/testdata/ruby/dbLayoutToNetlist.rb index b5e9ac6cc..17b5a85ae 100644 --- a/testdata/ruby/dbLayoutToNetlist.rb +++ b/testdata/ruby/dbLayoutToNetlist.rb @@ -97,23 +97,26 @@ class DBLayoutToNetlist_TestClass < TestBase l2n.extract_netlist assert_equal(l2n.netlist.to_s, <