1

此代码源无法编译,有没有办法在 OPA 中进行编译?

type User = { nom : string ; prenom : string }
un_user = { nom = "My_name" ; prenom = "My_last_name" } : User
champ = "nom"
do jlog(un_user.`champ`)
4

2 回答 2

3

使用 OpaValue 模块可以在 Opa 中实现运行时魔法,该模块包含运行时值自省功能(不是类型安全的)

http://opalang.org/resources/doc/index.html#opavalue.opa.html/!/value_stdlib.core.OpaValue.Record

但这不适合普通用户,而且是一种非常危险的编码风格。通常需要来自以与脚本和运行时评估语言相对应的编码风格编写的代码。

于 2011-07-06T13:36:52.373 回答
1

我不确定您要做什么...如果要打印 nom 字段,un_user那么您可以执行以下操作:

do jlog(un_user.nom)

如果您真的想使用动态名称访问记录字段,那么这不能在 Opa (AFAIK) 中完成。

于 2011-07-06T13:12:53.997 回答