Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_langtools
提交
447c3183
D
dragonwell8_langtools
项目概览
openanolis
/
dragonwell8_langtools
通知
0
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dragonwell8_langtools
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
447c3183
编写于
9月 29, 2012
作者:
K
ksrini
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
7198582: (java) Minor refactor of JavacParser
Reviewed-by: jjg, ksrini Contributed-by: jan.lahoda@oracle.com
上级
97d9fb71
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
33 addition
and
24 deletion
+33
-24
src/share/classes/com/sun/tools/javac/comp/Resolve.java
src/share/classes/com/sun/tools/javac/comp/Resolve.java
+1
-1
src/share/classes/com/sun/tools/javac/parser/JavacParser.java
...share/classes/com/sun/tools/javac/parser/JavacParser.java
+29
-20
src/share/classes/com/sun/tools/javap/CodeWriter.java
src/share/classes/com/sun/tools/javap/CodeWriter.java
+3
-3
未找到文件。
src/share/classes/com/sun/tools/javac/comp/Resolve.java
浏览文件 @
447c3183
...
...
@@ -251,7 +251,7 @@ public class Resolve {
/** An environment is "static" if its static level is greater than
* the one of its outer environment
*/
static
boolean
isStatic
(
Env
<
AttrContext
>
env
)
{
protected
static
boolean
isStatic
(
Env
<
AttrContext
>
env
)
{
return
env
.
info
.
staticLevel
>
env
.
outer
.
info
.
staticLevel
;
}
...
...
src/share/classes/com/sun/tools/javac/parser/JavacParser.java
浏览文件 @
447c3183
...
...
@@ -2165,27 +2165,10 @@ public class JavacParser implements Parser {
while
(
true
)
{
int
pos
=
token
.
pos
;
switch
(
token
.
kind
)
{
case
CASE:
{
nextToken
();
JCExpression
pat
=
parseExpression
();
accept
(
COLON
);
List
<
JCStatement
>
stats
=
blockStatements
();
JCCase
c
=
F
.
at
(
pos
).
Case
(
pat
,
stats
);
if
(
stats
.
isEmpty
())
storeEnd
(
c
,
S
.
prevToken
().
endPos
);
cases
.
append
(
c
);
break
;
}
case
DEFAULT:
{
nextToken
();
accept
(
COLON
);
List
<
JCStatement
>
stats
=
blockStatements
();
JCCase
c
=
F
.
at
(
pos
).
Case
(
null
,
stats
);
if
(
stats
.
isEmpty
())
storeEnd
(
c
,
S
.
prevToken
().
endPos
);
cases
.
append
(
c
);
case
CASE:
case
DEFAULT:
cases
.
append
(
switchBlockStatementGroup
());
break
;
}
case
RBRACE:
case
EOF:
return
cases
.
toList
();
default
:
...
...
@@ -2196,6 +2179,32 @@ public class JavacParser implements Parser {
}
}
protected
JCCase
switchBlockStatementGroup
()
{
int
pos
=
token
.
pos
;
List
<
JCStatement
>
stats
;
JCCase
c
;
switch
(
token
.
kind
)
{
case
CASE:
nextToken
();
JCExpression
pat
=
parseExpression
();
accept
(
COLON
);
stats
=
blockStatements
();
c
=
F
.
at
(
pos
).
Case
(
pat
,
stats
);
if
(
stats
.
isEmpty
())
storeEnd
(
c
,
S
.
prevToken
().
endPos
);
return
c
;
case
DEFAULT:
nextToken
();
accept
(
COLON
);
stats
=
blockStatements
();
c
=
F
.
at
(
pos
).
Case
(
null
,
stats
);
if
(
stats
.
isEmpty
())
storeEnd
(
c
,
S
.
prevToken
().
endPos
);
return
c
;
}
throw
new
AssertionError
(
"should not reach here"
);
}
/** MoreStatementExpressions = { COMMA StatementExpression }
*/
<
T
extends
ListBuffer
<?
super
JCExpressionStatement
>>
T
moreStatementExpressions
(
int
pos
,
...
...
src/share/classes/com/sun/tools/javap/CodeWriter.java
浏览文件 @
447c3183
/*
* Copyright (c) 2007, 201
1
, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2007, 201
2
, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
...
...
@@ -45,8 +45,8 @@ import com.sun.tools.classfile.Method;
* This code and its internal interfaces are subject to change or
* deletion without notice.</b>
*/
class
CodeWriter
extends
BasicWriter
{
static
CodeWriter
instance
(
Context
context
)
{
public
class
CodeWriter
extends
BasicWriter
{
public
static
CodeWriter
instance
(
Context
context
)
{
CodeWriter
instance
=
context
.
get
(
CodeWriter
.
class
);
if
(
instance
==
null
)
instance
=
new
CodeWriter
(
context
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录