等效于Java注释

时间:2019-07-01 16:26:45

标签: julia metaprogramming

在Java中,我可以做类似的事情:

@file_pattern("**/BILLING*.csv")
@format("fixed")
@encoding("latin-1")
@missing_end_of_record_fields_supported: yes
@header: yes
@comment_char: "#"
@lineending("auto")
@BOM: yes
@max_errors: 5
Class BillingRecord extends BaseRecord

    @pos(1, 5)
    @strip("left")
    @minmax(1, 19999, "error")  // "warn" only warn, but don't increase error count
    @pattern(r"\d+", "error")
    int ID;

    @pos(6, 10)
    @strip("left")
    @decode  // from "latin-1" to utf-8
    String name;

并使用注释生成所需的(优化)源代码。这是一个简单的示例,我们稍后将其扩展到ETL工作流程/过程中。我查看了Julia的元编程和宏功能,但很难找到与用例相似的具体示例。

如果Julia提供的内容有所不同,我们将不依赖注释。但是,它应该同样易于阅读和理解,可扩展且灵活。

非常感谢您的想法

0 个答案:

没有答案