当前位置: 首页 > 软件库 > 程序开发 > 网络工具包 >

luajit-jsonnet

jsonnet​的lua开发包
授权协议 Apache
开发语言 Lua
所属分类 程序开发、 网络工具包
软件类型 开源软件
地区 国产
投 递 者 梁才
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

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

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

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")

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 is a Just-In-Time Compiler for the Lua programming language. Homepage: http://luajit.org/https://www.wenjiangs.com/doc/5m9r1dlyq9 LuaJIT is enabled by default since OpenResty 1.5.8.1. Please ex

  • LuaJIT:采用C语言写的Lua的解释器的代码 LuaJIT is a Just-In-Time Compiler for the Lua* programming language. LuaJIT试图保留Lua的精髓--轻量级,高效和可扩展. 功能 所有的函数缺省会被JIT(即时编译器)编译到本地机器码: * 没有被使用的函数不会被编译. * 可以选择性打开和关闭即时编译函数,子函数甚至整个模

  • Luajit IO 是一个纯 Lua 的 IO 框架,提供 C 的高效率,简单但强大的设计,得益于 luajit 这个 JIT 引擎。可用来开发 TCP/UDP 服务器程序。 下面是连接 redis 的示例代码: local ffi = require"ffi"local null = ffi.new("void*")local redis = require "resty.redis"local

  • luajit-nanomsg 是 nanomsg 的 LuaJIT FFI 语言实现版本。

  • 本文向大家介绍安装Nginx+Lua开发环境,包括了安装Nginx+Lua开发环境的使用技巧和注意事项,需要的朋友参考一下 首先我们选择使用OpenResty,其是由Nginx核心加很多第三方模块组成,其最大的亮点是默认集成了Lua开发环境,使得Nginx可以作为一个Web Server使用。借助于Nginx的事件驱动模型和非阻塞IO,可以实现高性能的Web应用程序。而且OpenResty提供了大

  • 导航 目录 上一章:编译 Lua 字节码 下一章:Lua 5.1 程序接口