Lines Matching refs:CurMultiClass

116 static Init *QualifyName(Record &CurRec, MultiClass *CurMultiClass,  in QualifyName()  argument
121 if (CurMultiClass && Scoper != "::") { in QualifyName()
122 Init *Prefix = BinOpInit::getStrConcat(CurMultiClass->Rec.getNameInit(), in QualifyName()
144 CurRec = &CurMultiClass->Rec; in AddValue()
166 if (!CurRec) CurRec = &CurMultiClass->Rec; in SetValue()
359 return resolve(*E.Loop, Stack, CurMultiClass == nullptr, in addEntry()
360 CurMultiClass ? &CurMultiClass->Entries : nullptr); in addEntry()
364 if (CurMultiClass) { in addEntry()
365 CurMultiClass->Entries.push_back(std::move(E)); in addEntry()
536 Init *TGParser::ParseObjectName(MultiClass *CurMultiClass) { in ParseObjectName() argument
550 if (CurMultiClass) in ParseObjectName()
551 CurRec = &CurMultiClass->Rec; in ParseObjectName()
557 if (CurMultiClass) { in ParseObjectName()
558 Init *NameStr = QualifiedNameOfImplicitName(CurMultiClass); in ParseObjectName()
867 if ((CurRec && CurRec->isClass()) || CurMultiClass) { in ParseIDValue()
869 if (CurMultiClass) { in ParseIDValue()
871 QualifyName(CurMultiClass->Rec, CurMultiClass, Name, "::"); in ParseIDValue()
873 TemplateArgName = QualifyName(*CurRec, CurMultiClass, Name, ":"); in ParseIDValue()
875 Record *TemplateRec = CurMultiClass ? &CurMultiClass->Rec : CurRec; in ParseIDValue()
906 if (CurRec && !CurRec->isClass() && !CurMultiClass && in ParseIDValue()
2706 DeclName = QualifyName(*CurRec, CurMultiClass, DeclName, ":"); in ParseDeclaration()
2711 assert(CurMultiClass && "invalid context for template argument"); in ParseDeclaration()
2712 DeclName = QualifyName(CurMultiClass->Rec, CurMultiClass, DeclName, "::"); in ParseDeclaration()
2791 if (CurMultiClass) { in ParseForeachDeclaration()
2826 Record *TheRecToAddTo = CurRec ? CurRec : &CurMultiClass->Rec; in ParseTemplateArgList()
3017 bool TGParser::ParseDef(MultiClass *CurMultiClass) { in ParseDef() argument
3024 Init *Name = ParseObjectName(CurMultiClass); in ParseDef()
3130 bool TGParser::ParseForeach(MultiClass *CurMultiClass) { in ParseForeach() argument
3153 if (ParseObject(CurMultiClass)) in ParseForeach()
3161 if (ParseObjectList(CurMultiClass)) in ParseForeach()
3184 bool TGParser::ParseIf(MultiClass *CurMultiClass) { in ParseIf() argument
3216 if (ParseIfBody(CurMultiClass, "then")) in ParseIf()
3239 if (ParseIfBody(CurMultiClass, "else")) in ParseIf()
3257 bool TGParser::ParseIfBody(MultiClass *CurMultiClass, StringRef Kind) { in ParseIfBody() argument
3262 if (ParseObject(CurMultiClass)) in ParseIfBody()
3270 if (ParseObjectList(CurMultiClass)) in ParseIfBody()
3286 bool TGParser::ParseAssert(MultiClass *CurMultiClass, Record *CurRec) { in ParseAssert() argument
3401 bool TGParser::ParseTopLevelLet(MultiClass *CurMultiClass) { in ParseTopLevelLet() argument
3419 if (ParseObject(CurMultiClass)) in ParseTopLevelLet()
3427 if (ParseObjectList(CurMultiClass)) in ParseTopLevelLet()
3471 CurMultiClass = Result.first->second.get(); in ParseMultiClass()
3487 ParseSubMultiClassReference(CurMultiClass); in ParseMultiClass()
3493 if (AddSubMultiClass(CurMultiClass, SubMultiClass)) in ParseMultiClass()
3498 SubMultiClass = ParseSubMultiClassReference(CurMultiClass); in ParseMultiClass()
3527 if (ParseObject(CurMultiClass)) in ParseMultiClass()
3544 CurMultiClass = nullptr; in ParseMultiClass()
3552 bool TGParser::ParseDefm(MultiClass *CurMultiClass) { in ParseDefm() argument
3556 Init *DefmName = ParseObjectName(CurMultiClass); in ParseDefm()
3561 if (CurMultiClass) in ParseDefm()
3563 VarInit::get(QualifiedNameOfImplicitName(CurMultiClass), in ParseDefm()
3614 if (resolve(MC->Entries, Substs, !CurMultiClass && Loops.empty(), in ParseDefm()