persistent.capnp.h (25171B)
1 // Generated by Cap'n Proto compiler, DO NOT EDIT 2 // source: persistent.capnp 3 4 #pragma once 5 6 #include <capnp/generated-header-support.h> 7 #include <kj/windows-sanity.h> 8 #if !CAPNP_LITE 9 #include <capnp/capability.h> 10 #endif // !CAPNP_LITE 11 12 #if CAPNP_VERSION != 10000 13 #error "Version mismatch between generated code and library headers. You must use the same version of the Cap'n Proto compiler and library." 14 #endif 15 16 17 CAPNP_BEGIN_HEADER 18 19 namespace capnp { 20 namespace schemas { 21 22 CAPNP_DECLARE_SCHEMA(c8cb212fcd9f5691); 23 CAPNP_DECLARE_SCHEMA(f76fba59183073a5); 24 CAPNP_DECLARE_SCHEMA(b76848c18c40efbf); 25 CAPNP_DECLARE_SCHEMA(f622595091cafb67); 26 27 } // namespace schemas 28 } // namespace capnp 29 30 namespace capnp { 31 32 template <typename SturdyRef = ::capnp::AnyPointer, typename Owner = ::capnp::AnyPointer> 33 struct Persistent { 34 Persistent() = delete; 35 36 #if !CAPNP_LITE 37 class Client; 38 class Server; 39 #endif // !CAPNP_LITE 40 41 struct SaveParams; 42 struct SaveResults; 43 44 #if !CAPNP_LITE 45 struct _capnpPrivate { 46 CAPNP_DECLARE_INTERFACE_HEADER(c8cb212fcd9f5691) 47 static const ::capnp::_::RawBrandedSchema::Scope brandScopes[]; 48 static const ::capnp::_::RawBrandedSchema::Binding brandBindings[]; 49 static const ::capnp::_::RawBrandedSchema::Dependency brandDependencies[]; 50 static const ::capnp::_::RawBrandedSchema specificBrand; 51 static constexpr ::capnp::_::RawBrandedSchema const* brand() { return ::capnp::_::ChooseBrand<_capnpPrivate, SturdyRef, Owner>::brand(); } 52 }; 53 #endif // !CAPNP_LITE 54 }; 55 56 template <typename SturdyRef, typename Owner> 57 struct Persistent<SturdyRef, Owner>::SaveParams { 58 SaveParams() = delete; 59 60 class Reader; 61 class Builder; 62 class Pipeline; 63 64 struct _capnpPrivate { 65 CAPNP_DECLARE_STRUCT_HEADER(f76fba59183073a5, 0, 1) 66 #if !CAPNP_LITE 67 static const ::capnp::_::RawBrandedSchema::Scope brandScopes[]; 68 static const ::capnp::_::RawBrandedSchema::Binding brandBindings[]; 69 static const ::capnp::_::RawBrandedSchema specificBrand; 70 static constexpr ::capnp::_::RawBrandedSchema const* brand() { return ::capnp::_::ChooseBrand<_capnpPrivate, SturdyRef, Owner>::brand(); } 71 #endif // !CAPNP_LITE 72 }; 73 }; 74 75 template <typename SturdyRef, typename Owner> 76 struct Persistent<SturdyRef, Owner>::SaveResults { 77 SaveResults() = delete; 78 79 class Reader; 80 class Builder; 81 class Pipeline; 82 83 struct _capnpPrivate { 84 CAPNP_DECLARE_STRUCT_HEADER(b76848c18c40efbf, 0, 1) 85 #if !CAPNP_LITE 86 static const ::capnp::_::RawBrandedSchema::Scope brandScopes[]; 87 static const ::capnp::_::RawBrandedSchema::Binding brandBindings[]; 88 static const ::capnp::_::RawBrandedSchema specificBrand; 89 static constexpr ::capnp::_::RawBrandedSchema const* brand() { return ::capnp::_::ChooseBrand<_capnpPrivate, SturdyRef, Owner>::brand(); } 90 #endif // !CAPNP_LITE 91 }; 92 }; 93 94 // ======================================================================================= 95 96 #if !CAPNP_LITE 97 template <typename SturdyRef, typename Owner> 98 class Persistent<SturdyRef, Owner>::Client 99 : public virtual ::capnp::Capability::Client { 100 public: 101 typedef Persistent Calls; 102 typedef Persistent Reads; 103 104 Client(decltype(nullptr)); 105 explicit Client(::kj::Own< ::capnp::ClientHook>&& hook); 106 template <typename _t, typename = ::kj::EnableIf< ::kj::canConvert<_t*, Server*>()>> 107 Client(::kj::Own<_t>&& server); 108 template <typename _t, typename = ::kj::EnableIf< ::kj::canConvert<_t*, Client*>()>> 109 Client(::kj::Promise<_t>&& promise); 110 Client(::kj::Exception&& exception); 111 Client(Client&) = default; 112 Client(Client&&) = default; 113 Client& operator=(Client& other); 114 Client& operator=(Client&& other); 115 116 template <typename SturdyRef2 = ::capnp::AnyPointer, typename Owner2 = ::capnp::AnyPointer> 117 typename Persistent<SturdyRef2, Owner2>::Client asGeneric() { 118 return castAs<Persistent<SturdyRef2, Owner2>>(); 119 } 120 121 CAPNP_AUTO_IF_MSVC(::capnp::Request<typename ::capnp::Persistent<SturdyRef, Owner>::SaveParams, typename ::capnp::Persistent<SturdyRef, Owner>::SaveResults>) saveRequest( 122 ::kj::Maybe< ::capnp::MessageSize> sizeHint = nullptr); 123 124 protected: 125 Client() = default; 126 }; 127 128 template <typename SturdyRef, typename Owner> 129 class Persistent<SturdyRef, Owner>::Server 130 : public virtual ::capnp::Capability::Server { 131 public: 132 typedef Persistent Serves; 133 134 ::capnp::Capability::Server::DispatchCallResult dispatchCall( 135 uint64_t interfaceId, uint16_t methodId, 136 ::capnp::CallContext< ::capnp::AnyPointer, ::capnp::AnyPointer> context) 137 override; 138 139 protected: 140 typedef ::capnp::CallContext<typename ::capnp::Persistent<SturdyRef, Owner>::SaveParams, typename ::capnp::Persistent<SturdyRef, Owner>::SaveResults> SaveContext; 141 virtual ::kj::Promise<void> save(SaveContext context); 142 143 inline typename ::capnp::Persistent<SturdyRef, Owner>::Client thisCap() { 144 return ::capnp::Capability::Server::thisCap() 145 .template castAs< ::capnp::Persistent<SturdyRef, Owner>>(); 146 } 147 148 ::capnp::Capability::Server::DispatchCallResult dispatchCallInternal( 149 uint16_t methodId, 150 ::capnp::CallContext< ::capnp::AnyPointer, ::capnp::AnyPointer> context); 151 }; 152 #endif // !CAPNP_LITE 153 154 template <typename SturdyRef, typename Owner> 155 class Persistent<SturdyRef, Owner>::SaveParams::Reader { 156 public: 157 typedef SaveParams Reads; 158 159 Reader() = default; 160 inline explicit Reader(::capnp::_::StructReader base): _reader(base) {} 161 162 inline ::capnp::MessageSize totalSize() const { 163 return _reader.totalSize().asPublic(); 164 } 165 166 #if !CAPNP_LITE 167 inline ::kj::StringTree toString() const { 168 return ::capnp::_::structString(_reader, *_capnpPrivate::brand()); 169 } 170 #endif // !CAPNP_LITE 171 172 template <typename SturdyRef2 = ::capnp::AnyPointer, typename Owner2 = ::capnp::AnyPointer> 173 typename Persistent<SturdyRef2, Owner2>::SaveParams::Reader asPersistentGeneric() { 174 return typename Persistent<SturdyRef2, Owner2>::SaveParams::Reader(_reader); 175 } 176 177 inline bool hasSealFor() const; 178 inline ::capnp::ReaderFor<Owner> getSealFor() const; 179 180 private: 181 ::capnp::_::StructReader _reader; 182 template <typename, ::capnp::Kind> 183 friend struct ::capnp::ToDynamic_; 184 template <typename, ::capnp::Kind> 185 friend struct ::capnp::_::PointerHelpers; 186 template <typename, ::capnp::Kind> 187 friend struct ::capnp::List; 188 friend class ::capnp::MessageBuilder; 189 friend class ::capnp::Orphanage; 190 }; 191 192 template <typename SturdyRef, typename Owner> 193 class Persistent<SturdyRef, Owner>::SaveParams::Builder { 194 public: 195 typedef SaveParams Builds; 196 197 Builder() = delete; // Deleted to discourage incorrect usage. 198 // You can explicitly initialize to nullptr instead. 199 inline Builder(decltype(nullptr)) {} 200 inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {} 201 inline operator Reader() const { return Reader(_builder.asReader()); } 202 inline Reader asReader() const { return *this; } 203 204 inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); } 205 #if !CAPNP_LITE 206 inline ::kj::StringTree toString() const { return asReader().toString(); } 207 #endif // !CAPNP_LITE 208 209 template <typename SturdyRef2 = ::capnp::AnyPointer, typename Owner2 = ::capnp::AnyPointer> 210 typename Persistent<SturdyRef2, Owner2>::SaveParams::Builder asPersistentGeneric() { 211 return typename Persistent<SturdyRef2, Owner2>::SaveParams::Builder(_builder); 212 } 213 214 inline bool hasSealFor(); 215 inline ::capnp::BuilderFor<Owner> getSealFor(); 216 inline void setSealFor( ::capnp::ReaderFor<Owner> value); 217 inline ::capnp::BuilderFor<Owner> initSealFor(); 218 inline ::capnp::BuilderFor<Owner> initSealFor(unsigned int size); 219 inline void adoptSealFor(::capnp::Orphan<Owner>&& value); 220 inline ::capnp::Orphan<Owner> disownSealFor(); 221 222 private: 223 ::capnp::_::StructBuilder _builder; 224 template <typename, ::capnp::Kind> 225 friend struct ::capnp::ToDynamic_; 226 friend class ::capnp::Orphanage; 227 template <typename, ::capnp::Kind> 228 friend struct ::capnp::_::PointerHelpers; 229 }; 230 231 #if !CAPNP_LITE 232 template <typename SturdyRef, typename Owner> 233 class Persistent<SturdyRef, Owner>::SaveParams::Pipeline { 234 public: 235 typedef SaveParams Pipelines; 236 237 inline Pipeline(decltype(nullptr)): _typeless(nullptr) {} 238 inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless) 239 : _typeless(kj::mv(typeless)) {} 240 241 inline ::capnp::PipelineFor<Owner> getSealFor(); 242 private: 243 ::capnp::AnyPointer::Pipeline _typeless; 244 friend class ::capnp::PipelineHook; 245 template <typename, ::capnp::Kind> 246 friend struct ::capnp::ToDynamic_; 247 }; 248 #endif // !CAPNP_LITE 249 250 template <typename SturdyRef, typename Owner> 251 class Persistent<SturdyRef, Owner>::SaveResults::Reader { 252 public: 253 typedef SaveResults Reads; 254 255 Reader() = default; 256 inline explicit Reader(::capnp::_::StructReader base): _reader(base) {} 257 258 inline ::capnp::MessageSize totalSize() const { 259 return _reader.totalSize().asPublic(); 260 } 261 262 #if !CAPNP_LITE 263 inline ::kj::StringTree toString() const { 264 return ::capnp::_::structString(_reader, *_capnpPrivate::brand()); 265 } 266 #endif // !CAPNP_LITE 267 268 template <typename SturdyRef2 = ::capnp::AnyPointer, typename Owner2 = ::capnp::AnyPointer> 269 typename Persistent<SturdyRef2, Owner2>::SaveResults::Reader asPersistentGeneric() { 270 return typename Persistent<SturdyRef2, Owner2>::SaveResults::Reader(_reader); 271 } 272 273 inline bool hasSturdyRef() const; 274 inline ::capnp::ReaderFor<SturdyRef> getSturdyRef() const; 275 276 private: 277 ::capnp::_::StructReader _reader; 278 template <typename, ::capnp::Kind> 279 friend struct ::capnp::ToDynamic_; 280 template <typename, ::capnp::Kind> 281 friend struct ::capnp::_::PointerHelpers; 282 template <typename, ::capnp::Kind> 283 friend struct ::capnp::List; 284 friend class ::capnp::MessageBuilder; 285 friend class ::capnp::Orphanage; 286 }; 287 288 template <typename SturdyRef, typename Owner> 289 class Persistent<SturdyRef, Owner>::SaveResults::Builder { 290 public: 291 typedef SaveResults Builds; 292 293 Builder() = delete; // Deleted to discourage incorrect usage. 294 // You can explicitly initialize to nullptr instead. 295 inline Builder(decltype(nullptr)) {} 296 inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {} 297 inline operator Reader() const { return Reader(_builder.asReader()); } 298 inline Reader asReader() const { return *this; } 299 300 inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); } 301 #if !CAPNP_LITE 302 inline ::kj::StringTree toString() const { return asReader().toString(); } 303 #endif // !CAPNP_LITE 304 305 template <typename SturdyRef2 = ::capnp::AnyPointer, typename Owner2 = ::capnp::AnyPointer> 306 typename Persistent<SturdyRef2, Owner2>::SaveResults::Builder asPersistentGeneric() { 307 return typename Persistent<SturdyRef2, Owner2>::SaveResults::Builder(_builder); 308 } 309 310 inline bool hasSturdyRef(); 311 inline ::capnp::BuilderFor<SturdyRef> getSturdyRef(); 312 inline void setSturdyRef( ::capnp::ReaderFor<SturdyRef> value); 313 inline ::capnp::BuilderFor<SturdyRef> initSturdyRef(); 314 inline ::capnp::BuilderFor<SturdyRef> initSturdyRef(unsigned int size); 315 inline void adoptSturdyRef(::capnp::Orphan<SturdyRef>&& value); 316 inline ::capnp::Orphan<SturdyRef> disownSturdyRef(); 317 318 private: 319 ::capnp::_::StructBuilder _builder; 320 template <typename, ::capnp::Kind> 321 friend struct ::capnp::ToDynamic_; 322 friend class ::capnp::Orphanage; 323 template <typename, ::capnp::Kind> 324 friend struct ::capnp::_::PointerHelpers; 325 }; 326 327 #if !CAPNP_LITE 328 template <typename SturdyRef, typename Owner> 329 class Persistent<SturdyRef, Owner>::SaveResults::Pipeline { 330 public: 331 typedef SaveResults Pipelines; 332 333 inline Pipeline(decltype(nullptr)): _typeless(nullptr) {} 334 inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless) 335 : _typeless(kj::mv(typeless)) {} 336 337 inline ::capnp::PipelineFor<SturdyRef> getSturdyRef(); 338 private: 339 ::capnp::AnyPointer::Pipeline _typeless; 340 friend class ::capnp::PipelineHook; 341 template <typename, ::capnp::Kind> 342 friend struct ::capnp::ToDynamic_; 343 }; 344 #endif // !CAPNP_LITE 345 346 // ======================================================================================= 347 348 #if !CAPNP_LITE 349 template <typename SturdyRef, typename Owner> 350 inline Persistent<SturdyRef, Owner>::Client::Client(decltype(nullptr)) 351 : ::capnp::Capability::Client(nullptr) {} 352 template <typename SturdyRef, typename Owner> 353 inline Persistent<SturdyRef, Owner>::Client::Client( 354 ::kj::Own< ::capnp::ClientHook>&& hook) 355 : ::capnp::Capability::Client(::kj::mv(hook)) {} 356 template <typename SturdyRef, typename Owner> 357 template <typename _t, typename> 358 inline Persistent<SturdyRef, Owner>::Client::Client(::kj::Own<_t>&& server) 359 : ::capnp::Capability::Client(::kj::mv(server)) {} 360 template <typename SturdyRef, typename Owner> 361 template <typename _t, typename> 362 inline Persistent<SturdyRef, Owner>::Client::Client(::kj::Promise<_t>&& promise) 363 : ::capnp::Capability::Client(::kj::mv(promise)) {} 364 template <typename SturdyRef, typename Owner> 365 inline Persistent<SturdyRef, Owner>::Client::Client(::kj::Exception&& exception) 366 : ::capnp::Capability::Client(::kj::mv(exception)) {} 367 template <typename SturdyRef, typename Owner> 368 inline typename ::capnp::Persistent<SturdyRef, Owner>::Client& Persistent<SturdyRef, Owner>::Client::operator=(Client& other) { 369 ::capnp::Capability::Client::operator=(other); 370 return *this; 371 } 372 template <typename SturdyRef, typename Owner> 373 inline typename ::capnp::Persistent<SturdyRef, Owner>::Client& Persistent<SturdyRef, Owner>::Client::operator=(Client&& other) { 374 ::capnp::Capability::Client::operator=(kj::mv(other)); 375 return *this; 376 } 377 378 #endif // !CAPNP_LITE 379 template <typename SturdyRef, typename Owner> 380 inline bool Persistent<SturdyRef, Owner>::SaveParams::Reader::hasSealFor() const { 381 return !_reader.getPointerField( 382 ::capnp::bounded<0>() * ::capnp::POINTERS).isNull(); 383 } 384 template <typename SturdyRef, typename Owner> 385 inline bool Persistent<SturdyRef, Owner>::SaveParams::Builder::hasSealFor() { 386 return !_builder.getPointerField( 387 ::capnp::bounded<0>() * ::capnp::POINTERS).isNull(); 388 } 389 template <typename SturdyRef, typename Owner> 390 inline ::capnp::ReaderFor<Owner> Persistent<SturdyRef, Owner>::SaveParams::Reader::getSealFor() const { 391 return ::capnp::_::PointerHelpers<Owner>::get(_reader.getPointerField( 392 ::capnp::bounded<0>() * ::capnp::POINTERS)); 393 } 394 template <typename SturdyRef, typename Owner> 395 inline ::capnp::BuilderFor<Owner> Persistent<SturdyRef, Owner>::SaveParams::Builder::getSealFor() { 396 return ::capnp::_::PointerHelpers<Owner>::get(_builder.getPointerField( 397 ::capnp::bounded<0>() * ::capnp::POINTERS)); 398 } 399 #if !CAPNP_LITE 400 template <typename SturdyRef, typename Owner> 401 inline ::capnp::PipelineFor<Owner> Persistent<SturdyRef, Owner>::SaveParams::Pipeline::getSealFor() { 402 return ::capnp::PipelineFor<Owner>(_typeless.getPointerField(0)); 403 } 404 #endif // !CAPNP_LITE 405 template <typename SturdyRef, typename Owner> 406 inline void Persistent<SturdyRef, Owner>::SaveParams::Builder::setSealFor( ::capnp::ReaderFor<Owner> value) { 407 ::capnp::_::PointerHelpers<Owner>::set(_builder.getPointerField( 408 ::capnp::bounded<0>() * ::capnp::POINTERS), value); 409 } 410 template <typename SturdyRef, typename Owner> 411 inline ::capnp::BuilderFor<Owner> Persistent<SturdyRef, Owner>::SaveParams::Builder::initSealFor() { 412 return ::capnp::_::PointerHelpers<Owner>::init(_builder.getPointerField( 413 ::capnp::bounded<0>() * ::capnp::POINTERS)); 414 } 415 template <typename SturdyRef, typename Owner> 416 inline ::capnp::BuilderFor<Owner> Persistent<SturdyRef, Owner>::SaveParams::Builder::initSealFor(unsigned int size) { 417 return ::capnp::_::PointerHelpers<Owner>::init(_builder.getPointerField( 418 ::capnp::bounded<0>() * ::capnp::POINTERS), size); 419 } 420 template <typename SturdyRef, typename Owner> 421 inline void Persistent<SturdyRef, Owner>::SaveParams::Builder::adoptSealFor( 422 ::capnp::Orphan<Owner>&& value) { 423 ::capnp::_::PointerHelpers<Owner>::adopt(_builder.getPointerField( 424 ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value)); 425 } 426 template <typename SturdyRef, typename Owner> 427 inline ::capnp::Orphan<Owner> Persistent<SturdyRef, Owner>::SaveParams::Builder::disownSealFor() { 428 return ::capnp::_::PointerHelpers<Owner>::disown(_builder.getPointerField( 429 ::capnp::bounded<0>() * ::capnp::POINTERS)); 430 } 431 432 // Persistent<SturdyRef, Owner>::SaveParams 433 template <typename SturdyRef, typename Owner> 434 constexpr uint16_t Persistent<SturdyRef, Owner>::SaveParams::_capnpPrivate::dataWordSize; 435 template <typename SturdyRef, typename Owner> 436 constexpr uint16_t Persistent<SturdyRef, Owner>::SaveParams::_capnpPrivate::pointerCount; 437 #if !CAPNP_LITE 438 template <typename SturdyRef, typename Owner> 439 constexpr ::capnp::Kind Persistent<SturdyRef, Owner>::SaveParams::_capnpPrivate::kind; 440 template <typename SturdyRef, typename Owner> 441 constexpr ::capnp::_::RawSchema const* Persistent<SturdyRef, Owner>::SaveParams::_capnpPrivate::schema; 442 template <typename SturdyRef, typename Owner> 443 const ::capnp::_::RawBrandedSchema::Scope Persistent<SturdyRef, Owner>::SaveParams::_capnpPrivate::brandScopes[] = { 444 { 0xc8cb212fcd9f5691, brandBindings + 0, 2, false}, 445 }; 446 template <typename SturdyRef, typename Owner> 447 const ::capnp::_::RawBrandedSchema::Binding Persistent<SturdyRef, Owner>::SaveParams::_capnpPrivate::brandBindings[] = { 448 ::capnp::_::brandBindingFor<SturdyRef>(), 449 ::capnp::_::brandBindingFor<Owner>(), 450 }; 451 template <typename SturdyRef, typename Owner> 452 const ::capnp::_::RawBrandedSchema Persistent<SturdyRef, Owner>::SaveParams::_capnpPrivate::specificBrand = { 453 &::capnp::schemas::s_f76fba59183073a5, brandScopes, nullptr, 454 1, 0, nullptr 455 }; 456 #endif // !CAPNP_LITE 457 458 template <typename SturdyRef, typename Owner> 459 inline bool Persistent<SturdyRef, Owner>::SaveResults::Reader::hasSturdyRef() const { 460 return !_reader.getPointerField( 461 ::capnp::bounded<0>() * ::capnp::POINTERS).isNull(); 462 } 463 template <typename SturdyRef, typename Owner> 464 inline bool Persistent<SturdyRef, Owner>::SaveResults::Builder::hasSturdyRef() { 465 return !_builder.getPointerField( 466 ::capnp::bounded<0>() * ::capnp::POINTERS).isNull(); 467 } 468 template <typename SturdyRef, typename Owner> 469 inline ::capnp::ReaderFor<SturdyRef> Persistent<SturdyRef, Owner>::SaveResults::Reader::getSturdyRef() const { 470 return ::capnp::_::PointerHelpers<SturdyRef>::get(_reader.getPointerField( 471 ::capnp::bounded<0>() * ::capnp::POINTERS)); 472 } 473 template <typename SturdyRef, typename Owner> 474 inline ::capnp::BuilderFor<SturdyRef> Persistent<SturdyRef, Owner>::SaveResults::Builder::getSturdyRef() { 475 return ::capnp::_::PointerHelpers<SturdyRef>::get(_builder.getPointerField( 476 ::capnp::bounded<0>() * ::capnp::POINTERS)); 477 } 478 #if !CAPNP_LITE 479 template <typename SturdyRef, typename Owner> 480 inline ::capnp::PipelineFor<SturdyRef> Persistent<SturdyRef, Owner>::SaveResults::Pipeline::getSturdyRef() { 481 return ::capnp::PipelineFor<SturdyRef>(_typeless.getPointerField(0)); 482 } 483 #endif // !CAPNP_LITE 484 template <typename SturdyRef, typename Owner> 485 inline void Persistent<SturdyRef, Owner>::SaveResults::Builder::setSturdyRef( ::capnp::ReaderFor<SturdyRef> value) { 486 ::capnp::_::PointerHelpers<SturdyRef>::set(_builder.getPointerField( 487 ::capnp::bounded<0>() * ::capnp::POINTERS), value); 488 } 489 template <typename SturdyRef, typename Owner> 490 inline ::capnp::BuilderFor<SturdyRef> Persistent<SturdyRef, Owner>::SaveResults::Builder::initSturdyRef() { 491 return ::capnp::_::PointerHelpers<SturdyRef>::init(_builder.getPointerField( 492 ::capnp::bounded<0>() * ::capnp::POINTERS)); 493 } 494 template <typename SturdyRef, typename Owner> 495 inline ::capnp::BuilderFor<SturdyRef> Persistent<SturdyRef, Owner>::SaveResults::Builder::initSturdyRef(unsigned int size) { 496 return ::capnp::_::PointerHelpers<SturdyRef>::init(_builder.getPointerField( 497 ::capnp::bounded<0>() * ::capnp::POINTERS), size); 498 } 499 template <typename SturdyRef, typename Owner> 500 inline void Persistent<SturdyRef, Owner>::SaveResults::Builder::adoptSturdyRef( 501 ::capnp::Orphan<SturdyRef>&& value) { 502 ::capnp::_::PointerHelpers<SturdyRef>::adopt(_builder.getPointerField( 503 ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value)); 504 } 505 template <typename SturdyRef, typename Owner> 506 inline ::capnp::Orphan<SturdyRef> Persistent<SturdyRef, Owner>::SaveResults::Builder::disownSturdyRef() { 507 return ::capnp::_::PointerHelpers<SturdyRef>::disown(_builder.getPointerField( 508 ::capnp::bounded<0>() * ::capnp::POINTERS)); 509 } 510 511 // Persistent<SturdyRef, Owner>::SaveResults 512 template <typename SturdyRef, typename Owner> 513 constexpr uint16_t Persistent<SturdyRef, Owner>::SaveResults::_capnpPrivate::dataWordSize; 514 template <typename SturdyRef, typename Owner> 515 constexpr uint16_t Persistent<SturdyRef, Owner>::SaveResults::_capnpPrivate::pointerCount; 516 #if !CAPNP_LITE 517 template <typename SturdyRef, typename Owner> 518 constexpr ::capnp::Kind Persistent<SturdyRef, Owner>::SaveResults::_capnpPrivate::kind; 519 template <typename SturdyRef, typename Owner> 520 constexpr ::capnp::_::RawSchema const* Persistent<SturdyRef, Owner>::SaveResults::_capnpPrivate::schema; 521 template <typename SturdyRef, typename Owner> 522 const ::capnp::_::RawBrandedSchema::Scope Persistent<SturdyRef, Owner>::SaveResults::_capnpPrivate::brandScopes[] = { 523 { 0xc8cb212fcd9f5691, brandBindings + 0, 2, false}, 524 }; 525 template <typename SturdyRef, typename Owner> 526 const ::capnp::_::RawBrandedSchema::Binding Persistent<SturdyRef, Owner>::SaveResults::_capnpPrivate::brandBindings[] = { 527 ::capnp::_::brandBindingFor<SturdyRef>(), 528 ::capnp::_::brandBindingFor<Owner>(), 529 }; 530 template <typename SturdyRef, typename Owner> 531 const ::capnp::_::RawBrandedSchema Persistent<SturdyRef, Owner>::SaveResults::_capnpPrivate::specificBrand = { 532 &::capnp::schemas::s_b76848c18c40efbf, brandScopes, nullptr, 533 1, 0, nullptr 534 }; 535 #endif // !CAPNP_LITE 536 537 #if !CAPNP_LITE 538 template <typename SturdyRef, typename Owner> 539 CAPNP_AUTO_IF_MSVC(::capnp::Request<typename ::capnp::Persistent<SturdyRef, Owner>::SaveParams, typename ::capnp::Persistent<SturdyRef, Owner>::SaveResults>) 540 Persistent<SturdyRef, Owner>::Client::saveRequest(::kj::Maybe< ::capnp::MessageSize> sizeHint) { 541 return newCall<typename ::capnp::Persistent<SturdyRef, Owner>::SaveParams, typename ::capnp::Persistent<SturdyRef, Owner>::SaveResults>( 542 0xc8cb212fcd9f5691ull, 0, sizeHint); 543 } 544 template <typename SturdyRef, typename Owner> 545 ::kj::Promise<void> Persistent<SturdyRef, Owner>::Server::save(SaveContext) { 546 return ::capnp::Capability::Server::internalUnimplemented( 547 "capnp/persistent.capnp:Persistent", "save", 548 0xc8cb212fcd9f5691ull, 0); 549 } 550 template <typename SturdyRef, typename Owner> 551 ::capnp::Capability::Server::DispatchCallResult Persistent<SturdyRef, Owner>::Server::dispatchCall( 552 uint64_t interfaceId, uint16_t methodId, 553 ::capnp::CallContext< ::capnp::AnyPointer, ::capnp::AnyPointer> context) { 554 switch (interfaceId) { 555 case 0xc8cb212fcd9f5691ull: 556 return dispatchCallInternal(methodId, context); 557 default: 558 return internalUnimplemented("capnp/persistent.capnp:Persistent", interfaceId); 559 } 560 } 561 template <typename SturdyRef, typename Owner> 562 ::capnp::Capability::Server::DispatchCallResult Persistent<SturdyRef, Owner>::Server::dispatchCallInternal( 563 uint16_t methodId, 564 ::capnp::CallContext< ::capnp::AnyPointer, ::capnp::AnyPointer> context) { 565 switch (methodId) { 566 case 0: 567 return { 568 save(::capnp::Capability::Server::internalGetTypedContext< 569 typename ::capnp::Persistent<SturdyRef, Owner>::SaveParams, typename ::capnp::Persistent<SturdyRef, Owner>::SaveResults>(context)), 570 false 571 }; 572 default: 573 (void)context; 574 return ::capnp::Capability::Server::internalUnimplemented( 575 "capnp/persistent.capnp:Persistent", 576 0xc8cb212fcd9f5691ull, methodId); 577 } 578 } 579 #endif // !CAPNP_LITE 580 581 // Persistent<SturdyRef, Owner> 582 #if !CAPNP_LITE 583 template <typename SturdyRef, typename Owner> 584 constexpr ::capnp::Kind Persistent<SturdyRef, Owner>::_capnpPrivate::kind; 585 template <typename SturdyRef, typename Owner> 586 constexpr ::capnp::_::RawSchema const* Persistent<SturdyRef, Owner>::_capnpPrivate::schema; 587 template <typename SturdyRef, typename Owner> 588 const ::capnp::_::RawBrandedSchema::Scope Persistent<SturdyRef, Owner>::_capnpPrivate::brandScopes[] = { 589 { 0xc8cb212fcd9f5691, brandBindings + 0, 2, false}, 590 }; 591 template <typename SturdyRef, typename Owner> 592 const ::capnp::_::RawBrandedSchema::Binding Persistent<SturdyRef, Owner>::_capnpPrivate::brandBindings[] = { 593 ::capnp::_::brandBindingFor<SturdyRef>(), 594 ::capnp::_::brandBindingFor<Owner>(), 595 }; 596 template <typename SturdyRef, typename Owner> 597 const ::capnp::_::RawBrandedSchema::Dependency Persistent<SturdyRef, Owner>::_capnpPrivate::brandDependencies[] = { 598 { 33554432, ::capnp::Persistent<SturdyRef, Owner>::SaveParams::_capnpPrivate::brand() }, 599 { 50331648, ::capnp::Persistent<SturdyRef, Owner>::SaveResults::_capnpPrivate::brand() }, 600 }; 601 template <typename SturdyRef, typename Owner> 602 const ::capnp::_::RawBrandedSchema Persistent<SturdyRef, Owner>::_capnpPrivate::specificBrand = { 603 &::capnp::schemas::s_c8cb212fcd9f5691, brandScopes, brandDependencies, 604 1, 2, nullptr 605 }; 606 #endif // !CAPNP_LITE 607 608 } // namespace 609 610 CAPNP_END_HEADER 611