Lines Matching defs:computation

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