/// <summary> /// Converts the specified resolver. /// </summary> /// <param name="resolver">The resolver.</param> /// <returns>ISymbolResolver.</returns> public ISymbolResolver Convert(ClrMd.ISymbolResolver resolver) { if (resolver == null) { return(null); } var item = new SymbolResolverAdapter(this, resolver); return(Cache.GetOrAdd <ISymbolResolver>(resolver, () => item, () => item.Setup())); }
/// <summary> /// Initializes a new instance of the <see cref="SymbolResolverAdapter" /> class. /// </summary> /// <param name="resolver">The resolver.</param> /// <exception cref="ArgumentNullException">resolver</exception> /// <inheritdoc /> public SymbolResolverAdapter(IConverter converter, ClrMd.ISymbolResolver resolver) : base(converter) { Resolver = resolver ?? throw new ArgumentNullException(nameof(resolver)); }