Terraria
v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
ParameterHandleCollection.cs
Go to the documentation of this file.
1
using
System.Collections
;
2
using
System.Collections.Generic
;
3
4
namespace
System.Reflection.Metadata
;
5
6
public
readonly
struct
ParameterHandleCollection
:
IReadOnlyCollection
<ParameterHandle>,
IEnumerable
<ParameterHandle>,
IEnumerable
7
{
8
public
struct
Enumerator
:
IEnumerator
<ParameterHandle>,
IEnumerator
,
IDisposable
9
{
10
private
readonly
MetadataReader
_reader
;
11
12
private
readonly
int
_lastRowId
;
13
14
private
int
_currentRowId
;
15
16
public
ParameterHandle
Current
17
{
18
get
19
{
20
if
(
_reader
.
UseParamPtrTable
)
21
{
22
return
GetCurrentParameterIndirect
();
23
}
24
return
ParameterHandle
.
FromRowId
((
int
)((
long
)
_currentRowId
& 0
xFFFFFFL
));
25
}
26
}
27
28
object
IEnumerator.Current =>
Current
;
29
30
internal
Enumerator
(
MetadataReader
reader,
int
firstRowId
,
int
lastRowId
)
31
{
32
_reader
= reader;
33
_lastRowId
=
lastRowId
;
34
_currentRowId
=
firstRowId
- 1;
35
}
36
37
private
ParameterHandle
GetCurrentParameterIndirect
()
38
{
39
return
_reader
.
ParamPtrTable
.GetParamFor(
_currentRowId
& 0
xFFFFFF
);
40
}
41
42
public
bool
MoveNext
()
43
{
44
if
(
_currentRowId
>=
_lastRowId
)
45
{
46
_currentRowId
= 16777216;
47
return
false
;
48
}
49
_currentRowId
++;
50
return
true
;
51
}
52
53
void
IEnumerator
.
Reset
()
54
{
55
throw
new
NotSupportedException
();
56
}
57
58
void
IDisposable
.
Dispose
()
59
{
60
}
61
}
62
63
private
readonly
MetadataReader
_reader
;
64
65
private
readonly
int
_firstRowId
;
66
67
private
readonly
int
_lastRowId
;
68
69
public
int
Count
=>
_lastRowId
-
_firstRowId
+ 1;
70
71
internal
ParameterHandleCollection
(
MetadataReader
reader,
MethodDefinitionHandle
containingMethod
)
72
{
73
_reader
= reader;
74
reader.
GetParameterRange
(
containingMethod
,
out
_firstRowId
,
out
_lastRowId
);
75
}
76
77
public
Enumerator
GetEnumerator
()
78
{
79
return
new
Enumerator
(
_reader
,
_firstRowId
,
_lastRowId
);
80
}
81
82
IEnumerator<ParameterHandle>
IEnumerable<ParameterHandle>
.
GetEnumerator
()
83
{
84
return
GetEnumerator
();
85
}
86
87
IEnumerator
IEnumerable
.
GetEnumerator
()
88
{
89
return
GetEnumerator
();
90
}
91
}
System.Collections.Generic.Dictionary.GetEnumerator
Enumerator GetEnumerator()
Definition
Dictionary.cs:984
System.Collections.Generic.Dictionary
Definition
Dictionary.cs:14
System.NotSupportedException
Definition
NotSupportedException.cs:9
System.Reflection.Metadata.MetadataReader.GetParameterRange
void GetParameterRange(MethodDefinitionHandle methodDef, out int firstParamRowId, out int lastParamRowId)
Definition
MetadataReader.cs:853
System.Reflection.Metadata.MetadataReader.ParamPtrTable
ParamPtrTableReader ParamPtrTable
Definition
MetadataReader.cs:89
System.Reflection.Metadata.MetadataReader.UseParamPtrTable
bool UseParamPtrTable
Definition
MetadataReader.cs:193
System.Reflection.Metadata.MetadataReader
Definition
MetadataReader.cs:12
System.Collections.Generic.IEnumerable.GetEnumerator
new IEnumerator< T > GetEnumerator()
System.Collections.Generic.IEnumerable
Definition
IEnumerable.cs:4
System.Collections.Generic.IEnumerator
Definition
IEnumerator.cs:4
System.Collections.Generic.IReadOnlyCollection
Definition
IReadOnlyCollection.cs:4
System.Collections.IEnumerator.Reset
void Reset()
System.IDisposable.Dispose
void Dispose()
System.IDisposable
Definition
IDisposable.cs:4
System.Collections.Generic
Definition
IHashKeyCollection.cs:1
System.Collections
Definition
BlockingCollection.cs:8
System.Reflection.Metadata
Definition
AssemblyExtensions.cs:4
System.Reflection.Metadata.MethodDefinitionHandle
Definition
MethodDefinitionHandle.cs:4
System.Reflection.Metadata.ParameterHandleCollection.Enumerator.Enumerator
Enumerator(MetadataReader reader, int firstRowId, int lastRowId)
Definition
ParameterHandleCollection.cs:30
System.Reflection.Metadata.ParameterHandleCollection.Enumerator.GetCurrentParameterIndirect
ParameterHandle GetCurrentParameterIndirect()
Definition
ParameterHandleCollection.cs:37
System.Reflection.Metadata.ParameterHandleCollection.Enumerator._lastRowId
readonly int _lastRowId
Definition
ParameterHandleCollection.cs:12
System.Reflection.Metadata.ParameterHandleCollection.Enumerator.Current
object IEnumerator. Current
Definition
ParameterHandleCollection.cs:28
System.Reflection.Metadata.ParameterHandleCollection.Enumerator._currentRowId
int _currentRowId
Definition
ParameterHandleCollection.cs:14
System.Reflection.Metadata.ParameterHandleCollection.Enumerator.Current
ParameterHandle Current
Definition
ParameterHandleCollection.cs:17
System.Reflection.Metadata.ParameterHandleCollection.Enumerator.MoveNext
bool MoveNext()
Definition
ParameterHandleCollection.cs:42
System.Reflection.Metadata.ParameterHandleCollection.Enumerator._reader
readonly MetadataReader _reader
Definition
ParameterHandleCollection.cs:10
System.Reflection.Metadata.ParameterHandleCollection.Enumerator
Definition
ParameterHandleCollection.cs:9
System.Reflection.Metadata.ParameterHandleCollection.GetEnumerator
Enumerator GetEnumerator()
Definition
ParameterHandleCollection.cs:77
System.Reflection.Metadata.ParameterHandleCollection._reader
readonly MetadataReader _reader
Definition
ParameterHandleCollection.cs:63
System.Reflection.Metadata.ParameterHandleCollection.Count
int Count
Definition
ParameterHandleCollection.cs:69
System.Reflection.Metadata.ParameterHandleCollection._firstRowId
readonly int _firstRowId
Definition
ParameterHandleCollection.cs:65
System.Reflection.Metadata.ParameterHandleCollection._lastRowId
readonly int _lastRowId
Definition
ParameterHandleCollection.cs:67
System.Reflection.Metadata.ParameterHandleCollection.ParameterHandleCollection
ParameterHandleCollection(MetadataReader reader, MethodDefinitionHandle containingMethod)
Definition
ParameterHandleCollection.cs:71
System.Reflection.Metadata.ParameterHandleCollection
Definition
ParameterHandleCollection.cs:7
System.Reflection.Metadata.ParameterHandle.FromRowId
static ParameterHandle FromRowId(int rowId)
Definition
ParameterHandle.cs:16
System.Reflection.Metadata.ParameterHandle
Definition
ParameterHandle.cs:4
source
System.Reflection.Metadata
System.Reflection.Metadata
ParameterHandleCollection.cs
Generated by
1.10.0