diff options
author | Jose <jose@zeroc.com> | 2019-05-01 19:39:22 +0200 |
---|---|---|
committer | Jose <jose@zeroc.com> | 2019-05-01 19:41:29 +0200 |
commit | 172fbb1d448e2f77738cb44d2c75f9e1887cecfa (patch) | |
tree | 78855b2e1e2e5953154526ed8c699549be2dd2cd /cpp/src/slice2swift/SwiftUtil.cpp | |
parent | Rename Util.{h,mm} -> Convert.{h,mm} (diff) | |
download | ice-172fbb1d448e2f77738cb44d2c75f9e1887cecfa.tar.bz2 ice-172fbb1d448e2f77738cb44d2c75f9e1887cecfa.tar.xz ice-172fbb1d448e2f77738cb44d2c75f9e1887cecfa.zip |
Map ConnectionInfo.cets to SecCertificate array
Diffstat (limited to 'cpp/src/slice2swift/SwiftUtil.cpp')
-rw-r--r-- | cpp/src/slice2swift/SwiftUtil.cpp | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/cpp/src/slice2swift/SwiftUtil.cpp b/cpp/src/slice2swift/SwiftUtil.cpp index b607750b81d..1f8db1ddfa5 100644 --- a/cpp/src/slice2swift/SwiftUtil.cpp +++ b/cpp/src/slice2swift/SwiftUtil.cpp @@ -385,6 +385,20 @@ SwiftGenerator::typeToString(const TypePtr& type, return ""; } + bool local = (typeCtx & TypeContextLocal) != 0; + if(local) + { + for(StringList::const_iterator i = metadata.begin(); i != metadata.end(); ++i) + { + const string swiftType = "swift:type:"; + const string meta = *i; + if(meta.find(swiftType) == 0) + { + return meta.substr(swiftType.size()); + } + } + } + string t = ""; // // The current module were the type is being used @@ -781,7 +795,7 @@ SwiftGenerator::writeMemberwiseInitializer(IceUtilInternal::Output& out, const DataMemberList& members, const ContainedPtr& p) { - writeMemberwiseInitializer(out, members, DataMemberList(), members, p, true); + writeMemberwiseInitializer(out, members, DataMemberList(), members, p, false, true); } void @@ -790,6 +804,7 @@ SwiftGenerator::writeMemberwiseInitializer(IceUtilInternal::Output& out, const DataMemberList& baseMembers, const DataMemberList& allMembers, const ContainedPtr& p, + bool local, bool rootClass, const StringPairList& extraParams) { @@ -797,6 +812,11 @@ SwiftGenerator::writeMemberwiseInitializer(IceUtilInternal::Output& out, { out << sp; out << nl; + int typeCtx = TypeContextInParam; + if(local) + { + typeCtx |= TypeContextLocal; + } out << "public init" << spar; for(DataMemberList::const_iterator i = allMembers.begin(); i != allMembers.end(); ++i) { @@ -850,7 +870,7 @@ SwiftGenerator::writeMembers(IceUtilInternal::Output& out, TypePtr type = member->type(); string defaultValue = member->defaultValue(); out << nl << access << "var " << fixIdent(member->name()) << ": " - << typeToString(type, p, member->getMetaData(), member->optional()); + << typeToString(type, p, member->getMetaData(), member->optional(), typeCtx); if(protocol) { out << " { get set }"; |