From b65925a903a6242c7ef14e29118d35c9a7b7ee78 Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (l)" <j.wuttke@fz-juelich.de> Date: Fri, 18 Dec 2020 20:47:49 +0100 Subject: [PATCH] Export to Py: Conditional import of ba_plot --- Core/Export/PyFmt.cpp | 7 ++----- Core/Export/PyFmt.h | 2 +- Core/Export/SimulationToPython.cpp | 11 ++++++++--- Examples/scatter2d/ApproximationDA.py | 3 ++- Examples/scatter2d/ApproximationLMA.py | 3 ++- Examples/scatter2d/ApproximationSSCA.py | 3 ++- Examples/scatter2d/BeamDivergence.py | 3 ++- Examples/scatter2d/BiMaterialCylinders.py | 3 ++- Examples/scatter2d/BoxesWithSpecularPeak.py | 3 ++- Examples/scatter2d/BuriedParticles.py | 3 ++- Examples/scatter2d/ConstantBackground.py | 3 ++- Examples/scatter2d/CoreShellNanoparticles.py | 3 ++- Examples/scatter2d/CorrelatedRoughness.py | 3 ++- Examples/scatter2d/CosineRipplesAtRectLattice.py | 3 ++- Examples/scatter2d/CylindersAndPrisms.py | 3 ++- Examples/scatter2d/CylindersInAverageLayer.py | 3 ++- Examples/scatter2d/CylindersInBA.py | 3 ++- Examples/scatter2d/CylindersInDWBA.py | 3 ++- Examples/scatter2d/CylindersWithSizeDistribution.py | 3 ++- Examples/scatter2d/DetectorResolutionFunction.py | 3 ++- Examples/scatter2d/HalfSpheresInAverageTopLayer.py | 3 ++- Examples/scatter2d/HexagonalLatticesWithBasis.py | 3 ++- Examples/scatter2d/Interference1DRadialParaCrystal.py | 3 ++- .../scatter2d/Interference2DCenteredSquareLattice.py | 3 ++- .../scatter2d/Interference2DLatticeSumOfRotated.py | 3 ++- Examples/scatter2d/Interference2DParaCrystal.py | 3 ++- .../scatter2d/Interference2DRotatedSquareLattice.py | 3 ++- .../scatter2d/Interference2DSquareFiniteLattice.py | 3 ++- Examples/scatter2d/Interference2DSquareLattice.py | 3 ++- Examples/scatter2d/MagneticSpheres.py | 3 ++- Examples/scatter2d/MesoCrystal.py | 3 ++- Examples/scatter2d/ParticlesCrossingInterface.py | 3 ++- Examples/scatter2d/RotatedPyramids.py | 3 ++- Examples/scatter2d/SpheresAtHexLattice.py | 3 ++- Examples/scatter2d/TriangularRipple.py | 3 ++- .../TwoTypesOfCylindersWithSizeDistribution.py | 3 ++- Tests/Functional/PyEmbedded/Tests.cpp | 4 +++- auto/Wrap/doxygenCore.i | 2 +- 38 files changed, 81 insertions(+), 44 deletions(-) diff --git a/Core/Export/PyFmt.cpp b/Core/Export/PyFmt.cpp index b008fd342cf..2db85738238 100644 --- a/Core/Export/PyFmt.cpp +++ b/Core/Export/PyFmt.cpp @@ -21,7 +21,7 @@ namespace pyfmt { -std::string preambled(const std::string& code) +std::string printImportedSymbols(const std::string& code) { std::vector<std::string> to_declare; for (const std::string& key : {"angstrom", "deg", "nm", "nm2", "micrometer"}) @@ -30,10 +30,7 @@ std::string preambled(const std::string& code) for (const std::string& key : {"kvector_t"}) if (code.find(key) != std::string::npos) to_declare.push_back(key); - return "import numpy, sys\n" - "import bornagain as ba\n" - "from bornagain import " - + StringUtils::join(to_declare, ", ") + "\n\n\n" + code; + return "from bornagain import " + StringUtils::join(to_declare, ", ") + "\n"; } std::string printBool(double value) diff --git a/Core/Export/PyFmt.h b/Core/Export/PyFmt.h index bd174b9d4b9..e3dfc741b1d 100644 --- a/Core/Export/PyFmt.h +++ b/Core/Export/PyFmt.h @@ -27,7 +27,7 @@ namespace pyfmt { -std::string preambled(const std::string& code); +std::string printImportedSymbols(const std::string& code); std::string printInt(int value); std::string printBool(double value); diff --git a/Core/Export/SimulationToPython.cpp b/Core/Export/SimulationToPython.cpp index ff0b0364f44..19483816bb9 100644 --- a/Core/Export/SimulationToPython.cpp +++ b/Core/Export/SimulationToPython.cpp @@ -464,7 +464,10 @@ std::string simulationCode(const ISimulation& simulation) throw std::runtime_error("Cannot export: Simulation has no sample"); std::string code = SampleToPython().sampleCode(*simulation.sample()) + defineSimulate(&simulation); - return pyfmt::preambled(code); + return "import bornagain as ba\n" + + pyfmt::printImportedSymbols(code) + + "import ba_plot if __name__ == '__main__'" + "\n\n" + code; } } // namespace @@ -477,7 +480,8 @@ std::string SimulationToPython::simulationPlotCode(const ISimulation& simulation { return simulationCode(simulation) + "if __name__ == '__main__':\n" - " ba.run_and_plot(get_simulation(get_sample()))\n"; + " import ba_plot\n" + " ba_plot.run_and_plot(get_simulation(get_sample()))\n"; } std::string SimulationToPython::simulationSaveCode(const ISimulation& simulation, @@ -485,6 +489,7 @@ std::string SimulationToPython::simulationSaveCode(const ISimulation& simulation { return simulationCode(simulation) + "if __name__ == '__main__':\n" - " ba.run_and_save(get_simulation(get_sample()), \"" + " import ba_plot\n" + " baplot.run_and_save(get_simulation(get_sample()), \"" + fname + "\")\n"; } diff --git a/Examples/scatter2d/ApproximationDA.py b/Examples/scatter2d/ApproximationDA.py index f6d60aa1180..e3d7392c9eb 100644 --- a/Examples/scatter2d/ApproximationDA.py +++ b/Examples/scatter2d/ApproximationDA.py @@ -59,4 +59,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/ApproximationLMA.py b/Examples/scatter2d/ApproximationLMA.py index 1d69886e5be..db46e4af070 100644 --- a/Examples/scatter2d/ApproximationLMA.py +++ b/Examples/scatter2d/ApproximationLMA.py @@ -67,4 +67,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/ApproximationSSCA.py b/Examples/scatter2d/ApproximationSSCA.py index 287dc47c68c..663e194a90f 100644 --- a/Examples/scatter2d/ApproximationSSCA.py +++ b/Examples/scatter2d/ApproximationSSCA.py @@ -60,4 +60,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/BeamDivergence.py b/Examples/scatter2d/BeamDivergence.py index e8d4a04fc84..07e6f1b2858 100644 --- a/Examples/scatter2d/BeamDivergence.py +++ b/Examples/scatter2d/BeamDivergence.py @@ -57,4 +57,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/BiMaterialCylinders.py b/Examples/scatter2d/BiMaterialCylinders.py index ac991ce7e79..0d8e8d351af 100644 --- a/Examples/scatter2d/BiMaterialCylinders.py +++ b/Examples/scatter2d/BiMaterialCylinders.py @@ -65,4 +65,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/BoxesWithSpecularPeak.py b/Examples/scatter2d/BoxesWithSpecularPeak.py index ca87675492c..8c0184df479 100644 --- a/Examples/scatter2d/BoxesWithSpecularPeak.py +++ b/Examples/scatter2d/BoxesWithSpecularPeak.py @@ -60,4 +60,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/BuriedParticles.py b/Examples/scatter2d/BuriedParticles.py index 6fb9cd0efa1..cbe1b459e5b 100644 --- a/Examples/scatter2d/BuriedParticles.py +++ b/Examples/scatter2d/BuriedParticles.py @@ -56,4 +56,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/ConstantBackground.py b/Examples/scatter2d/ConstantBackground.py index 5244d0ceb44..7b1f7ed2758 100644 --- a/Examples/scatter2d/ConstantBackground.py +++ b/Examples/scatter2d/ConstantBackground.py @@ -51,4 +51,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/CoreShellNanoparticles.py b/Examples/scatter2d/CoreShellNanoparticles.py index 19162de038f..8c2148dc7e5 100644 --- a/Examples/scatter2d/CoreShellNanoparticles.py +++ b/Examples/scatter2d/CoreShellNanoparticles.py @@ -56,4 +56,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/CorrelatedRoughness.py b/Examples/scatter2d/CorrelatedRoughness.py index 916215b5f3d..1ce98d904cf 100644 --- a/Examples/scatter2d/CorrelatedRoughness.py +++ b/Examples/scatter2d/CorrelatedRoughness.py @@ -51,4 +51,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/CosineRipplesAtRectLattice.py b/Examples/scatter2d/CosineRipplesAtRectLattice.py index 694f055b18d..b34cdb3fdef 100644 --- a/Examples/scatter2d/CosineRipplesAtRectLattice.py +++ b/Examples/scatter2d/CosineRipplesAtRectLattice.py @@ -59,4 +59,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/CylindersAndPrisms.py b/Examples/scatter2d/CylindersAndPrisms.py index 216d9afa21f..cf8db3228dd 100644 --- a/Examples/scatter2d/CylindersAndPrisms.py +++ b/Examples/scatter2d/CylindersAndPrisms.py @@ -56,4 +56,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/CylindersInAverageLayer.py b/Examples/scatter2d/CylindersInAverageLayer.py index e13db805276..d2b8925c3a2 100644 --- a/Examples/scatter2d/CylindersInAverageLayer.py +++ b/Examples/scatter2d/CylindersInAverageLayer.py @@ -51,4 +51,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/CylindersInBA.py b/Examples/scatter2d/CylindersInBA.py index ec8d50a4d19..17fc834da2e 100644 --- a/Examples/scatter2d/CylindersInBA.py +++ b/Examples/scatter2d/CylindersInBA.py @@ -47,4 +47,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/CylindersInDWBA.py b/Examples/scatter2d/CylindersInDWBA.py index 076dd5960ea..b8420ad4a09 100644 --- a/Examples/scatter2d/CylindersInDWBA.py +++ b/Examples/scatter2d/CylindersInDWBA.py @@ -49,4 +49,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/CylindersWithSizeDistribution.py b/Examples/scatter2d/CylindersWithSizeDistribution.py index 65439c35962..4cfce432bfe 100644 --- a/Examples/scatter2d/CylindersWithSizeDistribution.py +++ b/Examples/scatter2d/CylindersWithSizeDistribution.py @@ -53,4 +53,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/DetectorResolutionFunction.py b/Examples/scatter2d/DetectorResolutionFunction.py index d6bde346d70..c9d2a61f956 100644 --- a/Examples/scatter2d/DetectorResolutionFunction.py +++ b/Examples/scatter2d/DetectorResolutionFunction.py @@ -51,4 +51,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/HalfSpheresInAverageTopLayer.py b/Examples/scatter2d/HalfSpheresInAverageTopLayer.py index d8933487c15..96fdcad873b 100644 --- a/Examples/scatter2d/HalfSpheresInAverageTopLayer.py +++ b/Examples/scatter2d/HalfSpheresInAverageTopLayer.py @@ -61,4 +61,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/HexagonalLatticesWithBasis.py b/Examples/scatter2d/HexagonalLatticesWithBasis.py index dd99d3f2c12..62c91b2c42a 100644 --- a/Examples/scatter2d/HexagonalLatticesWithBasis.py +++ b/Examples/scatter2d/HexagonalLatticesWithBasis.py @@ -68,4 +68,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/Interference1DRadialParaCrystal.py b/Examples/scatter2d/Interference1DRadialParaCrystal.py index b17da17637c..616ccfa7aac 100644 --- a/Examples/scatter2d/Interference1DRadialParaCrystal.py +++ b/Examples/scatter2d/Interference1DRadialParaCrystal.py @@ -55,4 +55,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/Interference2DCenteredSquareLattice.py b/Examples/scatter2d/Interference2DCenteredSquareLattice.py index d56deadc3ca..cbd0cf87f17 100644 --- a/Examples/scatter2d/Interference2DCenteredSquareLattice.py +++ b/Examples/scatter2d/Interference2DCenteredSquareLattice.py @@ -68,4 +68,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/Interference2DLatticeSumOfRotated.py b/Examples/scatter2d/Interference2DLatticeSumOfRotated.py index ac2a432a9da..32c1d01c575 100644 --- a/Examples/scatter2d/Interference2DLatticeSumOfRotated.py +++ b/Examples/scatter2d/Interference2DLatticeSumOfRotated.py @@ -46,4 +46,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/Interference2DParaCrystal.py b/Examples/scatter2d/Interference2DParaCrystal.py index 013a65d4b45..7570ea6a668 100644 --- a/Examples/scatter2d/Interference2DParaCrystal.py +++ b/Examples/scatter2d/Interference2DParaCrystal.py @@ -61,4 +61,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/Interference2DRotatedSquareLattice.py b/Examples/scatter2d/Interference2DRotatedSquareLattice.py index f428b440963..69790000341 100644 --- a/Examples/scatter2d/Interference2DRotatedSquareLattice.py +++ b/Examples/scatter2d/Interference2DRotatedSquareLattice.py @@ -59,4 +59,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/Interference2DSquareFiniteLattice.py b/Examples/scatter2d/Interference2DSquareFiniteLattice.py index 5fc42c81f48..ac3bdaf8e1f 100644 --- a/Examples/scatter2d/Interference2DSquareFiniteLattice.py +++ b/Examples/scatter2d/Interference2DSquareFiniteLattice.py @@ -57,4 +57,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/Interference2DSquareLattice.py b/Examples/scatter2d/Interference2DSquareLattice.py index cb64a4e5415..1476f817786 100644 --- a/Examples/scatter2d/Interference2DSquareLattice.py +++ b/Examples/scatter2d/Interference2DSquareLattice.py @@ -58,4 +58,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/MagneticSpheres.py b/Examples/scatter2d/MagneticSpheres.py index ef10a3bf24d..ef60d2b05d9 100644 --- a/Examples/scatter2d/MagneticSpheres.py +++ b/Examples/scatter2d/MagneticSpheres.py @@ -57,4 +57,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/MesoCrystal.py b/Examples/scatter2d/MesoCrystal.py index c238716ca40..5d7f4733196 100644 --- a/Examples/scatter2d/MesoCrystal.py +++ b/Examples/scatter2d/MesoCrystal.py @@ -61,4 +61,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/ParticlesCrossingInterface.py b/Examples/scatter2d/ParticlesCrossingInterface.py index a3be3b18f52..dedbeb3a650 100644 --- a/Examples/scatter2d/ParticlesCrossingInterface.py +++ b/Examples/scatter2d/ParticlesCrossingInterface.py @@ -75,4 +75,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/RotatedPyramids.py b/Examples/scatter2d/RotatedPyramids.py index a4e73820ca7..100965a8a4e 100644 --- a/Examples/scatter2d/RotatedPyramids.py +++ b/Examples/scatter2d/RotatedPyramids.py @@ -51,4 +51,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/SpheresAtHexLattice.py b/Examples/scatter2d/SpheresAtHexLattice.py index 961213c595b..d2bffe000f4 100644 --- a/Examples/scatter2d/SpheresAtHexLattice.py +++ b/Examples/scatter2d/SpheresAtHexLattice.py @@ -59,4 +59,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/TriangularRipple.py b/Examples/scatter2d/TriangularRipple.py index 628e36846f1..6074955fca6 100644 --- a/Examples/scatter2d/TriangularRipple.py +++ b/Examples/scatter2d/TriangularRipple.py @@ -60,4 +60,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Examples/scatter2d/TwoTypesOfCylindersWithSizeDistribution.py b/Examples/scatter2d/TwoTypesOfCylindersWithSizeDistribution.py index 7f4450d0fd4..de8116d8237 100644 --- a/Examples/scatter2d/TwoTypesOfCylindersWithSizeDistribution.py +++ b/Examples/scatter2d/TwoTypesOfCylindersWithSizeDistribution.py @@ -62,4 +62,5 @@ def get_simulation(sample): if __name__ == '__main__': - ba.run_and_plot(get_simulation(get_sample())) + import ba_plot + ba_plot.run_and_plot(get_simulation(get_sample())) diff --git a/Tests/Functional/PyEmbedded/Tests.cpp b/Tests/Functional/PyEmbedded/Tests.cpp index d54021a9b14..27c9e31d4e7 100644 --- a/Tests/Functional/PyEmbedded/Tests.cpp +++ b/Tests/Functional/PyEmbedded/Tests.cpp @@ -372,7 +372,9 @@ TEST_F(PyEmbedded, ExportToPythonAndBack) std::unique_ptr<MultiLayer> sample(factory.createSampleByName("CylindersAndPrismsBuilder")); const std::string code = ExportToPython::sampleCode(*sample); - const std::string snippet = pyfmt::preambled(code); + const std::string snippet = "import bornagain as ba\n" + + pyfmt::printImportedSymbols(code) + + "\n\n" + code; const auto multilayer = PyImport::createFromPython(snippet, "get_sample", BABuild::buildLibDir()); diff --git a/auto/Wrap/doxygenCore.i b/auto/Wrap/doxygenCore.i index 479b47904f7..2a2f3c967da 100644 --- a/auto/Wrap/doxygenCore.i +++ b/auto/Wrap/doxygenCore.i @@ -2406,7 +2406,7 @@ Returns default metric name. // File: namespacepyfmt.xml -%feature("docstring") pyfmt::preambled "std::string pyfmt::preambled(const std::string &code) +%feature("docstring") pyfmt::printImportedSymbols "std::string pyfmt::printImportedSymbols(const std::string &code) "; %feature("docstring") pyfmt::printBool "std::string pyfmt::printBool(double value) -- GitLab