Lines Matching defs:HasValueVal
335 /// Sets `HasValueVal` as the symbolic value that represents the "has_value"
337 void setHasValue(RecordStorageLocation &OptionalLoc, BoolValue &HasValueVal,
339 Env.setValue(locForHasValue(OptionalLoc), HasValueVal);
348 auto *HasValueVal = Env.get<BoolValue>(HasValueLoc);
349 if (HasValueVal == nullptr) {
350 HasValueVal = &Env.makeAtomicBoolValue();
351 Env.setValue(HasValueLoc, *HasValueVal);
353 return HasValueVal;
412 if (auto *HasValueVal = getHasValue(
414 State.Env.setValue(*CallExpr, *HasValueVal);
424 const Formula &HasValueVal)) {
430 auto *HasValueVal =
432 if (HasValueVal == nullptr)
436 HasValueVal->formula()));
444 const Formula &HasValueVal) -> const Formula & {
453 HasValueVal);
462 const Formula &HasValueVal) -> const Formula & {
467 return A.makeImplies(ExprVal, HasValueVal);
492 BoolValue &HasValueVal) {
494 setHasValue(Loc, HasValueVal, Env);
521 if (auto *HasValueVal = getHasValue(State.Env, Loc))
522 return *HasValueVal;
538 void transferAssignment(const CXXOperatorCallExpr *E, BoolValue &HasValueVal,
543 setHasValue(*Loc, HasValueVal, State.Env);
873 if (auto *HasValueVal = cast_or_null<BoolValue>(Prop)) {
874 if (Env.proves(HasValueVal->formula()))