Пример #1
0
                private unsafe TextReader CreateTextReaderFromTemporaryStorage(ISupportDirectMemoryAccess accessor, int streamLength, CancellationToken cancellationToken)
                {
                    char *src = (char *)accessor.GetPointer();

                    // BOM: Unicode, little endian
                    // Skip the BOM when creating the reader
                    Debug.Assert(*src == 0xFEFF);

                    return(new DirectMemoryAccessStreamReader(src + 1, streamLength / sizeof(char) - 1));
                }
Пример #2
0
        private unsafe SourceText CreateTextFromTemporaryStorage(ISupportDirectMemoryAccess accessor, int streamLength, CancellationToken cancellationToken)
        {
            char *src = (char *)accessor.GetPointer();

            Debug.Assert(*src == 0xFEFF); // BOM: Unicode, little endian
            // Skip the BOM when creating the reader
            using (var reader = new DirectMemoryAccessStreamReader(src + 1, streamLength / sizeof(char) - 1))
            {
                var buffer = CreateTextBuffer(reader, cancellationToken);
                return(buffer.CurrentSnapshot.AsRoslynText(Encoding.Unicode));
            }
        }
                private unsafe TextReader CreateTextReaderFromTemporaryStorage(ISupportDirectMemoryAccess accessor, int streamLength, CancellationToken cancellationToken)
                {
                    char* src = (char*)accessor.GetPointer();

                    // BOM: Unicode, little endian
                    // Skip the BOM when creating the reader
                    Debug.Assert(*src == 0xFEFF);

                    return new DirectMemoryAccessStreamReader(src + 1, streamLength / sizeof(char) - 1);
                }
Пример #4
0
 private unsafe SourceText CreateTextFromTemporaryStorage(ISupportDirectMemoryAccess accessor, int streamLength, CancellationToken cancellationToken)
 {
     char* src = (char*)accessor.GetPointer();
     Debug.Assert(*src == 0xFEFF); // BOM: Unicode, little endian
     // Skip the BOM when creating the reader
     using (var reader = new DirectMemoryAccessStreamReader(src + 1, streamLength / sizeof(char) - 1))
     {
         var buffer = CreateTextBuffer(reader, cancellationToken);
         return buffer.CurrentSnapshot.AsRoslynText(Encoding.Unicode);
     }
 }