Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
梦境迷离
Scala Macro Tools
提交
0e205a15
S
Scala Macro Tools
项目概览
梦境迷离
/
Scala Macro Tools
上一次同步 大约 1 年
通知
8
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
Scala Macro Tools
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
0e205a15
编写于
7月 10, 2021
作者:
I
IceMimosa
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Format code
上级
08904ebd
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
16 addition
and
15 deletion
+16
-15
intellij-plugin/src/main/scala/io/github/dreamylost/plugin/ScalaMacroProcessorProvider.scala
...ithub/dreamylost/plugin/ScalaMacroProcessorProvider.scala
+4
-4
intellij-plugin/src/main/scala/io/github/dreamylost/plugin/processor/clazz/ApplyProcessor.scala
...ub/dreamylost/plugin/processor/clazz/ApplyProcessor.scala
+2
-2
intellij-plugin/src/main/scala/io/github/dreamylost/plugin/processor/clazz/ConstructorProcessor.scala
...amylost/plugin/processor/clazz/ConstructorProcessor.scala
+2
-2
intellij-plugin/src/main/scala/io/github/dreamylost/plugin/processor/clazz/LogProcessor.scala
...thub/dreamylost/plugin/processor/clazz/LogProcessor.scala
+8
-7
未找到文件。
intellij-plugin/src/main/scala/io/github/dreamylost/plugin/ScalaMacroProcessorProvider.scala
浏览文件 @
0e205a15
...
...
@@ -2,8 +2,8 @@ package io.github.dreamylost.plugin
import
com.intellij.openapi.Disposable
import
io.github.dreamylost.plugin.processor.Processor
import
io.github.dreamylost.plugin.processor.clazz.
{
ApplyProcessor
,
BuilderProcessor
,
ConstructorProcessor
,
JsonProcessor
,
LogProcessor
}
import
org.jetbrains.plugins.scala.lang.psi.api.toplevel.typedef.
{
ScClass
,
ScObject
,
ScTypeDefinition
}
import
io.github.dreamylost.plugin.processor.clazz.
{
ApplyProcessor
,
BuilderProcessor
,
ConstructorProcessor
,
JsonProcessor
,
LogProcessor
}
import
org.jetbrains.plugins.scala.lang.psi.api.toplevel.typedef.
{
ScClass
,
ScObject
,
ScTypeDefinition
}
import
scala.collection.mutable
...
...
@@ -33,9 +33,9 @@ class ScalaMacroProcessorProvider extends Disposable {
def
findProcessors
(
source
:
ScTypeDefinition
)
:
Seq
[
Processor
]
=
{
processors
.
filter
{
p
=>
source
match
{
case
obj
:
ScObject
=>
obj
.
hasAnnotation
(
p
.
_1
)
||
obj
.
fakeCompanionClassOrCompanionClass
.
hasAnnotation
(
p
.
_1
)
case
obj
:
ScObject
=>
obj
.
hasAnnotation
(
p
.
_1
)
||
obj
.
fakeCompanionClassOrCompanionClass
.
hasAnnotation
(
p
.
_1
)
case
clazz
:
ScClass
=>
clazz
.
hasAnnotation
(
p
.
_1
)
case
_
=>
source
.
hasAnnotation
(
p
.
_1
)
case
_
=>
source
.
hasAnnotation
(
p
.
_1
)
}
}.
values
.
toSeq
}
...
...
intellij-plugin/src/main/scala/io/github/dreamylost/plugin/processor/clazz/ApplyProcessor.scala
浏览文件 @
0e205a15
package
io.github.dreamylost.plugin.processor.clazz
import
io.github.dreamylost.plugin.processor.ProcessType.ProcessType
import
io.github.dreamylost.plugin.processor.
{
AbsProcessor
,
ProcessType
}
import
org.jetbrains.plugins.scala.lang.psi.api.toplevel.typedef.
{
ScClass
,
ScObject
,
ScTypeDefinition
}
import
io.github.dreamylost.plugin.processor.
{
AbsProcessor
,
ProcessType
}
import
org.jetbrains.plugins.scala.lang.psi.api.toplevel.typedef.
{
ScClass
,
ScObject
,
ScTypeDefinition
}
/**
* Desc: Processor for annotation apply
...
...
intellij-plugin/src/main/scala/io/github/dreamylost/plugin/processor/clazz/ConstructorProcessor.scala
浏览文件 @
0e205a15
...
...
@@ -2,10 +2,10 @@ package io.github.dreamylost.plugin.processor.clazz
import
io.github.dreamylost.plugin.ScalaMacroNames
import
io.github.dreamylost.plugin.processor.ProcessType.ProcessType
import
io.github.dreamylost.plugin.processor.
{
AbsProcessor
,
ProcessType
}
import
io.github.dreamylost.plugin.processor.
{
AbsProcessor
,
ProcessType
}
import
org.jetbrains.plugins.scala.lang.psi.api.expr.ScMethodCall
import
org.jetbrains.plugins.scala.lang.psi.api.statements.ScVariableDefinition
import
org.jetbrains.plugins.scala.lang.psi.api.toplevel.typedef.
{
ScClass
,
ScTypeDefinition
}
import
org.jetbrains.plugins.scala.lang.psi.api.toplevel.typedef.
{
ScClass
,
ScTypeDefinition
}
import
org.jetbrains.plugins.scala.lang.psi.types.ScLiteralType
/**
...
...
intellij-plugin/src/main/scala/io/github/dreamylost/plugin/processor/clazz/LogProcessor.scala
浏览文件 @
0e205a15
...
...
@@ -21,15 +21,16 @@ class LogProcessor extends AbsProcessor {
typ
match
{
case
ProcessType
.
Field
=>
source
match
{
case
clazz
@(
_:
ScClass
|
_
:
ScObject
)
=>
clazz
.
annotations
(
ScalaMacroNames
.
LOG
).
lastOption
.
fold
[
Seq
[
String
]](
Nil
)
{
an
=>
{
an
.
annotationExpr
.
getText
match
{
case
expr
if
expr
.
contains
(
"Slf4j"
)
=>
Seq
(
logExpr
(
"org.slf4j.Logger"
))
case
expr
if
expr
.
contains
(
"Log4j2"
)
=>
Seq
(
logExpr
(
"org.apache.logging.log4j.Logger"
))
case
_
=>
Seq
(
logExpr
())
case
clazz
@
(
_:
ScClass
|
_
:
ScObject
)
=>
clazz
.
annotations
(
ScalaMacroNames
.
LOG
).
lastOption
.
fold
[
Seq
[
String
]](
Nil
)
{
an
=>
{
an
.
annotationExpr
.
getText
match
{
case
expr
if
expr
.
contains
(
"Slf4j"
)
=>
Seq
(
logExpr
(
"org.slf4j.Logger"
))
case
expr
if
expr
.
contains
(
"Log4j2"
)
=>
Seq
(
logExpr
(
"org.apache.logging.log4j.Logger"
))
case
_
=>
Seq
(
logExpr
())
}
}
}
}
case
_
=>
Nil
}
case
_
=>
Nil
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录