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

Method Put

common/values/value_builder.cc:958–966  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

956 }
957
958 absl::Status Put(Value key, Value value) override {
959 CEL_RETURN_IF_ERROR(CheckMapKey(key));
960 CEL_RETURN_IF_ERROR(CheckMapValue(value));
961 if (auto it = map_->find(key); ABSL_PREDICT_FALSE(it != map_->end())) {
962 return DuplicateKeyError().ToStatus();
963 }
964 UnsafePut(std::move(key), std::move(value));
965 return absl::OkStatus();
966 }
967
968 void UnsafePut(Value key, Value value) override {
969 auto insertion = map_->insert({std::move(key), std::move(value)});

Callers 15

DoEvaluateMethod · 0.45
EvaluateMethod · 0.45
TEST_FFunction · 0.45
MakeValueFunction · 0.45
BM_HasMapFunction · 0.45
TEST_FFunction · 0.45
TEST_FFunction · 0.45
MapValueFromExprFunction · 0.45
TEST_FFunction · 0.45
MakeCompatMapValueFunction · 0.45
NewIntDoubleMapValueMethod · 0.45

Calls 5

CheckMapKeyFunction · 0.85
CheckMapValueFunction · 0.85
DuplicateKeyErrorFunction · 0.85
endMethod · 0.45
ToStatusMethod · 0.45

Tested by 9

TEST_FFunction · 0.36
MakeValueFunction · 0.36
BM_HasMapFunction · 0.36
TEST_FFunction · 0.36
TEST_FFunction · 0.36
TEST_FFunction · 0.36
NewIntDoubleMapValueMethod · 0.36
NewJsonMapValueMethod · 0.36