gpt4 book ai didi

raku - 如何编写惰性访问器

转载 作者:行者123 更新时间:2023-12-04 13:37:21 25 4
gpt4 key购买 nike

懒惰地构建属性的最佳方法是什么?

class I {
has $!cheezeburger;

method cheezeburger {
given $!cheezeburger {
when .so {return $_}
default {
# build $cheezeburger, set attribute to it, return
}
}
}
}

那是很多芝士汉堡。什么可能是一种不那么冗长的方式?

最佳答案

现有模块
有两个lazy attribute modules .
普通代码
布拉德的 $!cheezeburger //= do { ... };似乎是一个相当简单的解决方案,足以满足许多用例。
更好的东西?
您可能会发现#perl6 的人们想要或可以提供更好的东西。
我所知道的关于惰性属性初始化的最近一次严肃的#perl6 讨论发生在 2015 年的 5 月 5 日、7 日、20 日和 6 月 5 日、8 日和 20 日。在 pages of #perl6 log with at least one "will lazy" match 中搜索“会懒惰” . TL;DR 这些讨论中的一个是 rjbs、mst 和其他 Moose 用户习惯于很好的惰性属性初始化,并在 Rakudo 中添加了一个解决方案;然后它被撤回,因为 masak 和其他人认为它有问题,并且他们认为可以在模块空间中创建好的解决方案,然后如果/当这看起来很明智时再移回核心。

关于raku - 如何编写惰性访问器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38752178/

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