MCPcopy Create free account
hub / github.com/cel-expr/cel-cpp / ValueAsUInt64

Function ValueAsUInt64

common/values/parsed_map_field_value.cc:243–256  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

241}
242
243absl::optional<uint64_t> ValueAsUInt64(const Value& value) {
244 if (auto int_value = value.AsInt();
245 int_value && int_value->NativeValue() >= 0) {
246 return static_cast<uint64_t>(int_value->NativeValue());
247 } else if (auto uint_value = value.AsUint(); uint_value) {
248 return uint_value->NativeValue();
249 } else if (auto double_value = value.AsDouble();
250 double_value &&
251 static_cast<double>(static_cast<uint64_t>(
252 double_value->NativeValue())) == double_value->NativeValue()) {
253 return static_cast<uint64_t>(double_value->NativeValue());
254 }
255 return absl::nullopt;
256}
257
258bool ValueToProtoMapKey(const Value& key,
259 google::protobuf::FieldDescriptor::CppType cpp_type,

Callers 1

ValueToProtoMapKeyFunction · 0.85

Calls 4

AsIntMethod · 0.45
NativeValueMethod · 0.45
AsUintMethod · 0.45
AsDoubleMethod · 0.45

Tested by

no test coverage detected