Lines Matching refs:props

87       PropsTy &props = AtProps[RawLoc];
88 props.push_back(*propI);
119 PropsTy &props = findAtLoc->second;
120 for (PropsTy::iterator I = props.begin(), E = props.end(); I != E; ++I) {
132 PropsTy &props = I->second;
133 if (!getPropertyType(props)->isObjCRetainableType())
135 if (hasIvarWithExplicitARCOwnership(props))
139 rewriteProperty(props, atLoc);
152 PropsTy &props = I->second;
154 doActionForExtensionProp(props, atLoc);
160 PropsTy &props, SourceLocation atLoc,
163 for (PropsTy::iterator I = props.begin(), E = props.end(); I != E; ++I)
175 return removeAssignForDefaultStrong(props, atLoc);
177 return rewriteAssign(props, atLoc);
179 return maybeAddWeakOrUnsafeUnretainedAttr(props, atLoc);
183 void doActionForExtensionProp(PropsTy &props, SourceLocation atLoc) {
185 I = ActionOnProp.find(props[0].PropD->getIdentifier());
189 doPropAction(I->second, props, atLoc, false);
192 void rewriteProperty(PropsTy &props, SourceLocation atLoc) {
193 ObjCPropertyDecl::PropertyAttributeKind propAttrs = getPropertyAttrs(props);
203 return doPropAction(PropAction_RetainReplacedWithStrong, props, atLoc);
206 bool HasIvarAssignedAPlusOneObject = hasIvarAssignedAPlusOneObject(props);
210 return doPropAction(PropAction_AssignRemoved, props, atLoc);
211 return doPropAction(PropAction_AssignRewritten, props, atLoc);
215 (Pass.isGCMigration() && !hasGCWeak(props, atLoc)))
218 return doPropAction(PropAction_MaybeAddWeakOrUnsafe, props, atLoc);
221 void removeAssignForDefaultStrong(PropsTy &props,
227 for (PropsTy::iterator I = props.begin(), E = props.end(); I != E; ++I) {
234 void rewriteAssign(PropsTy &props, SourceLocation atLoc) const {
235 bool canUseWeak = canApplyWeak(Pass.Ctx, getPropertyType(props),
238 (Pass.isGCMigration() && !hasGCWeak(props, atLoc)) ? "strong" :
245 for (PropsTy::iterator I = props.begin(), E = props.end(); I != E; ++I) {
250 (Pass.isGCMigration() && !hasGCWeak(props, atLoc)) ? "__strong " :
261 void maybeAddWeakOrUnsafeUnretainedAttr(PropsTy &props,
263 bool canUseWeak = canApplyWeak(Pass.Ctx, getPropertyType(props),
271 for (PropsTy::iterator I = props.begin(), E = props.end(); I != E; ++I) {
320 bool hasIvarAssignedAPlusOneObject(PropsTy &props) const {
321 for (PropsTy::iterator I = props.begin(), E = props.end(); I != E; ++I) {
331 bool hasIvarWithExplicitARCOwnership(PropsTy &props) const {
335 for (PropsTy::iterator I = props.begin(), E = props.end(); I != E; ++I) {
348 bool hasAllIvarsBacked(PropsTy &props) const {
349 for (PropsTy::iterator I = props.begin(), E = props.end(); I != E; ++I)
357 bool hasGCWeak(PropsTy &props, SourceLocation atLoc) const {
360 if (props.empty())
369 QualType getPropertyType(PropsTy &props) const {
370 assert(!props.empty());
371 QualType ty = props[0].PropD->getType().getUnqualifiedType();
374 for (PropsTy::iterator I = props.begin(), E = props.end(); I != E; ++I)
382 getPropertyAttrs(PropsTy &props) const {
383 assert(!props.empty());
385 attrs = props[0].PropD->getPropertyAttributesAsWritten();
388 for (PropsTy::iterator I = props.begin(), E = props.end(); I != E; ++I)