jruby で UniVerse データベースのタスク用の単純な DSL を開発しました。こんな感じです
support = {
:host => 'localhost',
:account => 'SUPPORT'
}
uni_task support do
connect
exec "LIST FILE A1"
disconnect
end
そして、このように実装されています
def uni_task(config, &block)
session = UniSession.new
session.instance_eval &block
end
このようなRubyスクリプトでirbにドロップできることは承知しています
しかし、コマンド ラインにドロップして、デフォルトでオブジェクトのインスタンス メソッドを実行するようにスコープを変更する方法はありますか?
例えば
irb> uni_commandline support
uni> connect
uni> exec "LIST FILE A1"
.... output .....
uni> disconnect