[mcs] extend API for loading types and consuming source file from a stream (#4905)
[mono.git] / mcs / mcs / location.cs
index 658f3b765fa4f48f4e9e1bce1787cca9a387e215..287aac0797a375b222d27470769e692f0dabefe7 100644 (file)
@@ -59,6 +59,7 @@ namespace Mono.CSharp
                public readonly string OriginalFullPathName;
                public readonly int Index;
                public bool AutoGenerated;
+               public Func<SourceFile, SeekableStreamReader> GetInputStream;
 
                SourceFileEntry file;
                byte[] algGuid, checksum;
@@ -71,6 +72,11 @@ namespace Mono.CSharp
                        this.OriginalFullPathName = path;
                }
 
+               public SourceFile (string name, string path, int index, Func<SourceFile, SeekableStreamReader> inputStreamDelegate) : this (name, path, index)
+               {
+                       this.GetInputStream = inputStreamDelegate;
+               }
+
                public byte[] Checksum {
                        get {
                                return checksum;