作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 Perl5 和 Moose 中,线性 isa 或线性化 isa 有助于理解类层次结构。
方法WHAT显示值的具体类型:
> 42.WHAT
(Int)
> 42.hypothetical-type-hierarchy
(Int) ┬ is (Cool) ─ is (Any) ─ is (Mu)
└ does (Real) ─ does (Numeric)
class Beta {}
role Delta {}
role Gamma does Delta {}
role Eta {}
role Zeta does Eta {}
role Epsilon does Zeta {}
class Alpha is Beta does Gamma does Epsilon {}
# (Alpha) ┬ is (Beta)
# ├ does (Gamma) ─ does (Delta)
# └ does (Epsilon) ─ does (Zeta) ─ does (Eta)
my $ai = Alpha.new
$ai.^mro # ((Alpha) (Beta) (Any) (Mu))
$ai.^roles # ((Epsilon) (Zeta) (Eta) (Gamma) (Delta))
# flat list, not two-element list of a tuple and triple‽
最佳答案
您可以查询元对象
> 42.^mro
((Int) (Cool) (Any) (Mu))
mro
代表方法解析顺序和
> 42.^roles
((Real) (Numeric))
:local
控制返回哪些角色。 (排除从父类继承的角色 - 仅适用于类)和
:!transitive
(排除通过另一个角色组成的角色 - 可用于角色和类)。
my $depth = 0;
for Alpha.^mro {
say "is {.^name}";
(sub {
++$depth;
for @_ {
say ' ' x $depth ~ "does {.^name}";
&?ROUTINE(.^roles(:!transitive)); # recursive call of anon sub
}
--$depth;
})(.^roles(:local, :!transitive));
}
role Delta {}
role Gamma does Delta {}
role Eta {}
role Zeta does Eta {}
role Epsilon does Zeta {}
class Beta does Gamma {}
class Alpha is Beta does Gamma does Epsilon {}
is Alpha
does Epsilon
does Zeta
does Eta
does Gamma
does Delta
is Beta
does Gamma
does Delta
is Any
is Mu
关于raku - 如何显示值的类型层次结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44255424/
我正在尝试将多个水平链接的 Button 和 TextView 垂直链接为 View 集,但仍保持平面 View 层次结构。这是我的初始布局和代码:
到目前为止,我已经在Google BigQuery上训练了几种模型,目前我需要查看模型的外观(即架构,损失函数等)。 有没有办法获取这些信息? 最佳答案 仔细阅读文档后,我可以说该功能尚不存在。我什至
本文实例讲述了PHP实现二叉树深度优先遍历(前序、中序、后序)和广度优先遍历(层次)。分享给大家供大家参考,具体如下: 前言: 深度优先遍历:对每一个可能的分支路径深入到不能再深入为止,而且每个
我是一名优秀的程序员,十分优秀!