Terraria
v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
InterfaceImplementationHandle.cs
Go to the documentation of this file.
1
namespace
System.Reflection.Metadata
;
2
3
public
readonly
struct
InterfaceImplementationHandle
:
IEquatable
<InterfaceImplementationHandle>
4
{
5
private
readonly
int
_rowId
;
6
7
public
bool
IsNil
=>
RowId
== 0;
8
9
internal
int
RowId
=>
_rowId
;
10
11
internal
InterfaceImplementationHandle
(
int
rowId)
12
{
13
_rowId
= rowId;
14
}
15
16
internal
static
InterfaceImplementationHandle
FromRowId
(
int
rowId)
17
{
18
return
new
InterfaceImplementationHandle
(rowId);
19
}
20
21
public
static
implicit
operator
Handle
(
InterfaceImplementationHandle
handle
)
22
{
23
return
new
Handle
(9,
handle
._rowId);
24
}
25
26
public
static
implicit
operator
EntityHandle
(
InterfaceImplementationHandle
handle
)
27
{
28
return
new
EntityHandle
((uint)(0x9000000uL | (ulong)
handle
._rowId));
29
}
30
31
public
static
explicit
operator
InterfaceImplementationHandle
(
Handle
handle
)
32
{
33
if
(
handle
.VType != 9)
34
{
35
Throw
.
InvalidCast
();
36
}
37
return
new
InterfaceImplementationHandle
(
handle
.RowId);
38
}
39
40
public
static
explicit
operator
InterfaceImplementationHandle
(
EntityHandle
handle
)
41
{
42
if
(
handle
.VType != 150994944)
43
{
44
Throw
.
InvalidCast
();
45
}
46
return
new
InterfaceImplementationHandle
(
handle
.RowId);
47
}
48
49
public
static
bool
operator ==
(
InterfaceImplementationHandle
left,
InterfaceImplementationHandle
right)
50
{
51
return
left._rowId == right.
_rowId
;
52
}
53
54
public
override
bool
Equals
(
object
?
obj
)
55
{
56
if
(
obj
is
InterfaceImplementationHandle
)
57
{
58
return
((
InterfaceImplementationHandle
)
obj
)._rowId ==
_rowId
;
59
}
60
return
false
;
61
}
62
63
public
bool
Equals
(
InterfaceImplementationHandle
other
)
64
{
65
return
_rowId
==
other
._rowId;
66
}
67
68
public
override
int
GetHashCode
()
69
{
70
return
_rowId
.GetHashCode();
71
}
72
73
public
static
bool
operator !=
(
InterfaceImplementationHandle
left,
InterfaceImplementationHandle
right)
74
{
75
return
left._rowId != right.
_rowId
;
76
}
77
}
System.Reflection.Throw.InvalidCast
static void InvalidCast()
Definition
Throw.cs:12
System.Reflection.Throw
Definition
Throw.cs:9
System.IEquatable
Definition
IEquatable.cs:4
System.Reflection.Metadata
Definition
AssemblyExtensions.cs:4
System.ExceptionArgument.other
@ other
System.ExceptionArgument.obj
@ obj
System.ExceptionArgument.handle
@ handle
System.Reflection.Metadata.EntityHandle
Definition
EntityHandle.cs:6
System.Reflection.Metadata.Handle
Definition
Handle.cs:6
System.Reflection.Metadata.InterfaceImplementationHandle.FromRowId
static InterfaceImplementationHandle FromRowId(int rowId)
Definition
InterfaceImplementationHandle.cs:16
System.Reflection.Metadata.InterfaceImplementationHandle.Equals
bool Equals(InterfaceImplementationHandle other)
Definition
InterfaceImplementationHandle.cs:63
System.Reflection.Metadata.InterfaceImplementationHandle.RowId
int RowId
Definition
InterfaceImplementationHandle.cs:9
System.Reflection.Metadata.InterfaceImplementationHandle.Equals
override bool Equals(object? obj)
Definition
InterfaceImplementationHandle.cs:54
System.Reflection.Metadata.InterfaceImplementationHandle.GetHashCode
override int GetHashCode()
Definition
InterfaceImplementationHandle.cs:68
System.Reflection.Metadata.InterfaceImplementationHandle.operator!=
static bool operator!=(InterfaceImplementationHandle left, InterfaceImplementationHandle right)
Definition
InterfaceImplementationHandle.cs:73
System.Reflection.Metadata.InterfaceImplementationHandle.IsNil
bool IsNil
Definition
InterfaceImplementationHandle.cs:7
System.Reflection.Metadata.InterfaceImplementationHandle._rowId
readonly int _rowId
Definition
InterfaceImplementationHandle.cs:5
System.Reflection.Metadata.InterfaceImplementationHandle.InterfaceImplementationHandle
InterfaceImplementationHandle(int rowId)
Definition
InterfaceImplementationHandle.cs:11
System.Reflection.Metadata.InterfaceImplementationHandle.operator==
static bool operator==(InterfaceImplementationHandle left, InterfaceImplementationHandle right)
Definition
InterfaceImplementationHandle.cs:49
System.Reflection.Metadata.InterfaceImplementationHandle
Definition
InterfaceImplementationHandle.cs:4
source
System.Reflection.Metadata
System.Reflection.Metadata
InterfaceImplementationHandle.cs
Generated by
1.10.0