gpt4 book ai didi

object - 如何避免 Rebol 中的对象函数和全局函数之间的名称冲突?

转载 作者:行者123 更新时间:2023-12-01 09:26:26 25 4
gpt4 key购买 nike

我有一个对象,它有一个名为 open 的函数,需要调用全局 open

obj: make object! [
open: func [fn] [
client: open fn ...
]
]

这显然会因堆栈溢出而失败...

那么,如何在对象 open 中访问全局 open 呢?(请不要告诉我“改名”:-)

最佳答案

在 Rebol 3 中,您可以使用 lib/open 来引用内置的 open 函数。

lib 是一个对象(在 Rebol-lingo 中有时也称为“上下文”),它包含所有公开导出的函数,包括内置函数。 lib 上下文的全称是 system/contexts/lib (所以你也可以使用 system/contexts/lib/open 来指代open 内置),但因为这是一个拗口,所以也提供了方便的快捷方式 lib

另见 Brian Hawley's answer regarding "user-defined words"Carl Sassenrath's post on the basic contexts of R3了解更多技术细节。

关于object - 如何避免 Rebol 中的对象函数和全局函数之间的名称冲突?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22949607/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com