我很好奇语法是类还是单例,所以我创建了这个小程序来找出:
grammar Mini {
token TOP { \* <word> \* }
token word { \w+ }
}
proto sub is-class( | ) { * };
multi sub is-class( Grammar:D $g ) { return "Object" };
multi sub is-class( Grammar:U $g ) { return "Class" };
say is-class( Mini );
这使用了多次调度来找出它,结果证明它Mini
实际上是一个类。一般来说,会有更短的方法来找出这个吗?还是一种不需要知道包可能是实例的实际类的方法?