#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/dynamic_filters.h"
#include <stddef.h>
#include <new>
#include <string>
#include <utility>
#include "absl/status/statusor.h"
#include <grpc/support/log.h>
#include "src/core/lib/channel/channel_args.h"
#include "src/core/lib/channel/channel_stack.h"
#include "src/core/lib/channel/channel_stack_builder_impl.h"
#include "src/core/lib/debug/trace.h"
#include "src/core/lib/gpr/alloc.h"
#include "src/core/lib/gprpp/status_helper.h"
#include "src/core/lib/surface/channel_stack_type.h"
#include "src/core/lib/surface/lame_client.h"
#define CALL_TO_CALL_STACK(call) …
#define CALL_STACK_TO_CALL(callstack) …
namespace grpc_core {
DynamicFilters::Call::Call(Args args, grpc_error_handle* error)
: … { … }
void DynamicFilters::Call::StartTransportStreamOpBatch(
grpc_transport_stream_op_batch* batch) { … }
void DynamicFilters::Call::SetAfterCallStackDestroy(grpc_closure* closure) { … }
RefCountedPtr<DynamicFilters::Call> DynamicFilters::Call::Ref() { … }
RefCountedPtr<DynamicFilters::Call> DynamicFilters::Call::Ref(
const DebugLocation& location, const char* reason) { … }
void DynamicFilters::Call::Unref() { … }
void DynamicFilters::Call::Unref(const DebugLocation& ,
const char* reason) { … }
void DynamicFilters::Call::Destroy(void* arg, grpc_error_handle ) { … }
void DynamicFilters::Call::IncrementRefCount() { … }
void DynamicFilters::Call::IncrementRefCount(const DebugLocation& ,
const char* reason) { … }
namespace {
absl::StatusOr<RefCountedPtr<grpc_channel_stack>> CreateChannelStack(
const ChannelArgs& args, std::vector<const grpc_channel_filter*> filters) { … }
}
RefCountedPtr<DynamicFilters> DynamicFilters::Create(
const ChannelArgs& args, std::vector<const grpc_channel_filter*> filters) { … }
RefCountedPtr<DynamicFilters::Call> DynamicFilters::CreateCall(
DynamicFilters::Call::Args args, grpc_error_handle* error) { … }
}