1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-09 03:52:19 +02:00

Removed '=' in generic constraints

This commit is contained in:
Brian Fiete 2021-01-15 14:59:02 -08:00
parent 4890303508
commit a681da30be
6 changed files with 69 additions and 107 deletions

View file

@ -281,9 +281,7 @@ void BfDefBuilder::ParseGenericParams(BfGenericParamsDeclaration* genericParamsD
{
name = tokenPairNode->mLeft->ToString() + tokenPairNode->mRight->ToString();
}
bool hasEquals = (genericConstraint->mColonToken != NULL) && (genericConstraint->mColonToken->mToken == BfToken_AssignEquals);
if (!name.empty())
{
if ((name == "class") || (name == "struct") || (name == "struct*") || (name == "const") || (name == "var") || (name == "concrete") || (name == "interface") || (name == "enum"))
@ -355,18 +353,6 @@ void BfDefBuilder::ParseGenericParams(BfGenericParamsDeclaration* genericParamsD
return;
}
}
if (hasEquals)
{
if (constraintDef->mConstraints.IsEmpty())
{
constraintDef->mGenericParamFlags = (BfGenericParamFlags)(constraintDef->mGenericParamFlags | BfGenericParamFlag_Equals);
}
else
{
Fail("Type assignment must be the first constraint", genericConstraint->mColonToken);
}
}
constraintDef->mConstraints.Add(constraintNode);
}