关于*.tcl(脚本文件)可以先语法检查功能的实现。 100分

zhr_23 2006-04-05 02:20:14

TCL脚本语言是解释型的,一句一句的解释并显示结果。
我们的集成测试工具,现在需要实现一个功能,就是可以先把一个TCL用例(*.tcl)语法检查功能,有错

抱错,有没有这样实现功能的接口或函数啊?
而不是通过TCL_EvalFile(....);来对整个TCL脚本文件边解释边输出结果呢?
谢谢!
...全文
834 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
xhg_20090730 2010-05-29
  • 打赏
  • 举报
回复
楼主散分罗:)
xhg_20090730 2010-05-29
  • 打赏
  • 举报
回复
##------- 需要检查语法错误 -------#
通过递归查找指定目录下的*.tcl文件,生成tclIndex文件,
在调用auto_mkindex时,系统自动对文件语法进行检查,如出现错误,就报告err
脚本无法指出哪个文件有错,但是可以只出此目录包含错误,然后逐个将文件拿出去排除

proc automakeindex {dir} {
set lastdir [pwd]
cd $dir
file delete $dir/tclIndex
set tclIndexList ""
if {[regexp .tcl [glob -nocomplain *.tcl]]} {
if {[catch {auto_mkindex . *.tcl} err]} {
puts "$dir include $err"
}
set tclIndexList [concat $tclIndexList $dir]
}
set sScreen [glob -nocomplain *]
foreach child $sScreen {
if {[file isdirectory [file join $dir $child]]} {
set tclIndexList [concat $tclIndexList [automakeindex [file join $dir $child]]]
}
}
cd $lastdir
return $tclIndexList
}
snakebite2008 2006-04-18
  • 打赏
  • 举报
回复
支持wow的顶一下,同问TCL脚本知识
yuanchuang 2006-04-17
  • 打赏
  • 举报
回复
不懂,帮顶……
Kvci 2006-04-13
  • 打赏
  • 举报
回复
我在弄个WOW私服
里面有不少TCL文件
是不是一样的?
觉得就像WIN系统下的ini或者inf配置文件一样
对不?
jixingzhong 2006-04-07
  • 打赏
  • 举报
回复
先把一个TCL用例(*.tcl)语法检查功能,有错

抱错
====
不知是否有这样的函数,
不过自己包装一个似乎不麻烦 ...

一个一般复杂的词法分析即可 ...
ydogg 2006-04-06
  • 打赏
  • 举报
回复
当然,可以让tcl脚本在集成环境中被调用,就是楼主说的TCL_EvalFile函数,还有一个TCL_Eval可以执行一个组织成字符串的tcl脚本
ydogg 2006-04-06
  • 打赏
  • 举报
回复
典型用法1:
tcl充当逻辑的执行者,但是其所执行的动作(逻辑实现)则由集成环境提供。

即:
1. 集成环境提供诸多内部功能(比如语法检查),并将这些功能注册为tcl命令
2. 撰写tcl脚本,调用这些由集成环境注册的命令来组成应用逻辑

典型用法2:
tcl充当逻辑实现者,集成环境充当逻辑执行者

就是Tcl和C整合的那一套。推荐C++扩展cpptcl,类似于boost::python。
ykzhujiang 2006-04-05
  • 打赏
  • 举报
回复
检查的用意是什么呢?
意思是如果没有错误的话就直接运行而不通过解释?
这样的话就比较麻烦了,转换成native code很麻烦
李秀国之印 2006-04-05
  • 打赏
  • 举报
回复
既然是TCL脚本语言是解释型的,怎么能够全部语法检查呢。全部运行一遍,在各种功能进行测试就好了。
hbyufan 2006-04-05
  • 打赏
  • 举报
回复
不懂,没接触过,帮顶

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧