コード例 #1
0
 /// <summary>
 /// Returns a reference to the 0th element of the ReadOnlySpan. If the Span is empty, returns a reference to the location where the 0th element
 /// would have been stored. Such a reference can be used for pinning but must never be dereferenced.
 /// </summary>
 public static ref T GetReference <T>(ReadOnlySpan <T> span)
 {
     if (span.Pinnable == null)
     {
         unsafe { return(ref Unsafe.AsRef <T>(span.ByteOffset.ToPointer())); }
     }
     else
     {
         return(ref Unsafe.AddByteOffset <T>(ref span.Pinnable.Data, span.ByteOffset));
     }
 }
コード例 #2
0
ファイル: PdfXrefEntry.cs プロジェクト: salslab/LittlePdf
        public async Task WriteAsync(Stream stream)
        {
            await stream.WriteAsync(Encoding.ASCII.GetBytes(ByteOffset.ToString("D10")));

            await stream.WriteAsync(PdfSpec.Space);

            await stream.WriteAsync(Encoding.ASCII.GetBytes(GenerationNumber.ToString("D5")));

            await stream.WriteAsync(PdfSpec.Space);

            await stream.WriteAsync(Type == XrefEntryType.InUse?PdfSpec.XrefInUse : PdfSpec.XrefFree);

            await stream.WriteAsync(PdfSpec.Space);

            await stream.WriteAsync(PdfSpec.NewLine);
        }
コード例 #3
0
 public override byte[] Print()
 {
     return(BufferFromString($"{ByteOffset.ToString("#########")} {GenerationNumber.ToString("#####")} {InUseKeyword} {EscapeSequences.CRLF}"));
 }