Skip to content

Commit d1624be

Browse files
committed
Avoid implicit slicing from ResolverParams to SelectionSetParams
1 parent 6a29286 commit d1624be

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+297
-149
lines changed

samples/learn/schema/DroidObject.cpp

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,9 @@ void Droid::endSelectionSet(const service::SelectionSetParams& params) const
6060
service::AwaitableResolver Droid::resolveId(service::ResolverParams&& params) const
6161
{
6262
std::unique_lock resolverLock(_resolverMutex);
63+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
6364
auto directives = std::move(params.fieldDirectives);
64-
auto result = _pimpl->getId(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)));
65+
auto result = _pimpl->getId(service::FieldParams { std::move(selectionSetParams), std::move(directives) });
6566
resolverLock.unlock();
6667

6768
return service::ModifiedResult<response::IdType>::convert(std::move(result), std::move(params));
@@ -70,8 +71,9 @@ service::AwaitableResolver Droid::resolveId(service::ResolverParams&& params) co
7071
service::AwaitableResolver Droid::resolveName(service::ResolverParams&& params) const
7172
{
7273
std::unique_lock resolverLock(_resolverMutex);
74+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
7375
auto directives = std::move(params.fieldDirectives);
74-
auto result = _pimpl->getName(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)));
76+
auto result = _pimpl->getName(service::FieldParams { std::move(selectionSetParams), std::move(directives) });
7577
resolverLock.unlock();
7678

7779
return service::ModifiedResult<std::string>::convert<service::TypeModifier::Nullable>(std::move(result), std::move(params));
@@ -80,8 +82,9 @@ service::AwaitableResolver Droid::resolveName(service::ResolverParams&& params)
8082
service::AwaitableResolver Droid::resolveFriends(service::ResolverParams&& params) const
8183
{
8284
std::unique_lock resolverLock(_resolverMutex);
85+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
8386
auto directives = std::move(params.fieldDirectives);
84-
auto result = _pimpl->getFriends(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)));
87+
auto result = _pimpl->getFriends(service::FieldParams { std::move(selectionSetParams), std::move(directives) });
8588
resolverLock.unlock();
8689

8790
return service::ModifiedResult<Character>::convert<service::TypeModifier::Nullable, service::TypeModifier::List, service::TypeModifier::Nullable>(std::move(result), std::move(params));
@@ -90,8 +93,9 @@ service::AwaitableResolver Droid::resolveFriends(service::ResolverParams&& param
9093
service::AwaitableResolver Droid::resolveAppearsIn(service::ResolverParams&& params) const
9194
{
9295
std::unique_lock resolverLock(_resolverMutex);
96+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
9397
auto directives = std::move(params.fieldDirectives);
94-
auto result = _pimpl->getAppearsIn(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)));
98+
auto result = _pimpl->getAppearsIn(service::FieldParams { std::move(selectionSetParams), std::move(directives) });
9599
resolverLock.unlock();
96100

97101
return service::ModifiedResult<Episode>::convert<service::TypeModifier::Nullable, service::TypeModifier::List, service::TypeModifier::Nullable>(std::move(result), std::move(params));
@@ -100,8 +104,9 @@ service::AwaitableResolver Droid::resolveAppearsIn(service::ResolverParams&& par
100104
service::AwaitableResolver Droid::resolvePrimaryFunction(service::ResolverParams&& params) const
101105
{
102106
std::unique_lock resolverLock(_resolverMutex);
107+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
103108
auto directives = std::move(params.fieldDirectives);
104-
auto result = _pimpl->getPrimaryFunction(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)));
109+
auto result = _pimpl->getPrimaryFunction(service::FieldParams { std::move(selectionSetParams), std::move(directives) });
105110
resolverLock.unlock();
106111

107112
return service::ModifiedResult<std::string>::convert<service::TypeModifier::Nullable>(std::move(result), std::move(params));

samples/learn/schema/HumanObject.cpp

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,9 @@ void Human::endSelectionSet(const service::SelectionSetParams& params) const
6060
service::AwaitableResolver Human::resolveId(service::ResolverParams&& params) const
6161
{
6262
std::unique_lock resolverLock(_resolverMutex);
63+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
6364
auto directives = std::move(params.fieldDirectives);
64-
auto result = _pimpl->getId(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)));
65+
auto result = _pimpl->getId(service::FieldParams { std::move(selectionSetParams), std::move(directives) });
6566
resolverLock.unlock();
6667

6768
return service::ModifiedResult<response::IdType>::convert(std::move(result), std::move(params));
@@ -70,8 +71,9 @@ service::AwaitableResolver Human::resolveId(service::ResolverParams&& params) co
7071
service::AwaitableResolver Human::resolveName(service::ResolverParams&& params) const
7172
{
7273
std::unique_lock resolverLock(_resolverMutex);
74+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
7375
auto directives = std::move(params.fieldDirectives);
74-
auto result = _pimpl->getName(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)));
76+
auto result = _pimpl->getName(service::FieldParams { std::move(selectionSetParams), std::move(directives) });
7577
resolverLock.unlock();
7678

7779
return service::ModifiedResult<std::string>::convert<service::TypeModifier::Nullable>(std::move(result), std::move(params));
@@ -80,8 +82,9 @@ service::AwaitableResolver Human::resolveName(service::ResolverParams&& params)
8082
service::AwaitableResolver Human::resolveFriends(service::ResolverParams&& params) const
8183
{
8284
std::unique_lock resolverLock(_resolverMutex);
85+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
8386
auto directives = std::move(params.fieldDirectives);
84-
auto result = _pimpl->getFriends(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)));
87+
auto result = _pimpl->getFriends(service::FieldParams { std::move(selectionSetParams), std::move(directives) });
8588
resolverLock.unlock();
8689

8790
return service::ModifiedResult<Character>::convert<service::TypeModifier::Nullable, service::TypeModifier::List, service::TypeModifier::Nullable>(std::move(result), std::move(params));
@@ -90,8 +93,9 @@ service::AwaitableResolver Human::resolveFriends(service::ResolverParams&& param
9093
service::AwaitableResolver Human::resolveAppearsIn(service::ResolverParams&& params) const
9194
{
9295
std::unique_lock resolverLock(_resolverMutex);
96+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
9397
auto directives = std::move(params.fieldDirectives);
94-
auto result = _pimpl->getAppearsIn(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)));
98+
auto result = _pimpl->getAppearsIn(service::FieldParams { std::move(selectionSetParams), std::move(directives) });
9599
resolverLock.unlock();
96100

97101
return service::ModifiedResult<Episode>::convert<service::TypeModifier::Nullable, service::TypeModifier::List, service::TypeModifier::Nullable>(std::move(result), std::move(params));
@@ -100,8 +104,9 @@ service::AwaitableResolver Human::resolveAppearsIn(service::ResolverParams&& par
100104
service::AwaitableResolver Human::resolveHomePlanet(service::ResolverParams&& params) const
101105
{
102106
std::unique_lock resolverLock(_resolverMutex);
107+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
103108
auto directives = std::move(params.fieldDirectives);
104-
auto result = _pimpl->getHomePlanet(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)));
109+
auto result = _pimpl->getHomePlanet(service::FieldParams { std::move(selectionSetParams), std::move(directives) });
105110
resolverLock.unlock();
106111

107112
return service::ModifiedResult<std::string>::convert<service::TypeModifier::Nullable>(std::move(result), std::move(params));

samples/learn/schema/MutationObject.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,9 @@ service::AwaitableResolver Mutation::resolveCreateReview(service::ResolverParams
5757
auto argEp = service::ModifiedArgument<learn::Episode>::require("ep", params.arguments);
5858
auto argReview = service::ModifiedArgument<learn::ReviewInput>::require("review", params.arguments);
5959
std::unique_lock resolverLock(_resolverMutex);
60+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
6061
auto directives = std::move(params.fieldDirectives);
61-
auto result = _pimpl->applyCreateReview(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)), std::move(argEp), std::move(argReview));
62+
auto result = _pimpl->applyCreateReview(service::FieldParams { std::move(selectionSetParams), std::move(directives) }, std::move(argEp), std::move(argReview));
6263
resolverLock.unlock();
6364

6465
return service::ModifiedResult<Review>::convert(std::move(result), std::move(params));

samples/learn/schema/QueryObject.cpp

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,9 @@ service::AwaitableResolver Query::resolveHero(service::ResolverParams&& params)
6464
{
6565
auto argEpisode = service::ModifiedArgument<learn::Episode>::require<service::TypeModifier::Nullable>("episode", params.arguments);
6666
std::unique_lock resolverLock(_resolverMutex);
67+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
6768
auto directives = std::move(params.fieldDirectives);
68-
auto result = _pimpl->getHero(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)), std::move(argEpisode));
69+
auto result = _pimpl->getHero(service::FieldParams { std::move(selectionSetParams), std::move(directives) }, std::move(argEpisode));
6970
resolverLock.unlock();
7071

7172
return service::ModifiedResult<Character>::convert<service::TypeModifier::Nullable>(std::move(result), std::move(params));
@@ -75,8 +76,9 @@ service::AwaitableResolver Query::resolveHuman(service::ResolverParams&& params)
7576
{
7677
auto argId = service::ModifiedArgument<response::IdType>::require("id", params.arguments);
7778
std::unique_lock resolverLock(_resolverMutex);
79+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
7880
auto directives = std::move(params.fieldDirectives);
79-
auto result = _pimpl->getHuman(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)), std::move(argId));
81+
auto result = _pimpl->getHuman(service::FieldParams { std::move(selectionSetParams), std::move(directives) }, std::move(argId));
8082
resolverLock.unlock();
8183

8284
return service::ModifiedResult<Human>::convert<service::TypeModifier::Nullable>(std::move(result), std::move(params));
@@ -86,8 +88,9 @@ service::AwaitableResolver Query::resolveDroid(service::ResolverParams&& params)
8688
{
8789
auto argId = service::ModifiedArgument<response::IdType>::require("id", params.arguments);
8890
std::unique_lock resolverLock(_resolverMutex);
91+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
8992
auto directives = std::move(params.fieldDirectives);
90-
auto result = _pimpl->getDroid(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)), std::move(argId));
93+
auto result = _pimpl->getDroid(service::FieldParams { std::move(selectionSetParams), std::move(directives) }, std::move(argId));
9194
resolverLock.unlock();
9295

9396
return service::ModifiedResult<Droid>::convert<service::TypeModifier::Nullable>(std::move(result), std::move(params));

samples/learn/schema/ReviewObject.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,9 @@ void Review::endSelectionSet(const service::SelectionSetParams& params) const
5555
service::AwaitableResolver Review::resolveStars(service::ResolverParams&& params) const
5656
{
5757
std::unique_lock resolverLock(_resolverMutex);
58+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
5859
auto directives = std::move(params.fieldDirectives);
59-
auto result = _pimpl->getStars(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)));
60+
auto result = _pimpl->getStars(service::FieldParams { std::move(selectionSetParams), std::move(directives) });
6061
resolverLock.unlock();
6162

6263
return service::ModifiedResult<int>::convert(std::move(result), std::move(params));
@@ -65,8 +66,9 @@ service::AwaitableResolver Review::resolveStars(service::ResolverParams&& params
6566
service::AwaitableResolver Review::resolveCommentary(service::ResolverParams&& params) const
6667
{
6768
std::unique_lock resolverLock(_resolverMutex);
69+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
6870
auto directives = std::move(params.fieldDirectives);
69-
auto result = _pimpl->getCommentary(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)));
71+
auto result = _pimpl->getCommentary(service::FieldParams { std::move(selectionSetParams), std::move(directives) });
7072
resolverLock.unlock();
7173

7274
return service::ModifiedResult<std::string>::convert<service::TypeModifier::Nullable>(std::move(result), std::move(params));

samples/proxy/schema/QueryObject.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,9 @@ service::AwaitableResolver Query::resolveRelay(service::ResolverParams&& params)
6161
auto argOperationName = service::ModifiedArgument<std::string>::require<service::TypeModifier::Nullable>("operationName", params.arguments);
6262
auto argVariables = service::ModifiedArgument<std::string>::require<service::TypeModifier::Nullable>("variables", params.arguments);
6363
std::unique_lock resolverLock(_resolverMutex);
64+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
6465
auto directives = std::move(params.fieldDirectives);
65-
auto result = _pimpl->getRelay(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)), std::move(argQuery), std::move(argOperationName), std::move(argVariables));
66+
auto result = _pimpl->getRelay(service::FieldParams { std::move(selectionSetParams), std::move(directives) }, std::move(argQuery), std::move(argOperationName), std::move(argVariables));
6667
resolverLock.unlock();
6768

6869
return service::ModifiedResult<std::string>::convert<service::TypeModifier::Nullable>(std::move(result), std::move(params));

samples/today/nointrospection/AppointmentConnectionObject.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,9 @@ void AppointmentConnection::endSelectionSet(const service::SelectionSetParams& p
5757
service::AwaitableResolver AppointmentConnection::resolvePageInfo(service::ResolverParams&& params) const
5858
{
5959
std::unique_lock resolverLock(_resolverMutex);
60+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
6061
auto directives = std::move(params.fieldDirectives);
61-
auto result = _pimpl->getPageInfo(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)));
62+
auto result = _pimpl->getPageInfo(service::FieldParams { std::move(selectionSetParams), std::move(directives) });
6263
resolverLock.unlock();
6364

6465
return service::ModifiedResult<PageInfo>::convert(std::move(result), std::move(params));
@@ -67,8 +68,9 @@ service::AwaitableResolver AppointmentConnection::resolvePageInfo(service::Resol
6768
service::AwaitableResolver AppointmentConnection::resolveEdges(service::ResolverParams&& params) const
6869
{
6970
std::unique_lock resolverLock(_resolverMutex);
71+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
7072
auto directives = std::move(params.fieldDirectives);
71-
auto result = _pimpl->getEdges(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)));
73+
auto result = _pimpl->getEdges(service::FieldParams { std::move(selectionSetParams), std::move(directives) });
7274
resolverLock.unlock();
7375

7476
return service::ModifiedResult<AppointmentEdge>::convert<service::TypeModifier::Nullable, service::TypeModifier::List, service::TypeModifier::Nullable>(std::move(result), std::move(params));

samples/today/nointrospection/AppointmentEdgeObject.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,9 @@ void AppointmentEdge::endSelectionSet(const service::SelectionSetParams& params)
5656
service::AwaitableResolver AppointmentEdge::resolveNode(service::ResolverParams&& params) const
5757
{
5858
std::unique_lock resolverLock(_resolverMutex);
59+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
5960
auto directives = std::move(params.fieldDirectives);
60-
auto result = _pimpl->getNode(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)));
61+
auto result = _pimpl->getNode(service::FieldParams { std::move(selectionSetParams), std::move(directives) });
6162
resolverLock.unlock();
6263

6364
return service::ModifiedResult<Appointment>::convert<service::TypeModifier::Nullable>(std::move(result), std::move(params));
@@ -66,8 +67,9 @@ service::AwaitableResolver AppointmentEdge::resolveNode(service::ResolverParams&
6667
service::AwaitableResolver AppointmentEdge::resolveCursor(service::ResolverParams&& params) const
6768
{
6869
std::unique_lock resolverLock(_resolverMutex);
70+
service::SelectionSetParams selectionSetParams { static_cast<const service::SelectionSetParams&>(params) };
6971
auto directives = std::move(params.fieldDirectives);
70-
auto result = _pimpl->getCursor(service::FieldParams(service::SelectionSetParams{ params }, std::move(directives)));
72+
auto result = _pimpl->getCursor(service::FieldParams { std::move(selectionSetParams), std::move(directives) });
7173
resolverLock.unlock();
7274

7375
return service::ModifiedResult<response::Value>::convert(std::move(result), std::move(params));

0 commit comments

Comments
 (0)