// // // Copyright 2015 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. // // #ifndef GRPCPP_SUPPORT_SLICE_H #define GRPCPP_SUPPORT_SLICE_H #include <grpc/slice.h> #include <grpcpp/support/config.h> #include <grpcpp/support/string_ref.h> namespace grpc { /// A wrapper around \a grpc_slice. /// /// A slice represents a contiguous reference counted array of bytes. /// It is cheap to take references to a slice, and it is cheap to create a /// slice pointing to a subset of another slice. class Slice final { … }; inline grpc::string_ref StringRefFromSlice(const grpc_slice* slice) { … } inline std::string StringFromCopiedSlice(grpc_slice slice) { … } inline grpc_slice SliceReferencingString(const std::string& str) { … } inline grpc_slice SliceFromCopiedString(const std::string& str) { … } } // namespace grpc #endif // GRPCPP_SUPPORT_SLICE_H