# groonga - オープンソースのカラムストア機能付き全文検索エンジン

- English page

# 7.3.27. `ruby_eval`

## 7.3.27.1. 概要

`ruby_eval` コマンドはRubyスクリプトを評価して評価結果を返します。

## 7.3.27.2. 構文

`ruby_eval` には必須な引数が1つあります:

    ruby_eval script

## 7.3.27.3. 使い方

`ruby_eval` を使うと、mrubyがサポートしているスクリプトを実行できます。

Ruby `1 + 2` という計算するだけの例です。

実行例:

    register ruby/eval
    # [[0, 1337566253.89858, 0.000355720520019531], true]
    ruby_eval "1 + 2"
    # [[0, 1337566253.89858, 0.000355720520019531], {"value": 3}]

`ruby_eval` コマンドを使うには事前に `ruby/eval` プラグインを登録します。

`ruby_eval` コマンドは実験的なプラグインです。このコマンドは将来的に変更されるかも知れません。

## 7.3.27.4. 引数

このセクションではすべての引数について説明します。

### 7.3.27.4.1. `script`

評価したいrubyスクリプトを指定します。

## 7.3.27.5. 戻り値

`ruby_eval` は例外情報などのメタデータつきで評価結果を返します（メタデータはまだ実装されていないので今のところ含まれません）:

    [HEADER, {"value": EVALUATED_VALUE}]

`HEADER`

> `HEADER` については 出力形式 を参照してください。

`EVALUATED_VALUE`

> `EVALUATED_VALUE` は `ruby_script` を評価した値です。

> 今のところ、 `ruby_eval` は評価された値として数値だけサポートしています。サポートしている型は今後増えていく予定です。

## 7.3.27.6. 参考