Skip to content

Commit 6f3417a

Browse files
committed
完成1.0.0单元测试
1 parent 1722c41 commit 6f3417a

File tree

11 files changed

+661
-76
lines changed

11 files changed

+661
-76
lines changed

CHANGELOG.md

Lines changed: 27 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,34 @@
11
# Change Log
22

3-
## 0.17.0
3+
## 1.0.0
44

5-
`NEW` 支持配置table的分隔符风格是逗号还是分号还是不处理
5+
`EmmyLuaCodeStyle`经过一年的更新现在进入正式版
66

7-
`NEW` 支持通过配置移除或者保留或者新增表的尾部分隔符
7+
`Refactor` 大部分代码重写, 数据结构重新设计
8+
9+
`Refactor` 大部分选项被重新命名, 新增了一批选项, 移除了一批选项
10+
11+
`Performance` 得益于从头开始重新设计, 格式化性能提高三倍, 在windows上一般的机器上格式化`10w`行代码仅需1到2秒
12+
13+
## 0.18.0
14+
15+
`FIX` typeformat不会在字符串或者长注释内部做格式化行为
16+
17+
以下由[@obszczymucha](https://github.com/obszczymucha)实现:
18+
19+
`NEW` 支持选项
20+
* `space_inside_function_call_parentheses`
21+
* `space_inside_function_param_list_parentheses`
22+
* `space_inside_square_brackets`
23+
24+
25+
## 0.17.2
26+
27+
`NEW` typeformat会智能填补表项之后的逗号
28+
29+
`NEW` 支持选项`table_separator_style` 可选值为`none/comma/semicolon`
30+
31+
`NEW` 支持选项`trailing_table_separator` 可选值为 `keep/never/always/smart`
832

933
## 0.16.1
1034

CMakeSettings.json

Lines changed: 0 additions & 27 deletions
This file was deleted.

CodeService/src/Config/LuaStyle.cpp

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -141,13 +141,7 @@ void LuaStyle::ParseFromMap(std::map<std::string, std::string, std::less<>> &con
141141

142142
BOOL_OPTION(space_around_concat_operator)
143143

144-
if (configMap.count("align_call_args")) {
145-
if (configMap.at("align_call_args") == "none") {
146-
align_call_args = AlignCallArgs::None;
147-
} else if (configMap.at("align_call_args") == "normal") {
148-
align_call_args = AlignCallArgs::Normal;
149-
}
150-
}
144+
BOOL_OPTION(align_call_args)
151145

152146
BOOL_OPTION(align_function_params)
153147

CodeService/src/Format/Analyzer/AlignAnalyzer.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ void AlignAnalyzer::Analyze(FormatState &f, const LuaSyntaxTree &t) {
3333
break;
3434
}
3535
case LuaSyntaxNodeKind::CallExpression: {
36-
if (f.GetStyle().align_call_args != AlignCallArgs::None) {
36+
if (f.GetStyle().align_call_args) {
3737
auto exprlist = syntaxNode.GetChildSyntaxNode(LuaSyntaxNodeKind::ExpressionList, t);
3838
AnalyzeExpressionList(f, exprlist, t);
3939
}

CodeService/src/Format/Analyzer/SpaceAnalyzer.cpp

Lines changed: 6 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -48,9 +48,10 @@ void SpaceAnalyzer::Analyze(FormatState &f, const LuaSyntaxTree &t) {
4848
case '~': {
4949
auto p = syntaxNode.GetParent(t);
5050
if (p.IsNode(t) && p.GetSyntaxKind(t) == LuaSyntaxNodeKind::BinaryExpression) {
51-
SpaceAround(syntaxNode, t);
51+
SpaceAround(syntaxNode, t, f.GetStyle().space_around_math_operator ? 1 : 0);
5252
} else {
5353
SpaceLeft(syntaxNode, t);
54+
SpaceRight(syntaxNode, t, 0);
5455
}
5556
break;
5657
}
@@ -304,28 +305,15 @@ void SpaceAnalyzer::SpaceAround(LuaSyntaxNode &n, const LuaSyntaxTree &t, std::s
304305
}
305306

306307
void SpaceAnalyzer::SpaceLeft(LuaSyntaxNode &n, const LuaSyntaxTree &t, std::size_t space) {
307-
auto token = n.GetFirstToken(t);
308-
309-
_leftSpaces[token.GetIndex()] = space;
308+
auto token = n.GetPrevToken(t);
309+
_rightSpaces[token.GetIndex()] = space;
310310
}
311311

312312
void SpaceAnalyzer::SpaceRight(LuaSyntaxNode &n, const LuaSyntaxTree &t, std::size_t space) {
313313
auto token = n.GetLastToken(t);
314314
_rightSpaces[token.GetIndex()] = space;
315315
}
316316

317-
std::optional<std::size_t> SpaceAnalyzer::GetLeftSpace(LuaSyntaxNode &n) const {
318-
if (_ignoreSpace.count(n.GetIndex())) {
319-
return {};
320-
}
321-
322-
auto it = _leftSpaces.find(n.GetIndex());
323-
if (it == _leftSpaces.end()) {
324-
return {};
325-
}
326-
return it->second;
327-
}
328-
329317
std::optional<std::size_t> SpaceAnalyzer::GetRightSpace(LuaSyntaxNode &n) const {
330318
if (_ignoreSpace.count(n.GetIndex())) {
331319
return {};
@@ -341,17 +329,8 @@ std::optional<std::size_t> SpaceAnalyzer::GetRightSpace(LuaSyntaxNode &n) const
341329
std::size_t
342330
SpaceAnalyzer::ProcessSpace(const LuaSyntaxTree &t, LuaSyntaxNode &left, LuaSyntaxNode &right) {
343331
auto rightSpaceOfLeftToken = GetRightSpace(left);
344-
auto leftSpaceOfRightToken = GetLeftSpace(right);
345-
std::optional<std::size_t> distance;
346-
if (!rightSpaceOfLeftToken.has_value()) {
347-
distance = leftSpaceOfRightToken;
348-
} else if (!leftSpaceOfRightToken.has_value()) {
349-
distance = rightSpaceOfLeftToken;
350-
} else {
351-
distance = leftSpaceOfRightToken;
352-
}
353-
if (distance.has_value()) {
354-
return distance.value();
332+
if (rightSpaceOfLeftToken.has_value()) {
333+
return rightSpaceOfLeftToken.value();
355334
}
356335
if (!right.IsNull(t)) {
357336
return t.GetStartOffset(right.GetIndex()) - t.GetEndOffset(left.GetIndex()) - 1;

0 commit comments

Comments
 (0)