grpc/include/grpcpp/impl/codegen
Craig Tiller 4dff0ee48a
Fix bug in CQNext (#27022)
Internal bug b/170934515

In some cases, calling CQ::Next will return true without passing up a
new tag value, which is very much illegal. My expectation is that this
is due to messing up between SHUTDOWN and TIMEOUT in lower layer code
that doesn't particularly matter much to most callers, but was being
erroneously checked here.
2021-08-17 10:50:10 -07:00
..
security Fix readability-const-return-type,readability-delete-null-pointer,readability-simplify-boolean-expr (#25628) 2021-03-09 21:30:35 -08:00
README.md Justify existence of this directory 2020-08-17 11:42:36 -07:00
async_generic_service.h Remove experimental tag from uses of the C++ callback API (#26495) 2021-06-20 00:47:07 -07:00
async_stream.h Merge branch 'master' into sync-stream 2020-09-08 15:14:48 -07:00
async_unary_call.h Revert "async_unary_call: add a Destroy method, called by std::default_delete. (#26389)" (#26449) 2021-06-08 10:29:44 -07:00
byte_buffer.h Added new method to ByteBuffer & Slice (#26014) 2021-05-27 11:18:18 -07:00
call.h Revert "Revert "Fold Channel and CompletionQueue from grpc_impl to grpc"" 2020-08-06 20:42:54 -07:00
call_hook.h Move headers from grpc++ to grpcpp 2018-02-15 14:49:34 -08:00
call_op_set.h Fix bugprone unhandled self assignment (#25667) 2021-03-10 13:38:23 -08:00
call_op_set_interface.h Address reviewer comments. 2018-10-31 01:02:07 -07:00
callback_common.h Drop experimental tags from core callback API (#26535) 2021-06-24 17:20:43 -07:00
channel_interface.h Remove some EXPERIMENTAL comments (#26618) 2021-07-07 14:25:42 -07:00
client_callback.h Remove all possible traces of grpc::experimental for callback API (#26584) 2021-06-30 19:55:08 -07:00
client_context.h Fix ABNF grammar formatting in doxygen documentation (#26467) 2021-07-07 17:50:44 -07:00
client_interceptor.h Add optional suffix to client-side stub objects (#25996) 2021-04-26 17:19:43 -07:00
client_unary_call.h Fix by clang-tidy 2020-12-03 16:24:19 -08:00
completion_queue.h Fix bug in CQNext (#27022) 2021-08-17 10:50:10 -07:00
completion_queue_tag.h Address reviewer comments 2018-09-11 09:14:57 -07:00
config.h Fix by clang-tidy 2020-12-03 16:24:19 -08:00
config_protobuf.h Updated parse_json.cc to rely on config_protobuf.h for protobuf types 2020-12-23 15:55:17 -08:00
core_codegen.h Fix by clang-tidy 2020-12-03 16:24:19 -08:00
core_codegen_interface.h Improve logging on API misuse assert 2019-10-16 10:44:10 -07:00
create_auth_context.h Move headers from grpc++ to grpcpp 2018-02-15 14:49:34 -08:00
delegating_channel.h Fix google-explicit-constructor 2020-12-03 19:22:22 -08:00
grpc_library.h Fix google-explicit-constructor 2020-12-03 19:22:22 -08:00
intercepted_channel.h Fix by clang-tidy 2020-12-03 16:24:19 -08:00
interceptor.h Replaced grpc::string with std::string 2020-06-29 17:56:36 -07:00
interceptor_common.h Fix readability-const-return-type,readability-delete-null-pointer,readability-simplify-boolean-expr (#25628) 2021-03-09 21:30:35 -08:00
message_allocator.h Remove experimental tag from uses of the C++ callback API (#26495) 2021-06-20 00:47:07 -07:00
metadata_map.h Replaced grpc::string with std::string 2020-06-29 17:56:36 -07:00
method_handler.h Add useful status error message when server threadpool is exhausted (#26146) 2021-05-03 12:16:12 -07:00
method_handler_impl.h Fix by clang-tidy 2020-12-03 16:24:19 -08:00
proto_buffer_reader.h Fix by clang-tidy 2020-12-03 16:24:19 -08:00
proto_buffer_writer.h Fix by clang-tidy 2020-12-03 16:24:19 -08:00
proto_utils.h Fix by clang-tidy 2020-12-03 16:24:19 -08:00
rpc_method.h Add optional suffix to client-side stub objects (#25996) 2021-04-26 17:19:43 -07:00
rpc_service_method.h Revert "Revert "Move ServerContext from ::grpc_impl to ::grpc"" 2020-09-02 10:17:00 -07:00
serialization_traits.h Move headers from grpc++ to grpcpp 2018-02-15 14:49:34 -08:00
server_callback.h Remove all possible traces of grpc::experimental for callback API (#26584) 2021-06-30 19:55:08 -07:00
server_callback_handlers.h Remove experimental tag from uses of the C++ callback API (#26495) 2021-06-20 00:47:07 -07:00
server_context.h Fix ABNF grammar formatting in doxygen documentation (#26467) 2021-07-07 17:50:44 -07:00
server_interceptor.h Revert "Revert "Move ServerContext from ::grpc_impl to ::grpc"" 2020-09-02 10:17:00 -07:00
server_interface.h Remove some EXPERIMENTAL comments (#26618) 2021-07-07 14:25:42 -07:00
service_type.h Remove experimental tag from uses of the C++ callback API (#26495) 2021-06-20 00:47:07 -07:00
slice.h Added new method to ByteBuffer & Slice (#26014) 2021-05-27 11:18:18 -07:00
status.h Replaced grpc::string with std::string 2020-06-29 17:56:36 -07:00
status_code_enum.h docs: add note about retrying UNAVAILABLE 2019-04-15 12:45:27 -06:00
string_ref.h Fix bugprone unhandled self assignment (#25667) 2021-03-10 13:38:23 -08:00
stub_options.h Add optional suffix to client-side stub objects (#25996) 2021-04-26 17:19:43 -07:00
sync.h Deprecate grpc{_core,::internal}::WaitUntil (#26866) 2021-08-04 17:03:25 -07:00
sync_stream.h Merge branch 'master' into sync-stream 2020-09-08 15:14:48 -07:00
time.h Fix google-explicit-constructor 2020-12-03 19:22:22 -08:00

README.md

Welcome to include/grpcpp/impl/codegen

Why is this directory here?

This directory exists so that generated code can include selected files upon which it depends without having to depend on the entire gRPC C++ library. This is particularly relevant for users of bazel, particularly if they use the multi-lingual proto_library target type. Generated code that uses this target only depends on the gRPC C++ targets associated with these header files, not the entire gRPC C++ codebase since that would make the build time of these types of targets excessively large (particularly when they are not even C++ specific).

What should user code do?

User code should not include anything from this directory. Only generated code and gRPC library code should include contents from this directory. User code should instead include contents from the main grpcpp directory or its accessible subcomponents like grpcpp/support. It is possible that we may remove this directory altogether if the motivations for its existence are no longer strong enough (e.g., if most users migrate away from the proto_library target type or if the additional overhead of depending on gRPC C++ is not high).