模块 ringo/shell

提供处理 Ringo shell / REPL 的功能。它允许以编程方式启动新的 Ringo shell。每个 Ringo REPL 都在内部使用该模块与用户进行交互。该示例显示了一个简单的 Ringo shell 脚本,它准备一个对象并打开一个实时交互的 shell。

Example

#!/usr/bin/env ringo
if (require.main == module) {
  var obj = { 'foo': 'bar' };
  require('ringo/shell').start();
}

// running the script opens a new shell
// with the prepared object available
>> console.log(obj);
{ foo: 'bar' }

Functions


printError (xcept, errors, verbose)

Parameters

Exception xcept
Array errors
Boolean verbose

printResult (value, writer)

Parameters

Object value
Stream writer

quit (status)

退出 shell 并退出 JVM。

Parameters

Number status

optional integer exit status code (default is 0)


read ()

从标准输入中读取单个字符。


readln (prompt, echoChar)

从标准输入中读取一行。

Parameters

String prompt

optional prompt to display

String echoChar

character to use as echo, e.g. '*' for passwords or '' for no echo.


start (engine)

以编程方式启动 shell。这使用当前线程,因此不会返回。因此,您应该将此函数作为脚本中的最后一个语句。终止 shell 将退出程序。

Parameters

RhinoEngine engine

write (args...)

将 0..n 个参数写入标准输出。

Parameters

*... args...

writeln (args...)

将 0..n 个参数写入标准输出,然后换行。

Parameters

*... args...