Sha256: ec1266972fe661d4225f3c730f9ebdfd6993602523045556c3f8170ba814269f
Contents?: true
Size: 1.48 KB
Versions: 2
Compression:
Stored size: 1.48 KB
Contents
// Copyright 2021 gRPC authors. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. #include <grpc/support/port_platform.h> #include "src/core/lib/channel/channel_args_preconditioning.h" #include <grpc/support/alloc.h> namespace grpc_core { void ChannelArgsPreconditioning::Builder::RegisterStage(Stage stage) { stages_.emplace_back(std::move(stage)); } ChannelArgsPreconditioning ChannelArgsPreconditioning::Builder::Build() { // TODO(ctiller): should probably make this registered too. stages_.emplace_back(RemoveGrpcInternalArgs); ChannelArgsPreconditioning preconditioning; preconditioning.stages_ = std::move(stages_); return preconditioning; } const grpc_channel_args* ChannelArgsPreconditioning::PreconditionChannelArgs( const grpc_channel_args* args) const { const grpc_channel_args* owned_args = nullptr; for (auto& stage : stages_) { args = stage(args); grpc_channel_args_destroy(owned_args); owned_args = args; } return args; } } // namespace grpc_core
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
grpc-1.44.0.pre2 | src/core/lib/channel/channel_args_preconditioning.cc |
grpc-1.43.1 | src/core/lib/channel/channel_args_preconditioning.cc |