5 instantiations of AssemblyMetadata
Microsoft.CodeAnalysis (5)
MetadataReference\AssemblyMetadata.cs (5)
170return new AssemblyMetadata(manifestModule, moduleName => ModuleMetadata.CreateFromFile(Path.Combine(Path.GetDirectoryName(path) ?? "", moduleName))); 187return new AssemblyMetadata(ImmutableArray.Create(module)); 219return new AssemblyMetadata(modules); 262return new AssemblyMetadata(this, shareCachedSymbols: true); 267return new AssemblyMetadata(this, shareCachedSymbols: false);
86 references to AssemblyMetadata
Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation (2)
RazorReferenceManager.cs (2)
82var assemblyMetadata = AssemblyMetadata.Create(moduleMetadata);
Microsoft.CodeAnalysis (58)
CommandLine\CommonCompiler.ExistingReferencesResolver.cs (1)
60PEAssembly assembly = ((AssemblyMetadata)peReference.GetMetadataNoCopy()).GetAssembly()!;
Compilation\DeterministicKeyBuilder.cs (1)
384case AssemblyMetadata assemblyMetadata:
DiagnosticAnalyzer\AnalyzerFileReference.cs (2)
228using var assembly = AssemblyMetadata.CreateFromFile(fullPath);
MetadataReader\PEAssembly.cs (3)
53private readonly AssemblyMetadata _owner; 60internal PEAssembly(AssemblyMetadata owner, ImmutableArray<PEModule> modules) 202public AssemblyMetadata GetNonDisposableMetadata() => _owner.Copy();
MetadataReference\AssemblyMetadata.cs (18)
57/// Modules the <see cref="AssemblyMetadata"/> was created with, in case they are eagerly allocated. 77private AssemblyMetadata(AssemblyMetadata other, bool shareCachedSymbols) 115public static AssemblyMetadata CreateFromImage(ImmutableArray<byte> peImage) 128public static AssemblyMetadata CreateFromImage(IEnumerable<byte> peImage) 139public static AssemblyMetadata CreateFromStream(Stream peStream, bool leaveOpen = false) 150public static AssemblyMetadata CreateFromStream(Stream peStream, PEStreamOptions options) 156/// Finds all modules of an assembly on a specified path and builds an instance of <see cref="AssemblyMetadata"/> that represents them. 163public static AssemblyMetadata CreateFromFile(string path) 168internal static AssemblyMetadata CreateFromFile(ModuleMetadata manifestModule, string path) 180public static AssemblyMetadata Create(ModuleMetadata module) 199public static AssemblyMetadata Create(params ImmutableArray<ModuleMetadata> modules) 231public static AssemblyMetadata Create(IEnumerable<ModuleMetadata> modules) 245public static AssemblyMetadata Create(params ModuleMetadata[] modules) 251/// Creates a shallow copy of contained modules and wraps them into a new instance of <see cref="AssemblyMetadata"/>. 260internal new AssemblyMetadata Copy() 265internal AssemblyMetadata CopyWithoutSharingCachedSymbols() 298throw new ObjectDisposedException(nameof(AssemblyMetadata)); 364throw new ObjectDisposedException(nameof(AssemblyMetadata));
MetadataReference\MetadataReference.cs (21)
102/// It is recommended to use <see cref="AssemblyMetadata.CreateFromImage(ImmutableArray{byte})"/> or <see cref="ModuleMetadata.CreateFromImage(ImmutableArray{byte})"/> 109/// deterministically use <see cref="AssemblyMetadata.CreateFromImage(ImmutableArray{byte})"/> 111/// <see cref="AssemblyMetadata.GetReference(DocumentationProvider, ImmutableArray{string}, bool, string, string)"/> to get a reference to it. 128_ => AssemblyMetadata.CreateFromImage(peImage), 144/// It is recommended to use <see cref="AssemblyMetadata.CreateFromImage(IEnumerable{byte})"/> or <see cref="ModuleMetadata.CreateFromImage(IEnumerable{byte})"/> 151/// deterministically use <see cref="AssemblyMetadata.CreateFromStream(Stream, PEStreamOptions)"/> 153/// <see cref="AssemblyMetadata.GetReference(DocumentationProvider, ImmutableArray{string}, bool, string, string)"/> to get a reference to it. 166_ => AssemblyMetadata.CreateFromImage(peImage), 186/// It is recommended to use <see cref="AssemblyMetadata.CreateFromStream(Stream, PEStreamOptions)"/> or <see cref="ModuleMetadata.CreateFromStream(Stream, PEStreamOptions)"/> 193/// the lifetime deterministically use <see cref="AssemblyMetadata.CreateFromStream(Stream, PEStreamOptions)"/> 195/// <see cref="AssemblyMetadata.GetReference(DocumentationProvider, ImmutableArray{string}, bool, string, string)"/> 209_ => AssemblyMetadata.CreateFromStream(peStream, PEStreamOptions.PrefetchEntireImage), 228/// It is recommended to use <see cref="AssemblyMetadata.CreateFromFile(string)"/> or <see cref="ModuleMetadata.CreateFromFile(string)"/> 235/// the lifetime deterministically use <see cref="AssemblyMetadata.CreateFromFile(string)"/> 237/// <see cref="AssemblyMetadata.GetReference(DocumentationProvider, ImmutableArray{string}, bool, string, string)"/> 280var assemblyMetadata = AssemblyMetadata.CreateFromFile(module, path); 293/// It is recommended to use <see cref="AssemblyMetadata.CreateFromFile(string)"/> API when creating multiple references to the same assembly. 294/// Reusing <see cref="AssemblyMetadata"/> object allows for sharing data across these references. 321/// It is recommended to use <see cref="AssemblyMetadata.CreateFromFile(string)"/> API when creating multiple references to the same assembly. 322/// Reusing <see cref="AssemblyMetadata"/> object allows for sharing data across these references.
ReferenceManager\CommonReferenceManager.Binding.cs (3)
273out AssemblyMetadata? resolvedAssemblyMetadata, 531[NotNullWhen(true)] out AssemblyMetadata? resolvedAssemblyMetadata, 575AssemblyMetadata assemblyMetadata,
ReferenceManager\CommonReferenceManager.Resolution.cs (6)
330var assemblyMetadata = (AssemblyMetadata)metadata; 495if (newMetadata is AssemblyMetadata assemblyMetadata) 546internal AssemblyMetadata? GetAssemblyMetadata(PortableExecutableReference peReference, DiagnosticBag diagnostics) 557var assemblyMetadata = metadata as AssemblyMetadata;
ReferenceManager\CommonReferenceManager.State.cs (1)
27/// - <see cref="AssemblyMetadata.CachedSymbols"/>
Symbols\IAssemblySymbol.cs (2)
84/// If this symbol represents a metadata assembly returns the underlying <see cref="AssemblyMetadata"/>. 88AssemblyMetadata? GetMetadata();
Microsoft.CodeAnalysis.CSharp (9)
Emitter\EditAndContinue\PEDeltaAssemblyBuilder.cs (1)
107var metadataAssembly = metadataCompilation.GetBoundReferenceManager().CreatePEAssemblyForAssemblyMetadata(AssemblyMetadata.Create(originalMetadata), MetadataImportOptions.All, out assemblyReferenceIdentityMap);
Symbols\AssemblySymbol.cs (2)
1107/// If this symbol represents a metadata assembly returns the underlying <see cref="AssemblyMetadata"/>. 1111public abstract AssemblyMetadata GetMetadata();
Symbols\Metadata\PE\PEAssemblySymbol.cs (1)
317public override AssemblyMetadata GetMetadata() => _assembly.GetNonDisposableMetadata();
Symbols\MissingAssemblySymbol.cs (1)
213public override AssemblyMetadata GetMetadata() => null;
Symbols\PublicModel\AssemblySymbol.cs (1)
50AssemblyMetadata IAssemblySymbol.GetMetadata() => UnderlyingAssemblySymbol.GetMetadata();
Symbols\ReferenceManager.cs (1)
246public PEAssemblySymbol CreatePEAssemblyForAssemblyMetadata(AssemblyMetadata metadata, MetadataImportOptions importOptions, out ImmutableDictionary<AssemblyIdentity, AssemblyIdentity> assemblyReferenceIdentityMap)
Symbols\Retargeting\RetargetingAssemblySymbol.cs (1)
333public override AssemblyMetadata GetMetadata() => _underlyingAssembly.GetMetadata();
Symbols\Source\SourceAssemblySymbol.cs (1)
2964public override AssemblyMetadata GetMetadata() => null;
Microsoft.CodeAnalysis.Scripting (3)
Hosting\AssemblyLoader\MetadataShadowCopyProvider.cs (3)
251newMetadata = AssemblyMetadata.CreateFromFile(fullPath); 447private AssemblyMetadata CreateAssemblyMetadata(FileStream manifestModuleCopyStream, string originalPath, string shadowCopyPath) 481return AssemblyMetadata.Create(modules);
Microsoft.CodeAnalysis.Workspaces (12)
FindSymbols\SymbolTree\SymbolTreeInfo_Metadata.cs (1)
276if (metadata is AssemblyMetadata assembly)
Serialization\SerializedPortableExecutableReference.cs (2)
65MetadataKind={metadata switch { null => "null", AssemblyMetadata => "assembly", ModuleMetadata => "module", _ => metadata.GetType().Name }} 71if (metadata is AssemblyMetadata assemblyMetadata)
Serialization\SerializerService_Reference.cs (4)
229if (metadata is AssemblyMetadata assemblyMetadata) 248private static bool TryGetModules(AssemblyMetadata assemblyMetadata, out ImmutableArray<ModuleMetadata> modules) 345if (metadata is AssemblyMetadata assemblyMetadata) 416return (AssemblyMetadata.Create(allMetadata.MoveToImmutable()), allHandles.MoveToImmutable());
Workspace\Host\TemporaryStorage\ITemporaryStorageService.cs (1)
37/// their data into types like <see cref="AssemblyMetadata"/>. It also allows them to be read in by our server
Workspace\Solution\SolutionCompilationState.SkeletonReferenceCache.cs (3)
233(AssemblyMetadata? metadata, ITemporaryStorageStreamHandle storageHandle) TryCreateMetadataAndHandle() 262var result = AssemblyMetadata.CreateFromStream(
Workspace\Solution\SolutionCompilationState.SkeletonReferenceSet.cs (1)
21AssemblyMetadata metadata,
rzc (1)
MetadataCache.cs (1)
44metadata = AssemblyMetadata.CreateFromStream(fileStream, PEStreamOptions.PrefetchMetadata);
VBCSCompiler (1)
src\roslyn\src\Compilers\Server\VBCSCompiler\MetadataCache.cs (1)
80Metadata result = AssemblyMetadata.Create(allModules);