Terraria
v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
InterfaceImplementationHandleCollection.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
InterfaceImplementationHandleCollection
:
IReadOnlyCollection
<InterfaceImplementationHandle>,
IEnumerable
<InterfaceImplementationHandle>,
IEnumerable
7
{
8
public
struct
Enumerator
:
IEnumerator
<InterfaceImplementationHandle>,
IEnumerator
,
IDisposable
9
{
10
private
readonly
MetadataReader
_reader
;
11
12
private
readonly
int
_lastRowId
;
13
14
private
int
_currentRowId
;
15
16
public
InterfaceImplementationHandle
Current
=>
InterfaceImplementationHandle
.
FromRowId
((
int
)((
long
)
_currentRowId
& 0
xFFFFFFL
));
17
18
object
IEnumerator.Current =>
Current
;
19
20
internal
Enumerator
(
MetadataReader
reader,
int
firstRowId
,
int
lastRowId
)
21
{
22
_reader
= reader;
23
_currentRowId
=
firstRowId
- 1;
24
_lastRowId
=
lastRowId
;
25
}
26
27
public
bool
MoveNext
()
28
{
29
if
(
_currentRowId
>=
_lastRowId
)
30
{
31
_currentRowId
= 16777216;
32
return
false
;
33
}
34
_currentRowId
++;
35
return
true
;
36
}
37
38
void
IEnumerator
.
Reset
()
39
{
40
throw
new
NotSupportedException
();
41
}
42
43
void
IDisposable
.
Dispose
()
44
{
45
}
46
}
47
48
private
readonly
MetadataReader
_reader
;
49
50
private
readonly
int
_firstRowId
;
51
52
private
readonly
int
_lastRowId
;
53
54
public
int
Count
=>
_lastRowId
-
_firstRowId
+ 1;
55
56
internal
InterfaceImplementationHandleCollection
(
MetadataReader
reader,
TypeDefinitionHandle
implementingType
)
57
{
58
_reader
= reader;
59
reader.
InterfaceImplTable
.GetInterfaceImplRange(
implementingType
,
out
_firstRowId
,
out
_lastRowId
);
60
}
61
62
public
Enumerator
GetEnumerator
()
63
{
64
return
new
Enumerator
(
_reader
,
_firstRowId
,
_lastRowId
);
65
}
66
67
IEnumerator<InterfaceImplementationHandle>
IEnumerable<InterfaceImplementationHandle>
.
GetEnumerator
()
68
{
69
return
GetEnumerator
();
70
}
71
72
IEnumerator
IEnumerable
.
GetEnumerator
()
73
{
74
return
GetEnumerator
();
75
}
76
}
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.InterfaceImplTable
InterfaceImplTableReader InterfaceImplTable
Definition
MetadataReader.cs:93
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.InterfaceImplementationHandleCollection.Enumerator._reader
readonly MetadataReader _reader
Definition
InterfaceImplementationHandleCollection.cs:10
System.Reflection.Metadata.InterfaceImplementationHandleCollection.Enumerator.Current
InterfaceImplementationHandle Current
Definition
InterfaceImplementationHandleCollection.cs:16
System.Reflection.Metadata.InterfaceImplementationHandleCollection.Enumerator.MoveNext
bool MoveNext()
Definition
InterfaceImplementationHandleCollection.cs:27
System.Reflection.Metadata.InterfaceImplementationHandleCollection.Enumerator._lastRowId
readonly int _lastRowId
Definition
InterfaceImplementationHandleCollection.cs:12
System.Reflection.Metadata.InterfaceImplementationHandleCollection.Enumerator.Current
object IEnumerator. Current
Definition
InterfaceImplementationHandleCollection.cs:18
System.Reflection.Metadata.InterfaceImplementationHandleCollection.Enumerator.Enumerator
Enumerator(MetadataReader reader, int firstRowId, int lastRowId)
Definition
InterfaceImplementationHandleCollection.cs:20
System.Reflection.Metadata.InterfaceImplementationHandleCollection.Enumerator._currentRowId
int _currentRowId
Definition
InterfaceImplementationHandleCollection.cs:14
System.Reflection.Metadata.InterfaceImplementationHandleCollection.Enumerator
Definition
InterfaceImplementationHandleCollection.cs:9
System.Reflection.Metadata.InterfaceImplementationHandleCollection._reader
readonly MetadataReader _reader
Definition
InterfaceImplementationHandleCollection.cs:48
System.Reflection.Metadata.InterfaceImplementationHandleCollection.GetEnumerator
Enumerator GetEnumerator()
Definition
InterfaceImplementationHandleCollection.cs:62
System.Reflection.Metadata.InterfaceImplementationHandleCollection.Count
int Count
Definition
InterfaceImplementationHandleCollection.cs:54
System.Reflection.Metadata.InterfaceImplementationHandleCollection.InterfaceImplementationHandleCollection
InterfaceImplementationHandleCollection(MetadataReader reader, TypeDefinitionHandle implementingType)
Definition
InterfaceImplementationHandleCollection.cs:56
System.Reflection.Metadata.InterfaceImplementationHandleCollection._lastRowId
readonly int _lastRowId
Definition
InterfaceImplementationHandleCollection.cs:52
System.Reflection.Metadata.InterfaceImplementationHandleCollection._firstRowId
readonly int _firstRowId
Definition
InterfaceImplementationHandleCollection.cs:50
System.Reflection.Metadata.InterfaceImplementationHandleCollection
Definition
InterfaceImplementationHandleCollection.cs:7
System.Reflection.Metadata.InterfaceImplementationHandle.FromRowId
static InterfaceImplementationHandle FromRowId(int rowId)
Definition
InterfaceImplementationHandle.cs:16
System.Reflection.Metadata.InterfaceImplementationHandle
Definition
InterfaceImplementationHandle.cs:4
System.Reflection.Metadata.TypeDefinitionHandle
Definition
TypeDefinitionHandle.cs:4
source
System.Reflection.Metadata
System.Reflection.Metadata
InterfaceImplementationHandleCollection.cs
Generated by
1.10.0