Пример #1
0
 public BoundTypeAlias(TypeAliasSymbol typeAliasSymbol, TypeSymbol declaredType, ImmutableArray<BoundVariableQualifier> qualifiers)
     : base(BoundNodeKind.TypeAlias)
 {
     TypeAliasSymbol = typeAliasSymbol;
     DeclaredType = declaredType;
     Qualifiers = qualifiers;
 }
Пример #2
0
        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());
        }