Skip to content

Commit 5bbc188

Browse files
committed
命名风格检查将same改为ignore
1 parent 00e24b9 commit 5bbc188

File tree

6 files changed

+21
-26
lines changed

6 files changed

+21
-26
lines changed

CodeService/src/Config/LuaDiagnosticStyle.cpp

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,21 @@ NameStyleRule MakeNameStyle(InfoNode n) {
3131
return NameStyleRule(NameStyleType::PascalCase);
3232
} else if (type == "camel_case") {
3333
return NameStyleRule(NameStyleType::CamelCase);
34-
} else if (type == "same") {
34+
} else if (type == "ignore") {
3535
auto paramNode = n.GetValue("param");
36+
std::set<std::string> ignores;
3637
if (paramNode.IsString()) {
37-
return NameStyleRule(NameStyleType::Same, std::make_shared<SameNameStyleData>(paramNode.AsString()));
38+
ignores.insert(paramNode.AsString());
39+
} else if (paramNode.IsArray()) {
40+
auto arr = paramNode.AsArray();
41+
for(auto item : arr){
42+
if(item.IsString()) {
43+
ignores.insert(item.AsString());
44+
}
45+
}
3846
}
47+
48+
return NameStyleRule(NameStyleType::Ignore, std::make_shared<IgnoreNameStyleData>(ignores));
3949
} else if (type == "pattern") {
4050
auto paramNode = n.GetValue("param");
4151
if (paramNode.IsString()) {

CodeService/src/Diagnostic/NameStyle/NameStyleChecker.cpp

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -444,15 +444,6 @@ std::string NameStyleChecker::MakeDiagnosticInfo(std::string_view ruleName, LuaS
444444
ruleMessage.append("pascal-case");
445445
break;
446446
}
447-
case NameStyleType::Same: {
448-
auto data = rule.Data;
449-
if (data) {
450-
auto sameData = std::dynamic_pointer_cast<SameNameStyleData>(data);
451-
ruleMessage.append(util::format("same '{}'", sameData->Param));
452-
}
453-
454-
break;
455-
}
456447
case NameStyleType::Pattern: {
457448
auto data = rule.Data;
458449
if (data) {

CodeService/src/Diagnostic/NameStyle/NameStyleRuleMatcher.cpp

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -34,11 +34,11 @@ bool NameStyleRuleMatcher::Match(LuaSyntaxNode &n, const LuaSyntaxTree &t, const
3434
}
3535
break;
3636
}
37-
case NameStyleType::Same: {
37+
case NameStyleType::Ignore: {
3838
auto data = rule.Data;
3939
if (data) {
40-
auto sameData = std::dynamic_pointer_cast<SameNameStyleData>(data);
41-
if (Same(text, sameData->Param)) {
40+
auto ignoreData = std::dynamic_pointer_cast<IgnoreNameStyleData>(data);
41+
if (ignoreData->Param.count(text)){
4242
return true;
4343
}
4444
}
@@ -313,10 +313,6 @@ bool NameStyleRuleMatcher::PascalCase(std::string_view text) {
313313
return true;
314314
}
315315

316-
bool NameStyleRuleMatcher::Same(std::string_view text, std::string_view param) {
317-
return text == param;
318-
}
319-
320316
bool NameStyleRuleMatcher::PatternMatch(std::string_view text, std::shared_ptr<PatternNameStyleData> data) {
321317
std::match_results<std::string_view::const_iterator> mc;
322318
if (!std::regex_match(text.begin(), text.end(), mc, data->Re)) {

include/CodeService/Config/LuaDiagnosticStyle.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@ class LuaDiagnosticStyle {
3535
};
3636

3737
std::vector<NameStyleRule> module_name_style = {
38-
NameStyleRule(NameStyleType::Same, std::make_unique<SameNameStyleData>("m")),
3938
NameStyleRule(NameStyleType::SnakeCase)
4039
};
4140

include/CodeService/Config/NameStyleRule.h

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,15 @@
22

33
#include <regex>
44
#include <string>
5+
#include <set>
56

67
enum class NameStyleType {
78
Off,
89
CamelCase,
910
PascalCase,
1011
SnakeCase,
1112
UpperSnakeCase,
12-
Same,
13+
Ignore,
1314
Pattern,
1415
};
1516

@@ -29,10 +30,10 @@ struct NameStyleRule {
2930
std::shared_ptr<NameStyleData> Data;
3031
};
3132

32-
struct SameNameStyleData : public NameStyleData {
33-
explicit SameNameStyleData(std::string_view param)
34-
: NameStyleData(), Param(param) {}
35-
std::string Param;
33+
struct IgnoreNameStyleData : public NameStyleData {
34+
explicit IgnoreNameStyleData(const std::set<std::string>& param)
35+
: NameStyleData(), Param(param.begin(), param.end()) {}
36+
std::set<std::string, std::less<>> Param;
3637
};
3738

3839
struct PatternNameStyleData : public NameStyleData {

include/CodeService/Diagnostic/NameStyle/NameStyleRuleMatcher.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,5 @@ class NameStyleRuleMatcher {
1919

2020
static bool PascalCase(std::string_view text);
2121

22-
static bool Same(std::string_view text, std::string_view param);
23-
2422
static bool PatternMatch(std::string_view text, std::shared_ptr<PatternNameStyleData> data);
2523
};

0 commit comments

Comments
 (0)