1 write to Alias
Microsoft.CodeAnalysis.CSharp (1)
Binder\AliasAndExternAliasDirective.cs (1)
22this.Alias = alias;
29 references to Alias
Microsoft.CodeAnalysis.CSharp (20)
Binder\Binder_Lookup.cs (3)
501if (!a.SkipInLookup && a.Alias.Name == name) 506var res = originalBinder.CheckViability(a.Alias, arity, options, null, diagnose, ref useSiteInfo, basesBeingResolved); 2003addAliasSymbolToResult(result, externAlias.Alias, options, originalBinder);
Binder\ImportChain.cs (1)
70usedNamespaces.Add(Cci.UsedNamespaceOrType.CreateExternAlias(alias.Alias.Name));
Binder\Imports.cs (3)
55ExternAliases.Select(ea => $"extern alias {ea.Alias.Name}"))); 205replacedExternAliases.AddAll(externs2.Select(e => e.Alias.Name)); 206return externs1.WhereAsArray((e, replacedExternAliases) => !replacedExternAliases.Contains(e.Alias.Name), replacedExternAliases).AddRange(externs2);
Compilation\CSharpSemanticModel.cs (1)
5425imports.ExternAliases.SelectAsArray(static e => e.Alias.GetPublicSymbol()),
Compilation\SyntaxTreeSemanticModel.cs (2)
1990if (alias.Alias.GetFirstLocation().SourceSpan == declarationSyntax.Identifier.Span) 1992return alias.Alias.GetPublicSymbol();
Symbols\Source\SourceNamespaceSymbol.AliasesAndUsings.cs (10)
366!globalAliasesMap.ContainsKey(externAlias.Alias.Name) && // If we have a global alias with the same name declared in the same compilation unit, we already reported the conflict on the global alias. 367mergedAliases.ContainsKey(externAlias.Alias.Name)) 370diagnostics.Add(ErrorCode.ERR_DuplicateAlias, externAlias.Alias.GetFirstLocation(), externAlias.Alias.Name); 490if (existingAlias.Alias.Name == aliasSyntax.Identifier.ValueText) 492diagnostics.Add(ErrorCode.ERR_DuplicateAlias, existingAlias.Alias.GetFirstLocation(), existingAlias.Alias.Name); 696if (externAlias.Alias.Name == identifierValueText) 1036var target = (NamespaceSymbol)alias.Alias.GetAliasTarget(null); 1039if (alias.Alias is AliasSymbolFromSyntax aliasFromSyntax)
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (9)
Semantics\ImportsTests.cs (9)
46Assert.Equal(new[] { "A", "B" }, concat1.ExternAliases.Select(e => e.Alias.Name)); 54Assert.Equal(new[] { "B", "A" }, concat2.ExternAliases.Select(e => e.Alias.Name)); 82Assert.Equal(new[] { "B", "A", "C" }, concat1.ExternAliases.Select(e => e.Alias.Name)); 91Assert.Equal(new[] { "C", "A", "B" }, concat2.ExternAliases.Select(e => e.Alias.Name)); 120AliasSymbol.CreateCustomDebugInfoAlias(scratchExternAliases[1].Alias.Target, externAlias1.ExternAliasDirective.Identifier, binder.ContainingMemberOrLambda, isExtern: true), 134Assert.Equal(externAlias2.Alias.Target, concat1.ExternAliases.Single().Alias.Target); 137Assert.Equal(externAlias1.Alias.Target, concat2.ExternAliases.Single().Alias.Target);