diff options
author | Jose <jose@zeroc.com> | 2019-07-09 17:28:56 +0200 |
---|---|---|
committer | Jose <jose@zeroc.com> | 2019-07-09 17:28:56 +0200 |
commit | 9bb1f40c2149edadcfc24892635b1f36d649cc6f (patch) | |
tree | b7bf38fb444a3a4a1eef23bb998ec065953f5ff3 /cpp/src/slice2js/JsUtil.cpp | |
parent | Fix ice.xcodeproj path issue (diff) | |
parent | Remove forward declarations limitation - Close #97 (diff) | |
download | ice-9bb1f40c2149edadcfc24892635b1f36d649cc6f.tar.bz2 ice-9bb1f40c2149edadcfc24892635b1f36d649cc6f.tar.xz ice-9bb1f40c2149edadcfc24892635b1f36d649cc6f.zip |
Merge remote-tracking branch 'origin/3.7' into swift
Diffstat (limited to 'cpp/src/slice2js/JsUtil.cpp')
-rw-r--r-- | cpp/src/slice2js/JsUtil.cpp | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/cpp/src/slice2js/JsUtil.cpp b/cpp/src/slice2js/JsUtil.cpp index 07c2f9b5325..2229d81f6a9 100644 --- a/cpp/src/slice2js/JsUtil.cpp +++ b/cpp/src/slice2js/JsUtil.cpp @@ -500,17 +500,7 @@ Slice::JsGenerator::typeToString(const TypePtr& type, { ostringstream os; ClassDefPtr def = proxy->_class()->definition(); - if(!def->isInterface() && def->allOperations().empty()) - { - if(getModuleMetadata(toplevel) != "ice") - { - os << "iceNS0."; - } - os << getUnqualified(typeScriptBuiltinTable[Builtin::KindObjectProxy], - toplevel->scope(), - getModuleMetadata(toplevel)); - } - else + if(!def || def->isAbstract()) { string prefix; if(typescript) @@ -528,6 +518,16 @@ Slice::JsGenerator::typeToString(const TypePtr& type, os << fixId(proxy->_class()->scoped() + "Prx"); } } + else + { + if(getModuleMetadata(toplevel) != "ice") + { + os << "iceNS0."; + } + os << getUnqualified(typeScriptBuiltinTable[Builtin::KindObjectProxy], + toplevel->scope(), + getModuleMetadata(toplevel)); + } return os.str(); } @@ -983,7 +983,7 @@ Slice::JsGenerator::getHelper(const TypePtr& type) if(prx) { ClassDefPtr def = prx->_class()->definition(); - if(def->isInterface() || def->allOperations().size() > 0) + if(!def || def->isAbstract()) { return typeToString(type); } |