public static AssemblyEntry Create(IAssemblySymbol assembly) { var identity = assembly.Identity; var platformSupportEntry = PlatformSupportEntry.Create(assembly.Modules.First()) ?? PlatformSupportEntry.Create(assembly); var previewRequirementEntry = PreviewRequirementEntry.Create(assembly.Modules.First()) ?? PreviewRequirementEntry.Create(assembly); var apis = GetApis(assembly); return(new AssemblyEntry(identity, platformSupportEntry, previewRequirementEntry, apis)); }
private AssemblyEntry(AssemblyIdentity identity, PlatformSupportEntry platformSupportEntry, PreviewRequirementEntry previewRequirementEntry, List <ApiEntry> apis) { Fingerprint = ComputeFingerprint(identity, apis); Identity = identity; PlatformSupportEntry = platformSupportEntry; PreviewRequirementEntry = previewRequirementEntry; Apis = apis; }
public static ApiEntry Create(ISymbol symbol, ApiEntry parent = null) { var guid = symbol.GetCatalogGuid(); var kind = symbol.GetApiKind(); var name = symbol.GetCatalogName(); var syntax = symbol.GetCatalogSyntaxMarkup(); var obsoletionEntry = ObsoletionEntry.Create(symbol); var platformSupportEntry = PlatformSupportEntry.Create(symbol); var previewRequirementEntry = PreviewRequirementEntry.Create(symbol); return(new ApiEntry(guid, kind, parent, name, syntax, obsoletionEntry, platformSupportEntry, previewRequirementEntry)); }
public static ApiEntry Create(ISymbol symbol, ApiEntry?parent = null) { ArgumentNullException.ThrowIfNull(symbol); var guid = symbol.GetCatalogGuid(); var kind = symbol.GetApiKind(); var name = symbol.GetCatalogName(); var obsoletionEntry = ObsoletionEntry.Create(symbol); var platformSupportEntry = PlatformSupportEntry.Create(symbol); var previewRequirementEntry = PreviewRequirementEntry.Create(symbol); return(new ApiEntry(guid, kind, parent, name, null, obsoletionEntry, platformSupportEntry, previewRequirementEntry)); }
private static void AddPreviewRequirement(XContainer parent, PreviewRequirementEntry previewRequirement, string?apiFingerprint = null) { var previewRequirementElement = new XElement("previewRequirement", apiFingerprint is null ? null : new XAttribute("id", apiFingerprint)); if (previewRequirement.Message is not null) { previewRequirementElement.Add(new XAttribute("message", previewRequirement.Message)); } if (previewRequirement.Url is not null) { previewRequirementElement.Add(new XAttribute("url", previewRequirement.Url)); } parent.Add(previewRequirementElement); }
private ApiEntry(Guid guid, ApiKind kind, ApiEntry parent, string name, string syntax, ObsoletionEntry obsoletionEntry, PlatformSupportEntry platformSupportEntry, PreviewRequirementEntry previewRequirementEntry) { Fingerprint = guid; Kind = kind; Parent = parent; Name = name; Syntax = syntax; ObsoletionEntry = obsoletionEntry; PlatformSupportEntry = platformSupportEntry; PreviewRequirementEntry = previewRequirementEntry; }