Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Phodal
Coca
提交
f7adbe85
C
Coca
项目概览
Phodal
/
Coca
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
Coca
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
f7adbe85
编写于
2月 08, 2020
作者:
P
Phodal Huang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
refactor: change order
上级
5645a3c6
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
46 addition
and
46 deletion
+46
-46
pkg/infrastructure/ast/ast_java/java_identify/java_identifier_listener.go
...re/ast/ast_java/java_identify/java_identifier_listener.go
+46
-46
未找到文件。
pkg/infrastructure/ast/ast_java/java_identify/java_identifier_listener.go
浏览文件 @
f7adbe85
...
...
@@ -71,14 +71,6 @@ func (s *JavaIdentifierListener) ExitClassBody(ctx *parser.ClassBodyContext) {
currentNode
=
core_domain
.
NewDataStruct
()
}
func
(
s
*
JavaIdentifierListener
)
ExitInterfaceDeclaration
(
ctx
*
parser
.
InterfaceDeclarationContext
)
{
hasEnterClass
=
false
if
currentNode
.
NodeName
!=
""
{
nodes
=
append
(
nodes
,
*
currentNode
)
}
currentNode
=
core_domain
.
NewDataStruct
()
}
func
(
s
*
JavaIdentifierListener
)
EnterConstructorDeclaration
(
ctx
*
parser
.
ConstructorDeclarationContext
)
{
position
:=
core_domain
.
CodePosition
{
StartLine
:
ctx
.
GetStart
()
.
GetLine
(),
...
...
@@ -101,44 +93,6 @@ func (s *JavaIdentifierListener) ExitConstructorDeclaration(ctx *parser.Construc
currentNode
.
Functions
=
append
(
currentNode
.
Functions
,
currentMethod
)
}
func
(
s
*
JavaIdentifierListener
)
EnterInterfaceBodyDeclaration
(
ctx
*
parser
.
InterfaceBodyDeclarationContext
)
{
hasEnterClass
=
true
}
func
(
s
*
JavaIdentifierListener
)
EnterInterfaceMethodDeclaration
(
ctx
*
parser
.
InterfaceMethodDeclarationContext
)
{
startLine
:=
ctx
.
GetStart
()
.
GetLine
()
startLinePosition
:=
ctx
.
GetStart
()
.
GetColumn
()
stopLine
:=
ctx
.
GetStop
()
.
GetLine
()
stopLinePosition
:=
ctx
.
GetStop
()
.
GetColumn
()
name
:=
ctx
.
IDENTIFIER
()
.
GetText
()
//XXX: find the start position of {, not public
typeType
:=
ctx
.
TypeTypeOrVoid
()
.
GetText
()
if
reflect
.
TypeOf
(
ctx
.
GetParent
()
.
GetParent
()
.
GetChild
(
0
))
.
String
()
==
"*parser.ModifierContext"
{
common_listener
.
BuildAnnotationForMethod
(
ctx
.
GetParent
()
.
GetParent
()
.
GetChild
(
0
)
.
(
*
parser
.
ModifierContext
),
&
currentMethod
)
}
position
:=
core_domain
.
CodePosition
{
StartLine
:
startLine
,
StartLinePosition
:
startLinePosition
,
StopLine
:
stopLine
,
StopLinePosition
:
stopLinePosition
,
}
currentMethod
=
core_domain
.
CodeFunction
{
Name
:
name
,
ReturnType
:
typeType
,
Override
:
isOverrideMethod
,
Annotations
:
currentMethod
.
Annotations
,
Position
:
position
,
}
}
func
(
s
*
JavaIdentifierListener
)
ExitInterfaceMethodDeclaration
(
ctx
*
parser
.
InterfaceMethodDeclarationContext
)
{
currentNode
.
Functions
=
append
(
currentNode
.
Functions
,
currentMethod
)
currentMethod
=
core_domain
.
NewJMethod
()
}
var
isOverrideMethod
=
false
func
(
s
*
JavaIdentifierListener
)
EnterMethodDeclaration
(
ctx
*
parser
.
MethodDeclarationContext
)
{
...
...
@@ -206,6 +160,52 @@ func (s *JavaIdentifierListener) EnterInterfaceDeclaration(ctx *parser.Interface
currentNode
.
NodeName
=
ctx
.
IDENTIFIER
()
.
GetText
()
}
func
(
s
*
JavaIdentifierListener
)
ExitInterfaceDeclaration
(
ctx
*
parser
.
InterfaceDeclarationContext
)
{
hasEnterClass
=
false
if
currentNode
.
NodeName
!=
""
{
nodes
=
append
(
nodes
,
*
currentNode
)
}
currentNode
=
core_domain
.
NewDataStruct
()
}
func
(
s
*
JavaIdentifierListener
)
EnterInterfaceBodyDeclaration
(
ctx
*
parser
.
InterfaceBodyDeclarationContext
)
{
hasEnterClass
=
true
}
func
(
s
*
JavaIdentifierListener
)
EnterInterfaceMethodDeclaration
(
ctx
*
parser
.
InterfaceMethodDeclarationContext
)
{
startLine
:=
ctx
.
GetStart
()
.
GetLine
()
startLinePosition
:=
ctx
.
GetStart
()
.
GetColumn
()
stopLine
:=
ctx
.
GetStop
()
.
GetLine
()
stopLinePosition
:=
ctx
.
GetStop
()
.
GetColumn
()
name
:=
ctx
.
IDENTIFIER
()
.
GetText
()
//XXX: find the start position of {, not public
typeType
:=
ctx
.
TypeTypeOrVoid
()
.
GetText
()
if
reflect
.
TypeOf
(
ctx
.
GetParent
()
.
GetParent
()
.
GetChild
(
0
))
.
String
()
==
"*parser.ModifierContext"
{
common_listener
.
BuildAnnotationForMethod
(
ctx
.
GetParent
()
.
GetParent
()
.
GetChild
(
0
)
.
(
*
parser
.
ModifierContext
),
&
currentMethod
)
}
position
:=
core_domain
.
CodePosition
{
StartLine
:
startLine
,
StartLinePosition
:
startLinePosition
,
StopLine
:
stopLine
,
StopLinePosition
:
stopLinePosition
,
}
currentMethod
=
core_domain
.
CodeFunction
{
Name
:
name
,
ReturnType
:
typeType
,
Override
:
isOverrideMethod
,
Annotations
:
currentMethod
.
Annotations
,
Position
:
position
,
}
}
func
(
s
*
JavaIdentifierListener
)
ExitInterfaceMethodDeclaration
(
ctx
*
parser
.
InterfaceMethodDeclarationContext
)
{
currentNode
.
Functions
=
append
(
currentNode
.
Functions
,
currentMethod
)
currentMethod
=
core_domain
.
NewJMethod
()
}
func
(
s
*
JavaIdentifierListener
)
EnterExpression
(
ctx
*
parser
.
ExpressionContext
)
{
if
reflect
.
TypeOf
(
ctx
.
GetParent
())
.
String
()
==
"*parser.StatementContext"
{
statementCtx
:=
ctx
.
GetParent
()
.
(
*
parser
.
StatementContext
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录