微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python SCons 行动?

如何解决Python SCons 行动?

我已经在文档中搜索了很长时间,但仍然无法弄清楚这一点。

在 SCons 文档中,有关于添加 PreAction 或 PostAction 的讨论。在示例中,他们调用一个示例方法

foo = Program('foo.c')
AddPreAction(foo,'pre_action')

这会在编译和链接 'foo.c' 之前调用 'pre_action'。但是,没有解释“pre​​_action”必须采用什么格式。

我发现有几个预先构建的操作,例如“复制”。但是,我找不到“复制”的来源来对其进行逆向工程并自己编写。

谁能给我指点一下如何创建自己的操作的指南?我要么需要一个接口来调用我自己的方法,例如上面的“pre_action”,要么需要一个编写 Action 类的指南。

真的,即使只是一些实际上足够完整的示例代码也会有帮助...

解决方法

手册页部分 Action Objects 列出了可以传递给 Action 工厂函数以创建操作的事物类型;这也是您传递给 AddPostActionAddPreAction 作为第二个参数的内容 - 也就是说,之前对 Action 的调用已经执行的操作,或者可以转换为一个的操作像一个命令字符串,或者一个这样的列表,或者一个具有适当签名的函数。 Pre/Post 将简单地使用该参数调用 Action 函数。因此,在该部分中,有一个调用 Action 的示例,您可以将该参数插入 AddPreAction,或者您可以保存调用 Action 的结果并将其作为AddPreAction 的参数。

这里的灵活性使得简明地记录有点棘手。

(顺便说一句,Copy 的源代码是一个名为 copy_func 的函数,但您可能不想使用该形式,因为它是您不需要的几个额外抽象级别)>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。