LNode AtomOrTypeParamExpr()
{
LNode result = default(LNode);
// Line 526: (&(IdWithOptionalTypeParams ~(TT.ContextualKeyword|TT.Id)) IdWithOptionalTypeParams / Atom)
switch (LA0) {
case TT.ContextualKeyword: case TT.Id: case TT.Operator: case TT.Substitute:
case TT.TypeKeyword:
{
if (Try_AtomOrTypeParamExpr_Test0(0))
result = IdWithOptionalTypeParams(false);
else
result = Atom();
}
break;
default:
result = Atom();
break;
}
return result;
}