zeroc-ice 3.7.3 → 3.7.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (181) hide show
  1. checksums.yaml +4 -4
  2. data/ext/Util.cpp +15 -3
  3. data/ext/Util.h +36 -0
  4. data/ext/ice/cpp/include/Ice/Initialize.h +1 -1
  5. data/ext/ice/cpp/include/Ice/Optional.h +1 -1
  6. data/ext/ice/cpp/include/Ice/OutgoingAsync.h +15 -0
  7. data/ext/ice/cpp/include/Ice/Proxy.h +31 -9
  8. data/ext/ice/cpp/include/IceUtil/Config.h +2 -2
  9. data/ext/ice/cpp/include/IceUtil/ResourceConfig.h +2 -2
  10. data/ext/ice/cpp/include/generated/Ice/BuiltinSequences.h +2 -2
  11. data/ext/ice/cpp/include/generated/Ice/Communicator.h +4 -4
  12. data/ext/ice/cpp/include/generated/Ice/CommunicatorF.h +2 -2
  13. data/ext/ice/cpp/include/generated/Ice/Connection.h +13 -13
  14. data/ext/ice/cpp/include/generated/Ice/ConnectionF.h +2 -2
  15. data/ext/ice/cpp/include/generated/Ice/Current.h +2 -2
  16. data/ext/ice/cpp/include/generated/Ice/Endpoint.h +14 -14
  17. data/ext/ice/cpp/include/generated/Ice/EndpointF.h +2 -2
  18. data/ext/ice/cpp/include/generated/Ice/EndpointTypes.h +2 -2
  19. data/ext/ice/cpp/include/generated/Ice/FacetMap.h +2 -2
  20. data/ext/ice/cpp/include/generated/Ice/Identity.h +2 -2
  21. data/ext/ice/cpp/include/generated/Ice/ImplicitContext.h +2 -2
  22. data/ext/ice/cpp/include/generated/Ice/ImplicitContextF.h +2 -2
  23. data/ext/ice/cpp/include/generated/Ice/Instrumentation.h +2 -2
  24. data/ext/ice/cpp/include/generated/Ice/InstrumentationF.h +2 -2
  25. data/ext/ice/cpp/include/generated/Ice/LocalException.h +61 -61
  26. data/ext/ice/cpp/include/generated/Ice/Locator.h +9 -9
  27. data/ext/ice/cpp/include/generated/Ice/LocatorF.h +2 -2
  28. data/ext/ice/cpp/include/generated/Ice/Logger.h +2 -2
  29. data/ext/ice/cpp/include/generated/Ice/LoggerF.h +2 -2
  30. data/ext/ice/cpp/include/generated/Ice/Metrics.h +18 -18
  31. data/ext/ice/cpp/include/generated/Ice/ObjectAdapter.h +2 -2
  32. data/ext/ice/cpp/include/generated/Ice/ObjectAdapterF.h +2 -2
  33. data/ext/ice/cpp/include/generated/Ice/ObjectFactory.h +2 -2
  34. data/ext/ice/cpp/include/generated/Ice/Plugin.h +2 -2
  35. data/ext/ice/cpp/include/generated/Ice/PluginF.h +2 -2
  36. data/ext/ice/cpp/include/generated/Ice/Process.h +4 -4
  37. data/ext/ice/cpp/include/generated/Ice/ProcessF.h +2 -2
  38. data/ext/ice/cpp/include/generated/Ice/Properties.h +2 -2
  39. data/ext/ice/cpp/include/generated/Ice/PropertiesAdmin.h +5 -5
  40. data/ext/ice/cpp/include/generated/Ice/PropertiesF.h +2 -2
  41. data/ext/ice/cpp/include/generated/Ice/RemoteLogger.h +7 -7
  42. data/ext/ice/cpp/include/generated/Ice/Router.h +6 -6
  43. data/ext/ice/cpp/include/generated/Ice/RouterF.h +2 -2
  44. data/ext/ice/cpp/include/generated/Ice/ServantLocator.h +2 -2
  45. data/ext/ice/cpp/include/generated/Ice/ServantLocatorF.h +2 -2
  46. data/ext/ice/cpp/include/generated/Ice/SliceChecksumDict.h +2 -2
  47. data/ext/ice/cpp/include/generated/Ice/ValueFactory.h +2 -2
  48. data/ext/ice/cpp/include/generated/Ice/Version.h +2 -2
  49. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfo.h +5 -5
  50. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfoF.h +2 -2
  51. data/ext/ice/cpp/include/generated/IceSSL/EndpointInfo.h +3 -3
  52. data/ext/ice/cpp/src/Ice/ArgVector.cpp +1 -1
  53. data/ext/ice/cpp/src/Ice/BuiltinSequences.cpp +2 -2
  54. data/ext/ice/cpp/src/Ice/Communicator.cpp +2 -2
  55. data/ext/ice/cpp/src/Ice/CommunicatorF.cpp +2 -2
  56. data/ext/ice/cpp/src/Ice/Connection.cpp +2 -2
  57. data/ext/ice/cpp/src/Ice/ConnectionF.cpp +2 -2
  58. data/ext/ice/cpp/src/Ice/Current.cpp +2 -2
  59. data/ext/ice/cpp/src/Ice/Endpoint.cpp +2 -2
  60. data/ext/ice/cpp/src/Ice/EndpointF.cpp +2 -2
  61. data/ext/ice/cpp/src/Ice/EndpointTypes.cpp +2 -2
  62. data/ext/ice/cpp/src/Ice/FacetMap.cpp +2 -2
  63. data/ext/ice/cpp/src/Ice/Identity.cpp +2 -2
  64. data/ext/ice/cpp/src/Ice/ImplicitContext.cpp +2 -2
  65. data/ext/ice/cpp/src/Ice/ImplicitContextF.cpp +2 -2
  66. data/ext/ice/cpp/src/Ice/ImplicitContextI.cpp +1 -1
  67. data/ext/ice/cpp/src/Ice/Initialize.cpp +1 -1
  68. data/ext/ice/cpp/src/Ice/InputStream.cpp +1 -1
  69. data/ext/ice/cpp/src/Ice/Instrumentation.cpp +2 -2
  70. data/ext/ice/cpp/src/Ice/InstrumentationF.cpp +2 -2
  71. data/ext/ice/cpp/src/Ice/LocalException.cpp +2 -2
  72. data/ext/ice/cpp/src/Ice/Locator.cpp +2 -2
  73. data/ext/ice/cpp/src/Ice/LocatorF.cpp +2 -2
  74. data/ext/ice/cpp/src/Ice/Logger.cpp +2 -2
  75. data/ext/ice/cpp/src/Ice/LoggerF.cpp +2 -2
  76. data/ext/ice/cpp/src/Ice/Metrics.cpp +2 -2
  77. data/ext/ice/cpp/src/Ice/Network.cpp +1 -1
  78. data/ext/ice/cpp/src/Ice/Network.h +0 -0
  79. data/ext/ice/cpp/src/Ice/ObjectAdapter.cpp +2 -2
  80. data/ext/ice/cpp/src/Ice/ObjectAdapterF.cpp +2 -2
  81. data/ext/ice/cpp/src/Ice/ObjectFactory.cpp +2 -2
  82. data/ext/ice/cpp/src/Ice/Plugin.cpp +2 -2
  83. data/ext/ice/cpp/src/Ice/PluginF.cpp +2 -2
  84. data/ext/ice/cpp/src/Ice/Process.cpp +2 -2
  85. data/ext/ice/cpp/src/Ice/ProcessF.cpp +2 -2
  86. data/ext/ice/cpp/src/Ice/Properties.cpp +2 -2
  87. data/ext/ice/cpp/src/Ice/PropertiesAdmin.cpp +2 -2
  88. data/ext/ice/cpp/src/Ice/PropertiesF.cpp +2 -2
  89. data/ext/ice/cpp/src/Ice/ProxyFactory.cpp +9 -0
  90. data/ext/ice/cpp/src/Ice/RemoteLogger.cpp +2 -2
  91. data/ext/ice/cpp/src/Ice/RetryQueue.cpp +5 -2
  92. data/ext/ice/cpp/src/Ice/Router.cpp +2 -2
  93. data/ext/ice/cpp/src/Ice/RouterF.cpp +2 -2
  94. data/ext/ice/cpp/src/Ice/ServantLocator.cpp +2 -2
  95. data/ext/ice/cpp/src/Ice/ServantLocatorF.cpp +2 -2
  96. data/ext/ice/cpp/src/Ice/SliceChecksumDict.cpp +2 -2
  97. data/ext/ice/cpp/src/Ice/StreamSocket.cpp +0 -0
  98. data/ext/ice/cpp/src/Ice/UdpTransceiver.cpp +0 -0
  99. data/ext/ice/cpp/src/Ice/ValueFactory.cpp +2 -2
  100. data/ext/ice/cpp/src/Ice/Version.cpp +2 -2
  101. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.cpp +2 -2
  102. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.h +479 -6
  103. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.cpp +2 -2
  104. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.h +4 -4
  105. data/ext/ice/cpp/src/IceLocatorDiscovery/PluginI.cpp +12 -1
  106. data/ext/ice/cpp/src/IceSSL/ConnectionInfo.cpp +2 -2
  107. data/ext/ice/cpp/src/IceSSL/ConnectionInfoF.cpp +2 -2
  108. data/ext/ice/cpp/src/IceSSL/EndpointInfo.cpp +2 -2
  109. data/ext/ice/cpp/src/IceSSL/OpenSSLCertificateI.cpp +1 -1
  110. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.cpp +1 -1
  111. data/ext/ice/cpp/src/IceSSL/PluginI.cpp +0 -0
  112. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.cpp +1 -1
  113. data/ext/ice/cpp/src/IceSSL/Util.cpp +0 -0
  114. data/ext/ice/cpp/src/IceUtil/Time.cpp +2 -2
  115. data/ext/ice/cpp/src/Slice/Parser.cpp +1 -1
  116. data/ext/ice/cpp/src/Slice/Preprocessor.cpp +12 -0
  117. data/ext/ice/cpp/src/Slice/Preprocessor.h +1 -1
  118. data/ice.gemspec +1 -1
  119. data/lib/Glacier2/Metrics.rb +1 -1
  120. data/lib/Glacier2/PermissionsVerifier.rb +1 -1
  121. data/lib/Glacier2/PermissionsVerifierF.rb +1 -1
  122. data/lib/Glacier2/Router.rb +1 -1
  123. data/lib/Glacier2/RouterF.rb +1 -1
  124. data/lib/Glacier2/SSLInfo.rb +1 -1
  125. data/lib/Glacier2/Session.rb +1 -1
  126. data/lib/Ice/BuiltinSequences.rb +1 -1
  127. data/lib/Ice/Communicator.rb +1 -1
  128. data/lib/Ice/CommunicatorF.rb +1 -1
  129. data/lib/Ice/Connection.rb +1 -1
  130. data/lib/Ice/ConnectionF.rb +1 -1
  131. data/lib/Ice/Current.rb +1 -1
  132. data/lib/Ice/Endpoint.rb +1 -1
  133. data/lib/Ice/EndpointF.rb +1 -1
  134. data/lib/Ice/EndpointTypes.rb +1 -1
  135. data/lib/Ice/FacetMap.rb +1 -1
  136. data/lib/Ice/Identity.rb +1 -1
  137. data/lib/Ice/ImplicitContext.rb +1 -1
  138. data/lib/Ice/ImplicitContextF.rb +1 -1
  139. data/lib/Ice/Instrumentation.rb +1 -1
  140. data/lib/Ice/InstrumentationF.rb +1 -1
  141. data/lib/Ice/LocalException.rb +1 -1
  142. data/lib/Ice/Locator.rb +1 -1
  143. data/lib/Ice/LocatorF.rb +1 -1
  144. data/lib/Ice/Logger.rb +1 -1
  145. data/lib/Ice/LoggerF.rb +1 -1
  146. data/lib/Ice/Metrics.rb +1 -1
  147. data/lib/Ice/ObjectAdapter.rb +1 -1
  148. data/lib/Ice/ObjectAdapterF.rb +1 -1
  149. data/lib/Ice/ObjectFactory.rb +1 -1
  150. data/lib/Ice/Plugin.rb +1 -1
  151. data/lib/Ice/PluginF.rb +1 -1
  152. data/lib/Ice/Process.rb +1 -1
  153. data/lib/Ice/ProcessF.rb +1 -1
  154. data/lib/Ice/Properties.rb +1 -1
  155. data/lib/Ice/PropertiesAdmin.rb +1 -1
  156. data/lib/Ice/PropertiesF.rb +1 -1
  157. data/lib/Ice/RemoteLogger.rb +1 -1
  158. data/lib/Ice/Router.rb +1 -1
  159. data/lib/Ice/RouterF.rb +1 -1
  160. data/lib/Ice/ServantLocator.rb +1 -1
  161. data/lib/Ice/ServantLocatorF.rb +1 -1
  162. data/lib/Ice/SliceChecksumDict.rb +1 -1
  163. data/lib/Ice/ValueFactory.rb +1 -1
  164. data/lib/Ice/Version.rb +1 -1
  165. data/lib/IceBox/IceBox.rb +1 -1
  166. data/lib/IceGrid/Admin.rb +1 -1
  167. data/lib/IceGrid/Descriptor.rb +1 -1
  168. data/lib/IceGrid/Exception.rb +1 -1
  169. data/lib/IceGrid/FileParser.rb +1 -1
  170. data/lib/IceGrid/PluginFacade.rb +1 -1
  171. data/lib/IceGrid/Registry.rb +1 -1
  172. data/lib/IceGrid/Session.rb +1 -1
  173. data/lib/IceGrid/UserAccountMapper.rb +1 -1
  174. data/lib/IcePatch2/FileInfo.rb +1 -1
  175. data/lib/IcePatch2/FileServer.rb +1 -1
  176. data/lib/IceStorm/IceStorm.rb +1 -1
  177. data/lib/IceStorm/Metrics.rb +1 -1
  178. data/slice/Ice/Communicator.ice +1 -1
  179. data/slice/IceBox/IceBox.ice +17 -2
  180. data/slice/IceDiscovery/IceDiscovery.ice +56 -0
  181. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f061772e9d3a2a709e480d9bd0d028110838d15529c793b34367253782d649db
4
- data.tar.gz: b451ddd683af4bbc6e948d76dce911204ff6c1b4314143e285b89f656ae8f0e4
3
+ metadata.gz: d93f67fc8d2871e7db0614a3cbb091e947e73c7c6b506ceeec3ad10f433be4d6
4
+ data.tar.gz: c144208e37d3a3aa47a47d70b3769058d2f9f8668199cc5f1f6de468b82011e5
5
5
  SHA512:
6
- metadata.gz: 943b478cf1ecdfb5e4332271fd025e8153b2c0a595ef7c96ce260d3d0a8caaffff2c1b5827166f687650d6fc6685f3e8c0f1c1fdd4090f7aecbb4ef237d8623a
7
- data.tar.gz: 289327d910be75354d258ebc41eb31d2583738cd5b3fc7f43130442d87803000b9dac8787fd0b3ee9874bbf107606ad9c9ae12ac7a7c06f6aa9bd9f942cfdbf4
6
+ metadata.gz: b2ca8b593b06bce4e1bc7d6ab493365ab422feb97bfcef84a5ff67ff20e30f80f610e9b7156e32ab69ab1420f536a9a948d4d4ae939013c371edc7ba2273a980
7
+ data.tar.gz: 15b47e5d5821f42efc77897d52a85f91e37fddf698b13ca3651bb47aaa0c536efa0d770c919fae9febbe222f91b96dd7d1e2f1a912a91b137677a27b0fe7902a
@@ -448,7 +448,11 @@ IceRuby::contextToHash(const Ice::Context& ctx)
448
448
 
449
449
  extern "C"
450
450
  VALUE
451
- IceRuby_Util_hash_foreach_callback(VALUE val, VALUE arg)
451
+ #ifdef RUBY_BLOCK_CALL_FUNC_TAKES_BLOCKARG // Defined Ruby >= 2.1
452
+ IceRuby_Util_hash_foreach_callback(VALUE val, VALUE arg, int, const VALUE*, VALUE)
453
+ #else
454
+ IceRuby_Util_hash_foreach_callback(VALUE val, VALUE arg, int, VALUE*)
455
+ #endif
452
456
  {
453
457
  VALUE key = rb_ary_entry(val, 0);
454
458
  VALUE value = rb_ary_entry(val, 1);
@@ -467,14 +471,22 @@ IceRuby_Util_hash_foreach_callback(VALUE val, VALUE arg)
467
471
 
468
472
  extern "C"
469
473
  {
470
- typedef VALUE (*ICE_RUBY_HASH_FOREACH_CALLBACK)(...);
474
+
475
+ // Defined Ruby >= 2.1. Ruby 2.7 enables RB_BLOCK_CALL_FUNC_STRICT by default
476
+ #ifdef RB_BLOCK_CALL_FUNC_STRICT
477
+ typedef rb_block_call_func_t ICE_RUBY_HASH_FOREACH_CALLBACK;
478
+ #else
479
+ typedef VALUE (*ICE_RUBY_HASH_FOREACH_CALLBACK)(...);
480
+ #endif
481
+
471
482
  }
472
483
 
473
484
  void
474
485
  IceRuby::hashIterate(VALUE h, HashIterator& iter)
475
486
  {
476
487
  assert(TYPE(h) == T_HASH);
477
- callRuby(rb_iterate, rb_each, h,
488
+
489
+ callRuby(::rb_block_call, h, rb_intern("each"), 0, static_cast<VALUE*>(0),
478
490
  reinterpret_cast<ICE_RUBY_HASH_FOREACH_CALLBACK>(IceRuby_Util_hash_foreach_callback),
479
491
  reinterpret_cast<VALUE>(&iter));
480
492
  }
data/ext/Util.h CHANGED
@@ -175,6 +175,9 @@ VALUE callRuby(Fun fun, T1 t1, T2 t2, T3 t3);
175
175
  template<typename Fun, typename T1, typename T2, typename T3, typename T4>
176
176
  VALUE callRuby(Fun fun, T1 t1, T2 t2, T3 t3, T4 t4);
177
177
 
178
+ template<typename Fun, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6>
179
+ VALUE callRuby(Fun fun, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6);
180
+
178
181
  extern "C" typedef VALUE (*RubyFunction)(VALUE);
179
182
 
180
183
  VALUE callProtected(RubyFunction, VALUE);
@@ -314,6 +317,39 @@ inline VALUE callRuby(Fun fun, T1 t1, T2 t2, T3 t3, T4 t4)
314
317
  return callProtected(RF::call, reinterpret_cast<VALUE>(&f));
315
318
  }
316
319
 
320
+ template<typename Fun, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6>
321
+ class RF_6
322
+ {
323
+ public:
324
+
325
+ RF_6(Fun f, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6) : _f(f), _t1(t1), _t2(t2), _t3(t3), _t4(t4), _t5(t5), _t6(t6)
326
+ {
327
+ }
328
+ inline VALUE operator()() { return _f(_t1, _t2, _t3, _t4, _t5, _t6); }
329
+ static inline VALUE call(VALUE f)
330
+ {
331
+ return (*reinterpret_cast<RF_6*>(f))();
332
+ }
333
+
334
+ private:
335
+
336
+ Fun _f;
337
+ T1 _t1;
338
+ T2 _t2;
339
+ T3 _t3;
340
+ T4 _t4;
341
+ T5 _t5;
342
+ T6 _t6;
343
+ };
344
+
345
+ template<typename Fun, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6>
346
+ inline VALUE callRuby(Fun fun, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6)
347
+ {
348
+ typedef RF_6<Fun, T1, T2, T3, T4, T5, T6> RF;
349
+ RF f(fun, t1, t2, t3, t4, t5, t6);
350
+ return callProtected(RF::call, reinterpret_cast<VALUE>(&f));
351
+ }
352
+
317
353
  //
318
354
  // The callRubyVoid functions are used to invoke Ruby C API functions
319
355
  // while translating any Ruby exception into RubyException so that
@@ -682,7 +682,7 @@ public:
682
682
  * it will be destroyed.
683
683
  * @param holder The holder from which to adopt a communicator.
684
684
  */
685
- CommunicatorHolder& operator=(CommunicatorHolder&& holder);
685
+ CommunicatorHolder& operator=(CommunicatorHolder&& holder) noexcept;
686
686
 
687
687
  /**
688
688
  * Determines whether the holder contains an instance.
@@ -210,7 +210,7 @@ template inline constexpr typename std::remove_reference::type&& co
210
210
  #if defined NDEBUG
211
211
  # define TR2_OPTIONAL_ASSERTED_EXPRESSION(CHECK, EXPR) (EXPR)
212
212
  #else
213
- # define TR2_OPTIONAL_ASSERTED_EXPRESSION(CHECK, EXPR) ((CHECK) ? (EXPR) : ([]{assert(!#CHECK);}(), (EXPR)))
213
+ # define TR2_OPTIONAL_ASSERTED_EXPRESSION(CHECK, EXPR) ((CHECK) ? (EXPR) : ([]{assert(false && #CHECK);}(), (EXPR)))
214
214
  #endif
215
215
 
216
216
  namespace detail_
@@ -463,7 +463,12 @@ public:
463
463
  std::function<void(bool)> sent) :
464
464
  OutgoingAsyncT<R>(proxy, false), LambdaInvoke(std::move(ex), std::move(sent))
465
465
  {
466
+ #if ICE_CPLUSPLUS >= 201402L
467
+ // Move capture with C++14
468
+ _response = [this, response = std::move(response)](bool ok)
469
+ #else
466
470
  _response = [this, response](bool ok)
471
+ #endif
467
472
  {
468
473
  if(!ok)
469
474
  {
@@ -499,7 +504,12 @@ public:
499
504
  std::function<void(bool)> sent) :
500
505
  OutgoingAsyncT<void>(proxy, false), LambdaInvoke(std::move(ex), std::move(sent))
501
506
  {
507
+ #if ICE_CPLUSPLUS >= 201402L
508
+ // Move capture with C++14
509
+ _response = [this, response = std::move(response)](bool ok)
510
+ #else
502
511
  _response = [this, response](bool ok)
512
+ #endif
503
513
  {
504
514
  if(!ok)
505
515
  {
@@ -535,7 +545,12 @@ public:
535
545
  std::function<void(bool)> sent) :
536
546
  OutgoingAsync(proxy, false), LambdaInvoke(std::move(ex), std::move(sent))
537
547
  {
548
+ #if ICE_CPLUSPLUS >= 201402L
549
+ // Move capture with C++14
550
+ _response = [this, read = std::move(read)](bool ok)
551
+ #else
538
552
  _response = [this, read](bool ok)
553
+ #endif
539
554
  {
540
555
  if(!ok)
541
556
  {
@@ -178,7 +178,12 @@ public:
178
178
  {
179
179
  if(response)
180
180
  {
181
+ #if ICE_CPLUSPLUS >= 201402L
182
+ // Move capture with C++14
183
+ _response = [this, response = std::move(response)](bool ok)
184
+ #else
181
185
  _response = [this, response](bool ok)
186
+ #endif
182
187
  {
183
188
  if(this->_is.b.empty())
184
189
  {
@@ -235,7 +240,11 @@ public:
235
240
  ::std::function<void(bool)> sent) :
236
241
  ProxyGetConnection(proxy), LambdaInvoke(::std::move(ex), ::std::move(sent))
237
242
  {
243
+ #if ICE_CPLUSPLUS >= 201402L
244
+ _response = [&, response = std::move(response)](bool)
245
+ #else
238
246
  _response = [&, response](bool)
247
+ #endif
239
248
  {
240
249
  response(getConnection());
241
250
  };
@@ -354,7 +363,8 @@ public:
354
363
  ::std::function<void(bool)> sent = nullptr,
355
364
  const ::Ice::Context& context = ::Ice::noExplicitContext)
356
365
  {
357
- return _makeLamdaOutgoing<bool>(response, ex, sent, this, &ObjectPrx::_iceI_isA, typeId, context);
366
+ return _makeLamdaOutgoing<bool>(std::move(response), std::move(ex), std::move(sent), this,
367
+ &ObjectPrx::_iceI_isA, typeId, context);
358
368
  }
359
369
 
360
370
  /**
@@ -399,7 +409,8 @@ public:
399
409
  ::std::function<void(bool)> sent = nullptr,
400
410
  const ::Ice::Context& context = ::Ice::noExplicitContext)
401
411
  {
402
- return _makeLamdaOutgoing<void>(response, ex, sent, this, &ObjectPrx::_iceI_ping, context);
412
+ return _makeLamdaOutgoing<void>(std::move(response), std::move(ex), std::move(sent), this,
413
+ &ObjectPrx::_iceI_ping, context);
403
414
  }
404
415
 
405
416
  /**
@@ -445,7 +456,8 @@ public:
445
456
  ::std::function<void(bool)> sent = nullptr,
446
457
  const ::Ice::Context& context = ::Ice::noExplicitContext)
447
458
  {
448
- return _makeLamdaOutgoing<::std::vector<::std::string>>(response, ex, sent, this, &ObjectPrx::_iceI_ids, context);
459
+ return _makeLamdaOutgoing<::std::vector<::std::string>>(std::move(response), std::move(ex), std::move(sent),
460
+ this, &ObjectPrx::_iceI_ids, context);
449
461
  }
450
462
 
451
463
  /**
@@ -490,7 +502,8 @@ public:
490
502
  ::std::function<void(bool)> sent = nullptr,
491
503
  const ::Ice::Context& context = ::Ice::noExplicitContext)
492
504
  {
493
- return _makeLamdaOutgoing<::std::string>(response, ex, sent, this, &ObjectPrx::_iceI_id, context);
505
+ return _makeLamdaOutgoing<::std::string>(std::move(response), std::move(ex), std::move(sent), this,
506
+ &ObjectPrx::_iceI_id, context);
494
507
  }
495
508
 
496
509
  /**
@@ -583,12 +596,16 @@ public:
583
596
  ::std::function<void(::Ice::Object::Ice_invokeResult&&)> r;
584
597
  if(response)
585
598
  {
599
+ #if ICE_CPLUSPLUS >= 201402L
600
+ r = [response = std::move(response)](::Ice::Object::Ice_invokeResult&& result)
601
+ #else
586
602
  r = [response](::Ice::Object::Ice_invokeResult&& result)
603
+ #endif
587
604
  {
588
605
  response(result.returnValue, std::move(result.outParams));
589
606
  };
590
607
  }
591
- auto outAsync = ::std::make_shared<Outgoing>(shared_from_this(), r, ex, sent);
608
+ auto outAsync = ::std::make_shared<Outgoing>(shared_from_this(), std::move(r), std::move(ex), std::move(sent));
592
609
  outAsync->invoke(operation, mode, ::IceInternal::makePair(inParams), context);
593
610
  return [outAsync]() { outAsync->cancel(); };
594
611
  }
@@ -669,12 +686,16 @@ public:
669
686
  ::std::function<void(Result&&)> r;
670
687
  if(response)
671
688
  {
689
+ #if ICE_CPLUSPLUS >= 201402L
690
+ r = [response = std::move(response)](Result&& result)
691
+ #else
672
692
  r = [response](Result&& result)
693
+ #endif
673
694
  {
674
695
  response(::std::get<0>(result), ::std::move(::std::get<1>(result)));
675
696
  };
676
697
  }
677
- auto outAsync = ::std::make_shared<Outgoing>(shared_from_this(), r, ex, sent);
698
+ auto outAsync = ::std::make_shared<Outgoing>(shared_from_this(), std::move(r), std::move(ex), std::move(sent));
678
699
  outAsync->invoke(operation, mode, inParams, context);
679
700
  return [outAsync]() { outAsync->cancel(); };
680
701
  }
@@ -1023,7 +1044,7 @@ public:
1023
1044
  ::std::function<void(bool)> sent = nullptr)
1024
1045
  {
1025
1046
  using LambdaOutgoing = ::IceInternal::ProxyGetConnectionLambda;
1026
- auto outAsync = ::std::make_shared<LambdaOutgoing>(shared_from_this(), response, ex, sent);
1047
+ auto outAsync = ::std::make_shared<LambdaOutgoing>(shared_from_this(), std::move(response), std::move(ex), std::move(sent));
1027
1048
  _iceI_getConnection(outAsync);
1028
1049
  return [outAsync]() { outAsync->cancel(); };
1029
1050
  }
@@ -1073,7 +1094,7 @@ public:
1073
1094
  ::std::function<void(bool)> sent = nullptr)
1074
1095
  {
1075
1096
  using LambdaOutgoing = ::IceInternal::ProxyFlushBatchLambda;
1076
- auto outAsync = ::std::make_shared<LambdaOutgoing>(shared_from_this(), ex, sent);
1097
+ auto outAsync = ::std::make_shared<LambdaOutgoing>(shared_from_this(), std::move(ex), std::move(sent));
1077
1098
  _iceI_flushBatchRequests(outAsync);
1078
1099
  return [outAsync]() { outAsync->cancel(); };
1079
1100
  }
@@ -1128,7 +1149,8 @@ protected:
1128
1149
  template<typename R, typename Re, typename E, typename S, typename Obj, typename Fn, typename... Args>
1129
1150
  ::std::function<void()> _makeLamdaOutgoing(Re r, E e, S s, Obj obj, Fn fn, Args&&... args)
1130
1151
  {
1131
- auto outAsync = ::std::make_shared<::IceInternal::LambdaOutgoing<R>>(shared_from_this(), r, e, s);
1152
+ auto outAsync = ::std::make_shared<::IceInternal::LambdaOutgoing<R>>(shared_from_this(),
1153
+ std::move(r), std::move(e), std::move(s));
1132
1154
  (obj->*fn)(outAsync, std::forward<Args>(args)...);
1133
1155
  return [outAsync]() { outAsync->cancel(); };
1134
1156
  }
@@ -283,8 +283,8 @@
283
283
  //
284
284
  // The Ice version.
285
285
  //
286
- #define ICE_STRING_VERSION "3.7.3" // "A.B.C", with A=major, B=minor, C=patch
287
- #define ICE_INT_VERSION 30703 // AABBCC, with AA=major, BB=minor, CC=patch
286
+ #define ICE_STRING_VERSION "3.7.4" // "A.B.C", with A=major, B=minor, C=patch
287
+ #define ICE_INT_VERSION 30704 // AABBCC, with AA=major, BB=minor, CC=patch
288
288
  #define ICE_SO_VERSION "37" // "ABC", with A=major, B=minor, C=patch
289
289
 
290
290
  #if !defined(ICE_BUILDING_ICE) && defined(ICE_API_EXPORTS)
@@ -7,8 +7,8 @@
7
7
 
8
8
  #include "winver.h"
9
9
 
10
- #define ICE_VERSION 3,7,3,0
11
- #define ICE_STRING_VERSION "3.7.3\0"
10
+ #define ICE_VERSION 3,7,4,0
11
+ #define ICE_STRING_VERSION "3.7.4\0"
12
12
  #define ICE_SO_VERSION "37\0"
13
13
  #define ICE_COMPANY_NAME "ZeroC, Inc.\0"
14
14
  #define ICE_COPYRIGHT "\251 ZeroC, Inc.\0"
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.3
5
+ // Ice version 3.7.4
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -35,7 +35,7 @@
35
35
  # if ICE_INT_VERSION % 100 >= 50
36
36
  # error Beta header file detected
37
37
  # endif
38
- # if ICE_INT_VERSION % 100 < 3
38
+ # if ICE_INT_VERSION % 100 < 4
39
39
  # error Ice patch level mismatch!
40
40
  # endif
41
41
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.3
5
+ // Ice version 3.7.4
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -56,7 +56,7 @@
56
56
  # if ICE_INT_VERSION % 100 >= 50
57
57
  # error Beta header file detected
58
58
  # endif
59
- # if ICE_INT_VERSION % 100 < 3
59
+ # if ICE_INT_VERSION % 100 < 4
60
60
  # error Ice patch level mismatch!
61
61
  # endif
62
62
  #endif
@@ -513,7 +513,7 @@ public:
513
513
  * If Ice.Admin.ServerId is set and the provided object adapter has a {@link Locator},
514
514
  * createAdmin registers the Admin's Process facet with the {@link Locator}'s {@link LocatorRegistry}.
515
515
  *
516
- * createAdmin call only be called once; subsequent calls raise InitializationException.
516
+ * createAdmin must only be called once; subsequent calls raise InitializationException.
517
517
  * @param adminAdapter The object adapter used to host the Admin object; if null and
518
518
  * Ice.Admin.Endpoints is set, create, activate and use the Ice.Admin object adapter.
519
519
  * @param adminId The identity of the Admin object.
@@ -1069,7 +1069,7 @@ public:
1069
1069
  * If Ice.Admin.ServerId is set and the provided object adapter has a {@link Locator},
1070
1070
  * createAdmin registers the Admin's Process facet with the {@link Locator}'s {@link LocatorRegistry}.
1071
1071
  *
1072
- * createAdmin call only be called once; subsequent calls raise InitializationException.
1072
+ * createAdmin must only be called once; subsequent calls raise InitializationException.
1073
1073
  * @param adminAdapter The object adapter used to host the Admin object; if null and
1074
1074
  * Ice.Admin.Endpoints is set, create, activate and use the Ice.Admin object adapter.
1075
1075
  * @param adminId The identity of the Admin object.
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.3
5
+ // Ice version 3.7.4
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -35,7 +35,7 @@
35
35
  # if ICE_INT_VERSION % 100 >= 50
36
36
  # error Beta header file detected
37
37
  # endif
38
- # if ICE_INT_VERSION % 100 < 3
38
+ # if ICE_INT_VERSION % 100 < 4
39
39
  # error Ice patch level mismatch!
40
40
  # endif
41
41
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.3
5
+ // Ice version 3.7.4
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -39,7 +39,7 @@
39
39
  # if ICE_INT_VERSION % 100 >= 50
40
40
  # error Beta header file detected
41
41
  # endif
42
- # if ICE_INT_VERSION % 100 < 3
42
+ # if ICE_INT_VERSION % 100 < 4
43
43
  # error Ice patch level mismatch!
44
44
  # endif
45
45
  #endif
@@ -235,10 +235,10 @@ public:
235
235
  * @param connectionId The connection id.
236
236
  */
237
237
  ConnectionInfo(const ::std::shared_ptr<::Ice::ConnectionInfo>& underlying, bool incoming, const ::std::string& adapterName, const ::std::string& connectionId) :
238
- underlying(::std::move(underlying)),
238
+ underlying(underlying),
239
239
  incoming(incoming),
240
- adapterName(::std::move(adapterName)),
241
- connectionId(::std::move(connectionId))
240
+ adapterName(adapterName),
241
+ connectionId(connectionId)
242
242
  {
243
243
  }
244
244
 
@@ -543,10 +543,10 @@ public:
543
543
  * @param remotePort The remote port.
544
544
  */
545
545
  IPConnectionInfo(const ::std::shared_ptr<::Ice::ConnectionInfo>& underlying, bool incoming, const ::std::string& adapterName, const ::std::string& connectionId, const ::std::string& localAddress, int localPort, const ::std::string& remoteAddress, int remotePort) :
546
- ConnectionInfo(::std::move(underlying), incoming, ::std::move(adapterName), ::std::move(connectionId)),
547
- localAddress(::std::move(localAddress)),
546
+ ConnectionInfo(underlying, incoming, adapterName, connectionId),
547
+ localAddress(localAddress),
548
548
  localPort(localPort),
549
- remoteAddress(::std::move(remoteAddress)),
549
+ remoteAddress(remoteAddress),
550
550
  remotePort(remotePort)
551
551
  {
552
552
  }
@@ -604,7 +604,7 @@ public:
604
604
  * @param sndSize The connection buffer send size.
605
605
  */
606
606
  TCPConnectionInfo(const ::std::shared_ptr<::Ice::ConnectionInfo>& underlying, bool incoming, const ::std::string& adapterName, const ::std::string& connectionId, const ::std::string& localAddress, int localPort, const ::std::string& remoteAddress, int remotePort, int rcvSize, int sndSize) :
607
- IPConnectionInfo(::std::move(underlying), incoming, ::std::move(adapterName), ::std::move(connectionId), ::std::move(localAddress), localPort, ::std::move(remoteAddress), remotePort),
607
+ IPConnectionInfo(underlying, incoming, adapterName, connectionId, localAddress, localPort, remoteAddress, remotePort),
608
608
  rcvSize(rcvSize),
609
609
  sndSize(sndSize)
610
610
  {
@@ -658,8 +658,8 @@ public:
658
658
  * @param sndSize The connection buffer send size.
659
659
  */
660
660
  UDPConnectionInfo(const ::std::shared_ptr<::Ice::ConnectionInfo>& underlying, bool incoming, const ::std::string& adapterName, const ::std::string& connectionId, const ::std::string& localAddress, int localPort, const ::std::string& remoteAddress, int remotePort, const ::std::string& mcastAddress, int mcastPort, int rcvSize, int sndSize) :
661
- IPConnectionInfo(::std::move(underlying), incoming, ::std::move(adapterName), ::std::move(connectionId), ::std::move(localAddress), localPort, ::std::move(remoteAddress), remotePort),
662
- mcastAddress(::std::move(mcastAddress)),
661
+ IPConnectionInfo(underlying, incoming, adapterName, connectionId, localAddress, localPort, remoteAddress, remotePort),
662
+ mcastAddress(mcastAddress),
663
663
  mcastPort(mcastPort),
664
664
  rcvSize(rcvSize),
665
665
  sndSize(sndSize)
@@ -710,8 +710,8 @@ public:
710
710
  * @param headers The headers from the HTTP upgrade request.
711
711
  */
712
712
  WSConnectionInfo(const ::std::shared_ptr<::Ice::ConnectionInfo>& underlying, bool incoming, const ::std::string& adapterName, const ::std::string& connectionId, const ::Ice::HeaderDict& headers) :
713
- ConnectionInfo(::std::move(underlying), incoming, ::std::move(adapterName), ::std::move(connectionId)),
714
- headers(::std::move(headers))
713
+ ConnectionInfo(underlying, incoming, adapterName, connectionId),
714
+ headers(headers)
715
715
  {
716
716
  }
717
717