luajit-jsonnet jsonnet​的lua开发包

程序名称:luajit-jsonnet

授权协议: Apache

操作系统: 跨平台

开发语言: Lua

luajit-jsonnet 介绍

luajit-jsonnet 是 针对google jsonnet的lua开发支持。

Name

luajit-jsonnet - The Google Jsonnet( operation data template language) for
Luajit

Table of

Contents

Description

jsonnet is a domain specific configuration language that helps you define JSON
data. Jsonnet lets you compute fragments of JSON within the structure,
bringing the same benefit to structured data that templating languages bring
to plain text. The example below illustrates a few features – referring to
another part of the structure, overriding object fields, and string
operations......

luajit-jsonnet - Use the luajit ffi jsonnet interface calls and operation

Google jsonnet documet: (http://google.github.io/jsonnet/doc/)

install

Simple executing the following command

make install

Methods

new

Create a luajit - jsonnet object

local jso = require "jsonnet"
jsonnet = jso:new()

make

Create a new Jsonnet virtual machine.

syntax: res, err = jsonnet:make()

evaluate_file

Evaluate a file containing Jsonnet code, return a JSON string.

syntax: res,err = jsonnet:evaluate_file("t.jsonnet")


local jso = require "jsonnet"
jsonnet = jso:new()
jsonnet:make()
res,err = jsonnet:evaluate_file("t.jsonnet")
if err == nil then
    print(res)
else
    print(err)
end

[](https://github.com/yuduanchen/luajit-

jsonnet#evaluate_snippet)evaluate_snippet

Evaluate a file containing Jsonnet code, return a JSON string.

syntax: res,err = jsonnet:evaluate_snippet(snippet)


local snippet = '{ person1: { name: "Alice", welcome: "Hello " + self.name + "!", }, person2: self.person1 { name: "Bob" },}'
res,err = jsonnet:evaluate_snippet(snippet)
if err == nil then
    print(res)
else
    print(err)
end

[](https://github.com/yuduanchen/luajit-

jsonnet#evaluate_file_multi)evaluate_file_multi

Evaluate a file containing Jsonnet code, return a number of JSON files. The
returned character buffer contains an even number of strings, the filename and
JSON for each

syntax: res,err = jsonnet:evaluate_file_multi("t.jsonnet")

[](https://github.com/yuduanchen/luajit-

jsonnet#evaluate_snippet_multi)evaluate_snippet_multi

Evaluate a string containing Jsonnet code, return a number of JSON files. The
returned character buffer contains an even number of strings, the filename and
JSON for each

syntax: res,err = jsonnet:evaluate_snippet_multi(snippet)

destroy

Shut down and release Jsonnet virtual machine.

syntax: res,err = jsonnet:destroy(vm)


local jso = require "jsonnet"
jsonnet = jso:new()
jsonnet:make()
res,err = jsonnet:evaluate_file("t.jsonnet")
jsonnet:destroy()

luajit-jsonnet 官网

https://github.com/yuduanchen/luajit-jsonnet

相关编程语言

BlazeDS 是一个基于服务器的Java 远程控制(remoting...
OVal 是一个可扩展的Java对象数据验证框架,验证的规...
Volta 是一套开发工具,专为开发分布式、实时系统应...
OpenDDS 是一个开源的 C++ 实现的 对象管理组织 OMG...
JADE (Java Agent DEvelopment Framework) 是一个完...
FastMM ,在D2006和2007中已代替了原来的内存管理器。