private static unsafe string GetMetadataText(MetadataDelta metadataDelta)
        {
            var writer = new StringWriter();

            fixed (byte* ptr = metadataDelta.Bytes)
            {
                var reader = new MetadataReader(ptr, metadataDelta.Bytes.Length, MetadataReaderOptions.ApplyWindowsRuntimeProjections);
                var visualizer = new MetadataVisualizer(reader, writer);
                visualizer.Visualize();
            }

            return writer.ToString();
        }
Beispiel #2
0
 public Deltas(
     byte[] il,
     byte[] metadata,
     int[] updatedMethods,
     MemoryStream pdb,
     List <KeyValuePair <DocumentId, ImmutableArray <LineChange> > > lineEdits,
     EmitDifferenceResult emitResult)
 {
     this.IL         = new ILDelta(il);
     this.Metadata   = new MetadataDelta(metadata);
     this.Pdb        = new PdbDelta(pdb, updatedMethods);
     this.EmitResult = emitResult;
     this.LineEdits  = lineEdits;
 }
Beispiel #3
0
 public Deltas(
     byte[] il,
     byte[] metadata,
     int[] updatedMethods,
     MemoryStream pdb,
     List<KeyValuePair<DocumentId, ImmutableArray<LineChange>>> lineEdits,
     EmitDifferenceResult emitResult)
 {
     this.IL = new ILDelta(il);
     this.Metadata = new MetadataDelta(metadata);
     this.Pdb = new PdbDelta(pdb, updatedMethods);
     this.EmitResult = emitResult;
     this.LineEdits = lineEdits;
 }