private static PEReader ReadAssembly()

in src/RefasmerExe/Program.cs [329:342]


    private static PEReader ReadAssembly(string input, out MetadataReader metaReader)
    {
        if(input == null)
            throw new ArgumentNullException(nameof(input));
        _logger.Debug?.Invoke($"Reading assembly {input}");

        // stream closed by memory block provider within PEReader when the latter is disposed of
        var peReader = new PEReader(new FileStream(input, FileMode.Open) /* stream closed by memory block provider within PEReader when the latter is disposed of */);
        metaReader = peReader.GetMetadataReader();

        if (!metaReader.IsAssembly)
            _logger.Warning?.Invoke($"Dll has no assembly: {input}");
        return peReader;
    }