Lines Matching refs:State

40 DynamicTypeInfo getDynamicTypeInfo(ProgramStateRef State, const MemRegion *MR) {
44 if (const DynamicTypeInfo *DTI = State->get<DynamicTypeMap>(MR))
59 const DynamicTypeInfo *getRawDynamicTypeInfo(ProgramStateRef State,
61 return State->get<DynamicTypeMap>(MR);
64 const DynamicCastInfo *getDynamicCastInfo(ProgramStateRef State,
68 const auto *Lookup = State->get<DynamicCastMap>().lookup(MR);
79 ProgramStateRef setDynamicTypeInfo(ProgramStateRef State, const MemRegion *MR,
81 State = State->set<DynamicTypeMap>(MR->StripCasts(), NewTy);
82 assert(State);
83 return State;
86 ProgramStateRef setDynamicTypeInfo(ProgramStateRef State, const MemRegion *MR,
88 return setDynamicTypeInfo(State, MR, DynamicTypeInfo(NewTy, CanBeSubClassed));
91 ProgramStateRef setDynamicTypeAndCastInfo(ProgramStateRef State,
97 return State;
102 State = State->set<DynamicTypeMap>(MR, CastToTy);
109 CastSet::Factory &F = State->get_context<CastSet>();
111 const CastSet *TempSet = State->get<DynamicCastMap>(MR);
115 State = State->set<DynamicCastMap>(MR, Set);
117 assert(State);
118 return State;
122 ProgramStateRef removeDead(ProgramStateRef State, const MapTy &Map,
126 State = State->remove<DynamicCastMap>(Elem.first);
128 return State;
131 ProgramStateRef removeDeadTypes(ProgramStateRef State, SymbolReaper &SR) {
132 return removeDead(State, State->get<DynamicTypeMap>(), SR);
135 ProgramStateRef removeDeadCasts(ProgramStateRef State, SymbolReaper &SR) {
136 return removeDead(State, State->get<DynamicCastMap>(), SR);
139 static void printDynamicTypesJson(raw_ostream &Out, ProgramStateRef State,
144 const DynamicTypeMapTy &Map = State->get<DynamicTypeMap>();
175 static void printDynamicCastsJson(raw_ostream &Out, ProgramStateRef State,
180 const DynamicCastMapTy &Map = State->get<DynamicCastMap>();
222 void printDynamicTypeInfoJson(raw_ostream &Out, ProgramStateRef State,
224 printDynamicTypesJson(Out, State, NL, Space, IsDot);
225 printDynamicCastsJson(Out, State, NL, Space, IsDot);