Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
MethodPtrTableReader.cs
Go to the documentation of this file.
2
4
5internal readonly struct MethodPtrTableReader
6{
7 internal readonly int NumberOfRows;
8
9 private readonly bool _IsMethodTableRowRefSizeSmall;
10
11 private readonly int _MethodOffset;
12
13 internal readonly int RowSize;
14
15 internal readonly MemoryBlock Block;
16
17 internal MethodPtrTableReader(int numberOfRows, int methodTableRowRefSize, MemoryBlock containingBlock, int containingBlockOffset)
18 {
19 NumberOfRows = numberOfRows;
20 _IsMethodTableRowRefSizeSmall = methodTableRowRefSize == 2;
21 _MethodOffset = 0;
22 RowSize = _MethodOffset + methodTableRowRefSize;
23 Block = containingBlock.GetMemoryBlockAt(containingBlockOffset, RowSize * numberOfRows);
24 }
25
31
32 internal int GetRowIdForMethodDefRow(int methodDefRowId)
33 {
35 }
36}
int PeekReference(int offset, bool smallRefSize)
unsafe MemoryBlock GetMemoryBlockAt(int offset, int length)
int LinearSearchReference(int rowSize, int referenceOffset, uint referenceValue, bool isReferenceSmall)
MethodPtrTableReader(int numberOfRows, int methodTableRowRefSize, MemoryBlock containingBlock, int containingBlockOffset)
static MethodDefinitionHandle FromRowId(int rowId)