如何将Str转换为enum?Raku代码占位符填充技术问询
解决方法
在占位符处填写&Colors就能完成转换,完整代码如下:
enum Colors<red green blue> say red; # OUTPUT: red my $foo = "red"; my Colors $color = $foo.&Colors;
其他两种常用写法
如果不拘泥于$foo.(...)的调用形式,还有更直观的写法:
- 直接用枚举类型构造:
my Colors $color = Colors($foo); - 通过枚举命名空间查找:
my Colors $color = Colors::($foo);
这三种方式都能把字符串"red"转换成Colors枚举的red值,顺利赋值给带Colors类型约束的变量$color。
内容的提问来源于stack exchange,提问作者Jim Bollinger
相关产品推荐
相关产品推荐

