在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
楼主: 18756170293

[原创] skill 关于提取所有使用到的库的脚本,以及疑问

[复制链接]
发表于 2020-7-20 18:07:24 | 显示全部楼层


scmyhbj 发表于 2020-7-20 17:11
你好,最近在学习skill,研究了一下你发的这个代码,返回的libName只有当前层的,没有包含下层cell的Libr ...


看来你是不会调用这个函数,在代码的下部,我写了To run下面的两行, 就是教你怎么调用这个函数的。从你的截图来看,是不知道怎么调用的缘故。
发表于 2020-7-20 18:24:50 | 显示全部楼层


amodaman 发表于 2020-7-20 18:07
看来你是不会调用这个函数,在代码的下部,我写了To run下面的两行, 就是教你怎么调用这个函数的。从你的 ...


你好,之前我是在CIW里直接输入的,没有用定义的快捷键那个,我重新截了个图麻烦你再看一下
QQ截图20200720182312.png
发表于 2020-7-20 22:14:31 | 显示全部楼层


scmyhbj 发表于 2020-7-20 18:24
你好,之前我是在CIW里直接输入的,没有用定义的快捷键那个,我重新截了个图麻烦你再看一下
...


不好意思,太自信了总是有Bug。你是对的,我的代码里面少打了一个字。

cell~>master~>cell~>views 后面还应该有个 ~>name, 所以,这一行应该是:

when( member("schematic" cell~>master~>cell~>views~>name)

就对了。代码中“schematic”换成“layout”也是工作的,已经测试过了。谢谢指正!
发表于 2020-7-20 22:26:07 | 显示全部楼层
更新代码见附图。
Capture.PNG
发表于 2020-7-21 11:15:11 | 显示全部楼层


amodaman 发表于 2020-7-20 22:26
更新代码见附图。


你好,非常感谢你,我仿照你这个脚本的思路按照自己的需求写了个脚本,我想要把layout从顶层到底层所用到的库输出到LibList中,并且列出Viewname不叫layout(比如layout1)的cell到NNcell这个list中,但是好像脚本并不能同时传递这两个变量。是因为递归时只把脚本的返回值循环进行下一次运算吗?有很多知识还不懂,希望你能指教一下,我上传了3张图片请你帮我看一下



图1.png
图2.png
图3.png
发表于 2020-7-21 11:30:53 | 显示全部楼层


scmyhbj 发表于 2020-7-21 11:15
你好,非常感谢你,我仿照你这个脚本的思路按照自己的需求写了个脚本,我想要把layout从顶层到底层所用到 ...


你的递归调用仅仅把LibList返回了,但是除了LibList,你还需要warnView啊,你没返回这个值,当然执行完递归,返回到顶层调用的函数的时候,除了LibList,其他啥都没有了啊。你知道怎么改了吧。
发表于 2020-7-21 11:45:48 | 显示全部楼层


scmyhbj 发表于 2020-7-21 11:15
你好,非常感谢你,我仿照你这个脚本的思路按照自己的需求写了个脚本,我想要把layout从顶层到底层所用到 ...



调用这个函数的时候用一个中间量接住递归调用的返回值,
New_Val = HGetHierLib(cv LibList NNcell),
NewLibList = car(New_Val)
NewNNcell = cadr(New_Val)

将函数HGetHierLib的最终返回值定为一个列表 list(NewLibList, NewNNcell).

就可以了。
发表于 2020-7-21 12:28:24 | 显示全部楼层


amodaman 发表于 2020-7-21 11:45
调用这个函数的时候用一个中间量接住递归调用的返回值,
New_Val = HGetHierLib(cv LibList NNcell),  ...


不好意思我还是不知道该怎么写 不知道是不是我加入的位置不对,CIW返回的list是(nil nil)这样的。还是不理解为什么脚本的返回值就可以从最早版本的一个变成现在的两个了
发表于 2020-7-21 13:05:07 | 显示全部楼层


scmyhbj 发表于 2020-7-21 12:28
不好意思我还是不知道该怎么写 不知道是不是我加入的位置不对,CIW返回的list是(nil nil)这样 ...


你要的是这个 ...
Capture.PNG
发表于 2020-7-21 13:22:45 | 显示全部楼层


amodaman 发表于 2020-7-21 13:05
你要的是这个 ...


哦哦,谢谢,我好像理解了,脚本执行后的返回值,取决于我foreach结束后那个表达式。所以在递归调用时,我从返回值取出对应的值重新给变量赋值,是这样吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-18 13:48 , Processed in 0.023389 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表