Jsonnet

Posted by Bruce Tsai
06/07/2016

Jsonnet是 Google 所推出,帶著一點程式語言特性的 JSON 文件格式,例如多了個self:

{
    person1: {
        name: "Alice",
        welcome: "Hello " + self.name + "!",
    },
    person2: self.person1 { name: "Bob" },
}

還有 tempalte string:

{
    fmt2: "The word %(wd)s has %(le)d letters.  Go %(wd)s!"
        % {wd: $.word, le: std.length($.word)},
}

Array comprehension:

{
    foo: [1, 2, 3],
    bar: [x * x for x in self.foo if x >= 2],
    baz: { ["field" + x]: x for x in self.foo },
    obj: { ["foo" + "bar"]: 3 },
}

除了這些程式語法的特性之外, Jsonnet 還有像是 Hjson 的一些比較人性化的語法的支援,官網上則自稱是是一種 data template language,而不是單純的資料而已。

results matching ""

    No results matching ""