Sha256: 395b9ad8be4561c0eedf6c197e4cdb6da4aa04f231443b6fae062b720ccea322
Contents?: true
Size: 1.16 KB
Versions: 4
Compression:
Stored size: 1.16 KB
Contents
/* * * Copyright 2019 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 GRPC_CORE_LIB_GPRPP_OPTIONAL_H #define GRPC_CORE_LIB_GPRPP_OPTIONAL_H namespace grpc_core { /* A make-shift alternative for absl::Optional. This can be removed in favor of * that once absl dependencies can be introduced. */ template <typename T> class Optional { public: void set(const T& val) { value_ = val; set_ = true; } bool has_value() const { return set_; } void reset() { set_ = false; } T value() const { return value_; } private: T value_; bool set_ = false; }; } /* namespace grpc_core */ #endif /* GRPC_CORE_LIB_GPRPP_OPTIONAL_H */
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
grpc-1.20.0 | src/core/lib/gprpp/optional.h |
grpc-1.20.0.pre1 | src/core/lib/gprpp/optional.h |
grpc-1.19.0 | src/core/lib/gprpp/optional.h |
grpc-1.19.0.pre1 | src/core/lib/gprpp/optional.h |