MCPcopy Create free account
hub / github.com/Tencent/CodeAnalysis / __format_rules

Method __format_rules

client/tool/unusedresource.py:27–59  ·  view source on GitHub ↗

把[{'name':str, 'params':str}...]格式的rule_list转换为 rule_name-value的格式 :param rule_list: [{'name':str, 'params':str}...] :return: { rule_name: { 'res_suffix': res_exts, 'code_suffix': code_exts } }

(self, rule_list)

Source from the content-addressed store, hash-verified

25
26class UnusedResource(CodeLintModel):
27 def __format_rules(self, rule_list):
28 """把[{'name':str, 'params':str}...]格式的rule_list转换为 rule_name-value的格式
29 :param rule_list: [{'name':str, 'params':str}...]
30 :return: {
31 rule_name: {
32 'res_suffix': res_exts,
33 'code_suffix': code_exts
34 }
35 }
36 """
37 rules = {}
38 for rule in rule_list:
39 rule_name = rule['name']
40 rule_params = "[UnusedResource]\r\n" + rule['params']
41 rule_params_dict = {}
42 cfg = configparser.RawConfigParser()
43 cfg.read_string(rule_params)
44
45 for key, value in cfg.items('UnusedResource'):
46 rule_params_dict[key] = value
47
48 res_exts = rule_params_dict.get('res_suffix', '')
49 res_exts = [p.strip() for p in res_exts.split(';') if p.strip()] if res_exts else []
50 res_exts = tuple(set(res_exts)) # 去重并转换成tuple
51 code_exts = rule_params_dict.get('code_suffix', '')
52 code_exts = [p.strip() for p in code_exts.split(';') if p.strip()] if code_exts else []
53 code_exts = tuple(set(code_exts)) # 去重并转换成tuple
54
55 rules[rule_name] = {
56 'res_suffix': res_exts,
57 'code_suffix': code_exts,
58 }
59 return rules
60
61 def __get_scan_files(self, root_dir, code_suffixs, res_suffixs):
62 """获取需要扫描的代码文件和资源文件列表

Callers 1

analyzeMethod · 0.95

Calls 1

getMethod · 0.45

Tested by

no test coverage detected