当前位置: 首页 > wzjs >正文

网站服务器管理 硬件百度下载安装

网站服务器管理 硬件,百度下载安装,信誉好的高密网站建设,开发必备软件lua中检查静态常量是否正确引用思路代码因在项目开发中会出现引用了不存在的常量,为了方便检查这种情况,所以想着添加针对性脚本check 思路 加载要检查的常量结构到KEYWORD通过gmatch匹配指定路径下的所有文件,依次检查引用到目标变量的key是…

lua中检查静态常量是否正确引用

  • 思路
  • 代码

因在项目开发中会出现引用了不存在的常量,为了方便检查这种情况,所以想着添加针对性脚本check

思路

  1. 加载要检查的常量结构到KEYWORD
  2. 通过gmatch匹配指定路径下的所有文件,依次检查引用到目标变量的key是否存在于KEYWORD(主要会排除掉当前脚本路径,最好检查到第三层key)

代码

-- 获取当前脚本的路径(用于排除)local function get_current_file_path()local current_file = debug.getinfo(1, "S").sourceif current_file:sub(1, 1) == "@" thencurrent_file = current_file:sub(2)endreturn current_fileendlocal current_file = get_current_file_path()-- 目标目录local target_dir = "./mod/"-- 目标常量local S_KEYWORD = "G_COMMON"-- 可自定义,保证KEYWORD是指向要验证的常量数据就行local KEYWORD = _G[S_KEYWORD]-- 这里只解析到第三层key,可以处理大多数情况了local function check_g_const_key()local lua_files = io.popen( 'find ' .. target_dir .. ' -name "*.lua"'):read("*a")for file in lua_files:gmatch("[^\r\n]+") doif file ~= current_file thenlocal content = io.open(file):read("*a")-- 查找所有G_KEYWORD.XXX的引用for key1 in content:gmatch(S_KEYWORD .. "%.([%w_]+)") doif not KEYWORD[key1] == nil thenprint(string.format("ref_fail: file: %s ===> key1: %s  ", file, key1))else-- 查找所有G_KEYWORD.XXX.XXX的引用for key2 in content:gmatch(S_KEYWORD .. "." .. key1 .. "%.([%w_]+)") doif KEYWORD[key1][key2] == nil thenprint(string.format("ref_fail: file: %s ===> key1: %s, key2: %s  ", file, key1, key2))else-- 查找所有G_KEYWORD.XXX.XXX.XXX的引用for key3 in content:gmatch(S_KEYWORD .. "." .. key1 .. "." .. key2 .. "%.([%w_]+)") doif KEYWORD[key1][key2][key3] == nil thenprint(string.format("ref_fail: file: %s ===> key1: %s, key2: %s, key3: %s  ", file, key1, key2, key3))endendendendendendendendendcheck_g_const_key()
http://www.dtcms.com/wzjs/27831.html

相关文章:

  • 网上做调查网站有哪些大数据比较好的培训机构
  • 山东做网站建设的好公司个人网站设计
  • 莱芜雪野湖地图seo刷关键词排名优化
  • 初级买题做哪个网站好论坛推广怎么做
  • 变更网站做推广需要备案石家庄seo代理商
  • 温州做美食网站seo的基本步骤是什么
  • 网站代备十大小说网站排名
  • 做电影网站多少钱东营网站建设
  • 有服务器怎么做网站seo优化培训学校
  • 汨罗做网站价格什么是网络推广
  • 虚拟机如何做网站广告免费发布信息平台
  • 做网站的需求是吗网络优化公司哪家好
  • 哪些网站可以免费做简历网络营销策划方案论文
  • 十堰网站建设专家网站做优化好还是推广好
  • 东莞个人免费建网站网络软文案例
  • 苏州工商注册代办页面优化的方法有哪些
  • 网站开发字体长沙网站优化推广方案
  • jsp动态网站开发考试百度sem推广具体做什么
  • 乐清品牌网站建设湖南seo优化按天付费
  • 哪个基层司法所网站做的比较好推广普通话的意义50字
  • 佛山禅城区网站建设公司网站制作维护
  • 大连网站建设方案广州seo效果
  • 湖北网络建设公司网站南宁seo专员
  • 深圳疫情防控措施徐州百度seo排名
  • 在线crm厂商seo整站怎么优化
  • 专门做特卖的网站百度网址大全网站
  • 广州做地铁的公司网站手游代理平台哪个好
  • 温州专业微网站制作电话市场营销模式有哪些
  • 学校网站制作平台班级优化大师电脑版
  • 邮件服务器是不是网站服务器广告多的网站