internal TypeAliasSymbol(TypeAliasSyntax syntax, TypeSymbol valueType) : base(SymbolKind.TypeAlias, syntax.Identifier.Text, string.Empty, null) { ValueType = valueType; Locations = ImmutableArray.Create(syntax.Identifier.SourceRange); SourceTree = syntax.SyntaxTree; DeclaringSyntaxNodes = ImmutableArray.Create((SyntaxNodeBase)syntax); }
private BoundTypeAlias BindTypeAlias(TypeAliasSyntax syntax, TypeSymbol variableType) { variableType = BindArrayRankSpecifiers(syntax.ArrayRankSpecifiers, variableType); var symbol = new TypeAliasSymbol(syntax, variableType); AddSymbol(symbol, syntax.Identifier.Span); var boundQualifiers = new List<BoundVariableQualifier>(); foreach (var qualifier in syntax.Qualifiers) boundQualifiers.Add(Bind(qualifier, BindVariableQualifier)); return new BoundTypeAlias(symbol, variableType, boundQualifiers.ToImmutableArray()); }
private BoundTypeAlias BindTypeAlias(TypeAliasSyntax syntax, TypeSymbol variableType) { variableType = BindArrayRankSpecifiers(syntax.ArrayRankSpecifiers, variableType); var symbol = new TypeAliasSymbol(syntax, variableType); AddSymbol(symbol, syntax.Identifier.SourceRange); var boundQualifiers = new List <BoundVariableQualifier>(); foreach (var qualifier in syntax.Qualifiers) { boundQualifiers.Add(Bind(qualifier, BindVariableQualifier)); } return(new BoundTypeAlias(symbol, variableType, boundQualifiers.ToImmutableArray())); }
public TypeAliasSymbol GetDeclaredSymbol(TypeAliasSyntax syntax) { var result = _bindingResult.GetBoundNode(syntax) as BoundTypeAlias; return result?.TypeAliasSymbol; }
public virtual void VisitTypeAlias(TypeAliasSyntax node) { DefaultVisit(node); }
internal TypeAliasSymbol(TypeAliasSyntax syntax, TypeSymbol valueType) : base(SymbolKind.TypeAlias, syntax.Identifier.Text, string.Empty, null) { ValueType = valueType; }
public TypeAliasSymbol GetDeclaredSymbol(TypeAliasSyntax syntax) { var result = _bindingResult.GetBoundNode(syntax) as BoundTypeAlias; return(result?.TypeAliasSymbol); }