Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
东方怂天
xLua
提交
2a51d1c2
X
xLua
项目概览
东方怂天
/
xLua
通知
4
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
X
xLua
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
2a51d1c2
编写于
3月 29, 2018
作者:
J
johnche(车雄生)
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
去掉跨assembly+泛型base调用的限制
上级
f31956f7
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
10 addition
and
9 deletion
+10
-9
Assets/XLua/Src/Editor/Hotfix.cs
Assets/XLua/Src/Editor/Hotfix.cs
+10
-9
Tools/XLuaHotfixInject.exe
Tools/XLuaHotfixInject.exe
+0
-0
Tools/XLuaHotfixInject.pdb
Tools/XLuaHotfixInject.pdb
+0
-0
未找到文件。
Assets/XLua/Src/Editor/Hotfix.cs
浏览文件 @
2a51d1c2
...
@@ -643,24 +643,25 @@ namespace XLua
...
@@ -643,24 +643,25 @@ namespace XLua
{
{
return
null
;
return
null
;
}
}
if
(
type
.
IsGenericInstance
&&
//if (type.IsGenericInstance &&
(
method
.
Module
.
Assembly
.
FullName
!=
type
.
Module
.
Assembly
.
FullName
))
// (method.Module.Assembly.FullName != type.Module.Assembly.FullName || method.Module.Assembly.FullName != td.Module.Assembly.FullName
{
// || method.Module.FullyQualifiedName != type.Module.FullyQualifiedName || method.Module.FullyQualifiedName != td.Module.FullyQualifiedName))
return
null
;
//{
}
// return _findBase(td.BaseType, method);
//}
var
m
=
findOverride
(
td
,
method
);
var
m
=
findOverride
(
td
,
method
);
if
(
m
!=
null
)
if
(
m
!=
null
)
{
{
if
(
type
.
IsGenericInstance
)
if
(
type
.
IsGenericInstance
)
{
{
var
reference
=
new
MethodReference
(
m
.
Name
,
m
.
ReturnType
,
type
)
var
reference
=
new
MethodReference
(
m
.
Name
,
tryImport
(
method
.
DeclaringType
,
m
.
ReturnType
),
tryImport
(
method
.
DeclaringType
,
type
)
)
{
{
HasThis
=
m
.
HasThis
,
HasThis
=
m
.
HasThis
,
ExplicitThis
=
m
.
ExplicitThis
,
ExplicitThis
=
m
.
ExplicitThis
,
CallingConvention
=
m
.
CallingConvention
CallingConvention
=
m
.
CallingConvention
};
};
foreach
(
var
parameter
in
m
.
Parameters
)
foreach
(
var
parameter
in
m
.
Parameters
)
reference
.
Parameters
.
Add
(
new
ParameterDefinition
(
parameter
.
ParameterType
));
reference
.
Parameters
.
Add
(
new
ParameterDefinition
(
tryImport
(
method
.
DeclaringType
,
parameter
.
ParameterType
)
));
foreach
(
var
generic_parameter
in
m
.
GenericParameters
)
foreach
(
var
generic_parameter
in
m
.
GenericParameters
)
reference
.
GenericParameters
.
Add
(
new
GenericParameter
(
generic_parameter
.
Name
,
reference
));
reference
.
GenericParameters
.
Add
(
new
GenericParameter
(
generic_parameter
.
Name
,
reference
));
return
reference
;
return
reference
;
...
@@ -691,7 +692,7 @@ namespace XLua
...
@@ -691,7 +692,7 @@ namespace XLua
static
TypeReference
tryImport
(
TypeReference
type
,
TypeReference
toImport
)
static
TypeReference
tryImport
(
TypeReference
type
,
TypeReference
toImport
)
{
{
if
(
type
.
Module
.
Assembly
.
FullName
==
toImport
.
Module
.
Assembly
.
FullName
if
(
type
.
Module
.
Assembly
.
FullName
==
toImport
.
Module
.
Assembly
.
FullName
&&
type
.
Module
==
toImport
.
Modul
e
)
&&
type
.
Module
.
FullyQualifiedName
==
toImport
.
Module
.
FullyQualifiedNam
e
)
{
{
return
toImport
;
return
toImport
;
}
}
...
@@ -704,7 +705,7 @@ namespace XLua
...
@@ -704,7 +705,7 @@ namespace XLua
static
MethodReference
tryImport
(
TypeReference
type
,
MethodReference
toImport
)
static
MethodReference
tryImport
(
TypeReference
type
,
MethodReference
toImport
)
{
{
if
(
type
.
Module
.
Assembly
.
FullName
==
toImport
.
Module
.
Assembly
.
FullName
if
(
type
.
Module
.
Assembly
.
FullName
==
toImport
.
Module
.
Assembly
.
FullName
&&
type
.
Module
==
toImport
.
Modul
e
)
&&
type
.
Module
.
FullyQualifiedName
==
toImport
.
Module
.
FullyQualifiedNam
e
)
{
{
return
toImport
;
return
toImport
;
}
}
...
...
Tools/XLuaHotfixInject.exe
浏览文件 @
2a51d1c2
无法预览此类型文件
Tools/XLuaHotfixInject.pdb
浏览文件 @
2a51d1c2
无法预览此类型文件
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录