blob: e0f85b0f649b4bcb95eaa7f42fb336a407a69b36 [file] [log] [blame]
// WARNING: This file is machine generated by fidlgen.
// fidl_experiment = output_index_json
#include <fidl/test.requestflexibleenvelope/cpp/natural_types.h>
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wshadow"
::test_requestflexibleenvelope::ProtocolRequestStrictResponseFlexibleRequest::Storage_ test_requestflexibleenvelope::ProtocolRequestStrictResponseFlexibleRequest::CloneStorage_() const {
return Storage_{
::fidl::internal::NaturalClone(storage_.s)};
}
::test_requestflexibleenvelope::ProtocolRequestStrictResponseFlexibleResponse::Storage_ test_requestflexibleenvelope::ProtocolRequestStrictResponseFlexibleResponse::CloneStorage_() const {
return Storage_{
::fidl::internal::NaturalClone(storage_.f)};
}
::test_requestflexibleenvelope::ProtocolRequestFlexibleResponseStrictRequest::Storage_ test_requestflexibleenvelope::ProtocolRequestFlexibleResponseStrictRequest::CloneStorage_() const {
return Storage_{
::fidl::internal::NaturalClone(storage_.s)};
}
::test_requestflexibleenvelope::ProtocolRequestFlexibleResponseStrictResponse::Storage_ test_requestflexibleenvelope::ProtocolRequestFlexibleResponseStrictResponse::CloneStorage_() const {
return Storage_{
::fidl::internal::NaturalClone(storage_.f)};
}
std::shared_ptr<::test_requestflexibleenvelope::FlexibleFoo::Storage_> test_requestflexibleenvelope::FlexibleFoo::CloneStorage_() const {
const Storage_& storage = *storage_;
switch (storage_->index()) {
case 1:
return std::make_shared<Storage_>(
std::in_place_index<1>,
::fidl::internal::NaturalClone(std::get<1>(storage)));
case 2:
return std::make_shared<Storage_>(
std::in_place_index<2>,
::fidl::internal::NaturalClone(std::get<2>(storage)));
default:
return std::make_shared<Storage_>();
}
}
std::shared_ptr<::test_requestflexibleenvelope::StrictFoo::Storage_> test_requestflexibleenvelope::StrictFoo::CloneStorage_() const {
const Storage_& storage = *storage_;
switch (storage_->index()) {
case 1:
return std::make_shared<Storage_>(
std::in_place_index<1>,
::fidl::internal::NaturalClone(std::get<1>(storage)));
case 2:
return std::make_shared<Storage_>(
std::in_place_index<2>,
::fidl::internal::NaturalClone(std::get<2>(storage)));
default:
return std::make_shared<Storage_>();
}
}
#pragma clang diagnostic pop