Lines Matching refs:computation

160 static bool hasExplicitVisibilityAlready(LVComputationKind computation) {  in hasExplicitVisibilityAlready()  argument
161 return computation.IgnoreExplicitVisibility; in hasExplicitVisibilityAlready()
241 LVComputationKind computation) { in getLVForType() argument
242 if (computation.IgnoreAllVisibility) in getLVForType()
251 const TemplateParameterList *Params, LVComputationKind computation) { in getLVForTemplateParameterList() argument
267 LV.merge(getLVForType(*NTTP->getType(), computation)); in getLVForTemplateParameterList()
288 computation)); in getLVForTemplateParameterList()
296 TTP->getExpansionTemplateParameters(i), computation)); in getLVForTemplateParameterList()
321 LVComputationKind computation) { in getLVForTemplateArgumentList() argument
332 LV.merge(getLVForType(*Arg.getAsType(), computation)); in getLVForTemplateArgumentList()
338 LV.merge(getLVForDecl(ND, computation)); in getLVForTemplateArgumentList()
347 LV.merge(getLVForValue(Arg.getAsStructuralValue(), computation)); in getLVForTemplateArgumentList()
354 LV.merge(getLVForDecl(Template, computation)); in getLVForTemplateArgumentList()
358 LV.merge(getLVForTemplateArgumentList(Arg.getPackAsArray(), computation)); in getLVForTemplateArgumentList()
369 LVComputationKind computation) { in getLVForTemplateArgumentList() argument
370 return getLVForTemplateArgumentList(TArgs.asArray(), computation); in getLVForTemplateArgumentList()
395 LVComputationKind computation) { in mergeTemplateLV() argument
401 LinkageInfo tempLV = getLVForDecl(temp, computation); in mergeTemplateLV()
408 getLVForTemplateParameterList(temp->getTemplateParameters(), computation); in mergeTemplateLV()
413 LinkageInfo argsLV = getLVForTemplateArgumentList(templateArgs, computation); in mergeTemplateLV()
420 LVComputationKind computation) { in hasDirectVisibilityAttribute() argument
421 if (computation.IgnoreAllVisibility) in hasDirectVisibilityAttribute()
424 return (computation.isTypeVisibility() && D->hasAttr<TypeVisibilityAttr>()) || in hasDirectVisibilityAttribute()
432 LVComputationKind computation) { in shouldConsiderTemplateVisibility() argument
458 hasExplicitVisibilityAlready(computation)) in shouldConsiderTemplateVisibility()
461 return !hasDirectVisibilityAttribute(spec, computation); in shouldConsiderTemplateVisibility()
468 LVComputationKind computation) { in mergeTemplateLV() argument
469 bool considerVisibility = shouldConsiderTemplateVisibility(spec, computation); in mergeTemplateLV()
475 LinkageInfo tempLV = getLVForDecl(temp, computation); in mergeTemplateLV()
481 getLVForTemplateParameterList(temp->getTemplateParameters(), computation); in mergeTemplateLV()
483 considerVisibility && !hasExplicitVisibilityAlready(computation)); in mergeTemplateLV()
489 LinkageInfo argsLV = getLVForTemplateArgumentList(templateArgs, computation); in mergeTemplateLV()
501 LVComputationKind computation) { in shouldConsiderTemplateVisibility() argument
514 hasExplicitVisibilityAlready(computation)) in shouldConsiderTemplateVisibility()
517 return !hasDirectVisibilityAttribute(spec, computation); in shouldConsiderTemplateVisibility()
525 LVComputationKind computation) { in mergeTemplateLV() argument
526 bool considerVisibility = shouldConsiderTemplateVisibility(spec, computation); in mergeTemplateLV()
532 getLVForTemplateParameterList(temp->getTemplateParameters(), computation); in mergeTemplateLV()
534 considerVisibility && !hasExplicitVisibilityAlready(computation)); in mergeTemplateLV()
540 LinkageInfo argsLV = getLVForTemplateArgumentList(templateArgs, computation); in mergeTemplateLV()
610 LVComputationKind computation, in getLVForNamespaceScopeDecl() argument
650 return getLVForDecl(PrevVar, computation); in getLVForNamespaceScopeDecl()
671 return getLVForNamespaceScopeDecl(VD, computation, IgnoreVarTypeLinkage); in getLVForNamespaceScopeDecl()
700 if (!hasExplicitVisibilityAlready(computation)) { in getLVForNamespaceScopeDecl()
701 if (std::optional<Visibility> Vis = getExplicitVisibility(D, computation)) { in getLVForNamespaceScopeDecl()
712 getExplicitVisibility(ND, computation)) { in getLVForNamespaceScopeDecl()
723 computation.isValueVisibility() in getLVForNamespaceScopeDecl()
776 LinkageInfo TypeLV = getLVForType(*Var->getType(), computation); in getLVForNamespaceScopeDecl()
794 mergeTemplateLV(LV, spec, computation); in getLVForNamespaceScopeDecl()
840 mergeTemplateLV(LV, Function, specInfo, computation); in getLVForNamespaceScopeDecl()
858 mergeTemplateLV(LV, spec, computation); in getLVForNamespaceScopeDecl()
865 computation); in getLVForNamespaceScopeDecl()
872 bool considerVisibility = !hasExplicitVisibilityAlready(computation); in getLVForNamespaceScopeDecl()
874 getLVForTemplateParameterList(temp->getTemplateParameters(), computation); in getLVForNamespaceScopeDecl()
915 LVComputationKind computation, in getLVForClassMember() argument
938 if (!hasExplicitVisibilityAlready(computation)) { in getLVForClassMember()
939 if (std::optional<Visibility> Vis = getExplicitVisibility(D, computation)) in getLVForClassMember()
953 LVComputationKind classComputation = computation; in getLVForClassMember()
955 classComputation = withExplicitVisibilityAlready(computation); in getLVForClassMember()
985 mergeTemplateLV(LV, MD, spec, computation); in getLVForClassMember()
1008 mergeTemplateLV(LV, spec, computation); in getLVForClassMember()
1024 mergeTemplateLV(LV, spec, computation); in getLVForClassMember()
1029 LinkageInfo typeLV = getLVForType(*VD->getType(), computation); in getLVForClassMember()
1046 !hasExplicitVisibilityAlready(computation)); in getLVForClassMember()
1048 getLVForTemplateParameterList(temp->getTemplateParameters(), computation); in getLVForClassMember()
1068 hasDirectVisibilityAttribute(explicitSpecSuppressor, computation)) { in getLVForClassMember()
1310 LVComputationKind computation) { in getLVForClosure() argument
1336 ? computeLVForDecl(Owner, computation, /*IgnoreVarTypeLinkage*/true) in getLVForClosure()
1337 : getLVForDecl(Owner, computation); in getLVForClosure()
1348 LVComputationKind computation) { in getLVForLocalDecl() argument
1359 if (!hasExplicitVisibilityAlready(computation)) { in getLVForLocalDecl()
1361 getExplicitVisibility(Function, computation)) in getLVForLocalDecl()
1380 else if (!hasExplicitVisibilityAlready(computation)) { in getLVForLocalDecl()
1382 getExplicitVisibility(Var, computation)) in getLVForLocalDecl()
1387 LinkageInfo PrevLV = getLVForDecl(Prev, computation); in getLVForLocalDecl()
1414 BD->getBlockManglingContextDecl(), computation); in getLVForLocalDecl()
1424 LV = getLVForDecl(FD, computation); in getLVForLocalDecl()
1433 LV = getLVForDecl(MD->getParent(), computation); in getLVForLocalDecl()
1436 computation.isValueVisibility() in getLVForLocalDecl()
1451 LVComputationKind computation, in computeLVForDecl() argument
1482 return getLVForDecl(cast<EnumDecl>(D->getDeclContext()), computation); in computeLVForDecl()
1518 Record->getLambdaContextDecl(), computation); in computeLVForDecl()
1528 LinkageInfo LV = getLVForType(*TPO->getType(), computation); in computeLVForDecl()
1529 LV.merge(getLVForValue(TPO->getValue(), computation)); in computeLVForDecl()
1536 return getLVForNamespaceScopeDecl(D, computation, IgnoreVarTypeLinkage); in computeLVForDecl()
1546 return getLVForClassMember(D, computation, IgnoreVarTypeLinkage); in computeLVForDecl()
1560 return getLVForLocalDecl(D, computation); in computeLVForDecl()
1569 LVComputationKind computation) { in getLVForDecl() argument
1574 if (computation.IgnoreAllVisibility && D->hasCachedLinkage()) in getLVForDecl()
1577 if (std::optional<LinkageInfo> LI = lookup(D, computation)) in getLVForDecl()
1580 LinkageInfo LV = computeLVForDecl(D, computation); in getLVForDecl()
1585 cache(D, computation, LV); in getLVForDecl()