public ScriptTypeExpr(AstNodeArgs args) : base(args) { if (ChildNodes.Count == 2 && ChildNodes[1].ChildNodes.Count == 0) { _identifier = ((TokenAst)ChildNodes[0]).Text; } else if (ChildNodes[0] is ScriptTypeExpr) { _typeExpr = ChildNodes[0] as ScriptTypeExpr; _identifier = ((TokenAst) ChildNodes[2].ChildNodes[0]).Text; _genericsPostfix = ChildNodes[2].ChildNodes[1] as ScriptGenericsPostfix; } else { _genericsPostfix = (ScriptGenericsPostfix)ChildNodes[1]; _identifier = _genericsPostfix.GetGenericTypeName(((TokenAst)ChildNodes[0]).Text); } }
public ScriptTypeExpr(AstNodeArgs args) : base(args) { if (ChildNodes.Count == 2 && ChildNodes[1].ChildNodes.Count == 0) { _identifier = ((TokenAst)ChildNodes[0]).Text; } else if (ChildNodes[0] is ScriptTypeExpr) { _typeExpr = ChildNodes[0] as ScriptTypeExpr; _identifier = ((TokenAst)ChildNodes[2].ChildNodes[0]).Text; _genericsPostfix = ChildNodes[2].ChildNodes[1] as ScriptGenericsPostfix; } else { _genericsPostfix = (ScriptGenericsPostfix)ChildNodes[1]; _identifier = _genericsPostfix.GetGenericTypeName(((TokenAst)ChildNodes[0]).Text); } }