public void SlowSetup(MirrorSharpOptions options) { options.EnableFSharp(o => { var assemblyOfObject = typeof(object).Assembly; var referencedAssemblies = _referenceCollector.SlowGetAllReferencedAssembliesRecursive( // Essential assemblyOfObject, NetFrameworkRuntime.AssemblyOfValueTask, typeof(TaskExtensions).Assembly, typeof(FSharpOption <>).Assembly, // Runtime typeof(JitGenericAttribute).Assembly, // Requested typeof(XDocument).Assembly, // System.Xml.Linq typeof(IDataReader).Assembly, // System.Data typeof(HttpUtility).Assembly // System.Web ); var referencedAssemblyPaths = referencedAssemblies.Select(a => a.Location).ToImmutableArray(); if (assemblyOfObject.GetName().Name != "mscorlib") { var mscorlibPath = Path.Combine(Path.GetDirectoryName(assemblyOfObject.Location), "mscorlib.dll"); referencedAssemblyPaths = referencedAssemblyPaths.Add(mscorlibPath); } _referencedAssembliesTaskSource.Complete(referencedAssemblyPaths); o.AssemblyReferencePaths = referencedAssemblyPaths; }); }
public void SlowApplyTo(MirrorSharpOptions options) { options.EnableFSharp(o => o.AssemblyReferencePaths = o.AssemblyReferencePaths.AddRange(new[] { // Runtime typeof(JitGenericAttribute).Assembly.Location, // Requested typeof(IDataReader).Assembly.Location // System.Data })); }
public void SlowSetup(MirrorSharpOptions options) { options.EnableFSharp(o => { var referencedAssemblies = ImmutableList.Create( // Essential typeof(object).Assembly, NetFrameworkRuntime.AssemblyOfValueTask, typeof(TaskExtensions).Assembly, typeof(FSharpOption <>).Assembly, // Runtime typeof(JitGenericAttribute).Assembly, // Requested typeof(XDocument).Assembly, // System.Xml.Linq typeof(IDataReader).Assembly, // System.Data typeof(HttpUtility).Assembly // System.Web ); _referencedAssembliesTaskSource.Complete(referencedAssemblies); o.AssemblyReferencePaths = referencedAssemblies.Select(a => a.Location).ToImmutableArray(); }); }
public void ApplyTo(MirrorSharpOptions options) { options.EnableFSharp(); }