IKVM11
11
Java SE 11 Virtual Machine for .NET
Loading...
Searching...
No Matches
EnclosingMethodAttribute.cs
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2014 Jeroen Frijters
3
4
This software is provided 'as-is', without any express or implied
5
warranty. In no event will the authors be held liable for any damages
6
arising from the use of this software.
7
8
Permission is granted to anyone to use this software for any purpose,
9
including commercial applications, and to alter it and redistribute it
10
freely, subject to the following restrictions:
11
12
1. The origin of this software must not be misrepresented; you must not
13
claim that you wrote the original software. If you use this software
14
in a product, an acknowledgment in the product documentation would be
15
appreciated but is not required.
16
2. Altered source versions must be plainly marked as such, and must not be
17
misrepresented as being the original software.
18
3. This notice may not be removed or altered from any source distribution.
19
20
Jeroen Frijters
21
jeroen@frijters.net
22
23
*/
24
using
System
;
25
26
using
IKVM.Runtime
;
27
28
#if IMPORTER || EXPORTER
29
using
Type
=
IKVM
.
Reflection
.
Type
;
30
#endif
31
32
namespace
IKVM.Attributes
33
{
34
35
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Interface)]
36
public
sealed
class
EnclosingMethodAttribute
: Attribute
37
{
38
39
private
string
className;
40
private
string
methodName;
41
private
string
methodSig;
42
43
public
EnclosingMethodAttribute
(
string
className,
string
methodName,
string
methodSig)
44
{
45
this.className =
UnicodeUtil
.UnescapeInvalidSurrogates(className);
46
this.methodName =
UnicodeUtil
.UnescapeInvalidSurrogates(methodName);
47
this.methodSig =
UnicodeUtil
.UnescapeInvalidSurrogates(methodSig);
48
}
49
50
internal
EnclosingMethodAttribute
SetClassName(
RuntimeContext
context,
Type
type)
51
{
52
className ??= context.
ClassLoaderFactory
.GetJavaTypeFromType(type.DeclaringType).Name;
53
return
this
;
54
}
55
56
public
string
ClassName
=> className;
57
58
public
string
MethodName
=> methodName;
59
60
public
string
MethodSignature
=> methodSig;
61
62
}
63
64
}
Type
IKVM.Reflection.Type Type
Definition
IkvmReflectionAssemblySymbol.cs:10
IKVM.Attributes.EnclosingMethodAttribute
Definition
EnclosingMethodAttribute.cs:37
IKVM.Attributes.EnclosingMethodAttribute.MethodName
string MethodName
Definition
EnclosingMethodAttribute.cs:58
IKVM.Attributes.EnclosingMethodAttribute.MethodSignature
string MethodSignature
Definition
EnclosingMethodAttribute.cs:60
IKVM.Attributes.EnclosingMethodAttribute.ClassName
string ClassName
Definition
EnclosingMethodAttribute.cs:56
IKVM.Attributes.EnclosingMethodAttribute.EnclosingMethodAttribute
EnclosingMethodAttribute(string className, string methodName, string methodSig)
Definition
EnclosingMethodAttribute.cs:43
IKVM.Reflection.Type
Definition
Type.cs:32
IKVM.Runtime.RuntimeContext
Maintains services relevant to an instane of the IKVM runtime.
Definition
RuntimeContext.cs:28
IKVM.Runtime.RuntimeContext.ClassLoaderFactory
RuntimeClassLoaderFactory ClassLoaderFactory
Gets the RuntimeClassLoaderFactory associated with this instance of the runtime.
Definition
RuntimeContext.cs:252
IKVM.Runtime.UnicodeUtil
Definition
UnicodeUtil.cs:30
IKVM.Attributes
Definition
AccessStub.cs:27
IKVM.Reflection
Definition
__MethodImplMap.cs:25
IKVM.Runtime
Definition
Accessor.cs:5
IKVM
Definition
MemoryBufferWriter.cs:7
System
Definition
HexConverter.cs:9
src
IKVM.Runtime
Attributes
EnclosingMethodAttribute.cs
Generated by
1.12.0