Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_nashorn
提交
4d23ac05
D
dragonwell8_nashorn
项目概览
openanolis
/
dragonwell8_nashorn
通知
2
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dragonwell8_nashorn
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
4d23ac05
编写于
6月 12, 2013
作者:
J
jlaskey
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
8016453: loadWithNewGlobal does not allow apply operation
Reviewed-by: hannesw, sundar Contributed-by: james.laskey@oracle.com
上级
df682fc1
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
18 addition
and
12 deletion
+18
-12
samples/test.js
samples/test.js
+6
-5
src/jdk/nashorn/internal/objects/Global.java
src/jdk/nashorn/internal/objects/Global.java
+12
-7
未找到文件。
samples/test.js
浏览文件 @
4d23ac05
/*
* Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
*
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
*
* - Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
*
* - Neither the name of Oracle nor the names of its
* contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
* IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
...
...
@@ -30,3 +30,4 @@
*/
print
(
"
Hello World
"
);
src/jdk/nashorn/internal/objects/Global.java
浏览文件 @
4d23ac05
...
...
@@ -37,6 +37,7 @@ import java.lang.ref.SoftReference;
import
java.lang.reflect.Field
;
import
java.security.AccessController
;
import
java.security.PrivilegedAction
;
import
java.util.Arrays
;
import
java.util.LinkedHashMap
;
import
java.util.List
;
import
java.util.Map
;
...
...
@@ -372,7 +373,7 @@ public final class Global extends ScriptObject implements GlobalObject, Scope {
private
static
final
MethodHandle
PRINT
=
findOwnMH
(
"print"
,
Object
.
class
,
Object
.
class
,
Object
[].
class
);
private
static
final
MethodHandle
PRINTLN
=
findOwnMH
(
"println"
,
Object
.
class
,
Object
.
class
,
Object
[].
class
);
private
static
final
MethodHandle
LOAD
=
findOwnMH
(
"load"
,
Object
.
class
,
Object
.
class
,
Object
.
class
);
private
static
final
MethodHandle
LOADWITHNEWGLOBAL
=
findOwnMH
(
"loadWithNewGlobal"
,
Object
.
class
,
Object
.
class
,
Object
.
class
,
Object
[].
class
);
private
static
final
MethodHandle
LOADWITHNEWGLOBAL
=
findOwnMH
(
"loadWithNewGlobal"
,
Object
.
class
,
Object
.
class
,
Object
[].
class
);
private
static
final
MethodHandle
EXIT
=
findOwnMH
(
"exit"
,
Object
.
class
,
Object
.
class
,
Object
.
class
);
private
final
Context
context
;
...
...
@@ -750,17 +751,21 @@ public final class Global extends ScriptObject implements GlobalObject, Scope {
/**
* Global loadWithNewGlobal implementation - Nashorn extension
*
* @param self scope
* @param source source to load
* @param args (optional) arguments to be passed to the loaded script
* @param self scope
* @param args from plus (optional) arguments to be passed to the loaded script
*
* @return result of load (undefined)
* @return result of load (
may be
undefined)
*
* @throws IOException if source could not be read
*/
public
static
Object
loadWithNewGlobal
(
final
Object
self
,
final
Object
source
,
final
Object
...
args
)
throws
IOException
{
public
static
Object
loadWithNewGlobal
(
final
Object
self
,
final
Object
...
args
)
throws
IOException
{
final
Global
global
=
Global
.
instance
();
return
global
.
context
.
loadWithNewGlobal
(
source
,
args
);
final
int
length
=
args
.
length
;
final
boolean
hasArgs
=
0
<
length
;
final
Object
from
=
hasArgs
?
args
[
0
]
:
UNDEFINED
;
final
Object
[]
arguments
=
hasArgs
?
Arrays
.
copyOfRange
(
args
,
1
,
length
)
:
args
;
return
global
.
context
.
loadWithNewGlobal
(
from
,
arguments
);
}
/**
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录