use __Create__ as name for "constructors" instead of the object name

so we call : Class.__Create__(...) to create a python object, instead of Class.Class(...) which seems duplicated and complicated if Class is long, e.g. "mEstimator_noiseModel_GemanMcClure"
release/4.3a0
Duy-Nguyen Ta 2016-09-09 16:39:12 -04:00
parent 1e84da1cfa
commit d65d87072b
1 changed files with 2 additions and 2 deletions

View File

@ -137,8 +137,8 @@ void Constructor::emit_cython_pyx(FileWriter& pyxFile, const Class& cls) const {
for (size_t i = 0; i < nrOverloads(); i++) {
ArgumentList args = argumentList(i);
pyxFile.oss << "\t@staticmethod\n";
pyxFile.oss << "\tdef " << cls.cythonClassName()
<< ((i > 0) ? "_" + to_string(i) : "") << "(";
pyxFile.oss << "\tdef __Create"
<< ((i > 0) ? to_string(i) : "") << "__(";
args.emit_cython_pyx(pyxFile);
pyxFile.oss << "): \n";
pyxFile.oss << "\t\treturn " << cls.cythonClassName() << ".cyCreate("