v8eval

Multi-language bindings to JavaScript engine V8

Github星跟蹤圖

v8eval

PyPI version
Gem Version
GoDoc

Multi-language bindings to JavaScript engine V8.

Currently v8eval provides Go, Python and Ruby bindings to the latest V8 7.1 and supports Linux and Mac OS X.
v8eval uses SWIG and can be extended easily for other languages.

Pre-installation

Linux

See Dockerfile.

Mac

See .travis.yml.

Installation

The installation takes several tens of minutes due to V8 build.

Go

v8eval requires Go 1.10 or later.

git clone https://github.com/sony/v8eval.git ${GOPATH}/src/github.com/sony/v8eval
${GOPATH}/src/github.com/sony/v8eval/go/build.sh install

In the case of Linux, you need to build your Go program with build.sh:

${GOPATH}/src/github.com/sony/v8eval/go/build.sh go build

Python

pip install v8eval

Ruby

gem install v8eval

Documentation

Go

See godoc.org.

Python

You can create the Sphinx documentation under python/docs.

python/build.sh docs

Ruby

You can create the YARD documentation under ruby/doc.

ruby/build.sh docs

Examples

Go

import "github.com/sony/v8eval/go/v8eval"

func Add(x, y int) int {
	var v8 = v8eval.NewV8()
	v8.Eval("var add = (x, y) => x + y;", nil)

	var sum int
	v8.Call("add", []int{x, y}, &sum)
	return sum
}

Python

import v8eval

def add(x, y):
    v8 = v8eval.V8()
    v8.eval('var add = (x, y) => x + y;')
    return v8.call('add', [x, y])

Ruby

require 'v8eval'

def add(x, y)
  v8 = V8Eval::V8.new
  v8.eval('var add = (x, y) => x + y;')
  v8.call('add', [x, y])
end

License

The MIT License (MIT)

See LICENSE for details.

主要指標

概覽
名稱與所有者sony/v8eval
主編程語言C++
編程語言CMake (語言數: 8)
平台
許可證MIT License
所有者活动
創建於2015-09-18 17:38:02
推送於2020-12-29 20:49:19
最后一次提交2020-12-29 20:48:46
發布數17
最新版本名稱0.3.2 (發布於 )
第一版名稱0.1.4 (發布於 )
用户参与
星數413
關注者數17
派生數36
提交數156
已啟用問題?
問題數23
打開的問題數14
拉請求數9
打開的拉請求數0
關閉的拉請求數5
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?